鳥哥的Linux基礎(chǔ)學習實訓教程是由Linux達人鳥哥匯集多年授課經(jīng)驗,以淺顯易懂的文字搭配教學的虛擬操作系統(tǒng)環(huán)境,編寫的Linux一致性教學與上機實訓教程。
鳥哥的Linux基礎(chǔ)學習實訓教程的編寫側(cè)重于學習Linux課程中的上機實踐邊學邊練,若想學好、學扎實且能靈活運用Linux,上機實踐是必由之路。全書共分為15章:第1~7章都在打基礎(chǔ),主要內(nèi)容包括初次使用Linux與命令行模式、命令的執(zhí)行與基本的文件管理、vim、Linux文件的權(quán)限與賬號管理、權(quán)限的應(yīng)用、進程的查看與基本管理、文件系統(tǒng)的基本管理、bash的基本使用與系統(tǒng)救援;第8~14章介紹系統(tǒng)管理員的工作,主要內(nèi)容包括bash命令連續(xù)執(zhí)行與數(shù)據(jù)流重定向、正則表達式與shell腳本、用戶管理與ACL權(quán)限設(shè)置、備份、文件壓縮打包與作業(yè)調(diào)度、軟件管理與安裝、日志文件、服務(wù)管理與系統(tǒng)啟動流程管理、高級文件系統(tǒng)管理;第15章主要介紹Linux系統(tǒng)的準備,以搭建系統(tǒng)服務(wù)器環(huán)境。
鳥哥的Linux基礎(chǔ)學習實訓教程既可以作為大專院校Linux課程的上機實踐教材,也可以作為IT培訓機構(gòu)教授學員掌握Linux技能的培訓教材。同時,對于具有一定操作系統(tǒng)基礎(chǔ)而又想自學Linux的人員,本書也是不錯的選擇。
1.理想的Linux上機實踐課程 每周一次、每次三小時的學與練
本書所有例題講解,均經(jīng)過鳥哥在大專院校實施多年來的測試,對于學生的理解具有相當滿意的效果。
2. 提供一致性教學環(huán)境 讓學習者不再有陌生的感覺
提供鳥哥制作的用來教學的虛擬操作系統(tǒng)環(huán)境下載。此環(huán)境在作者提供的架構(gòu)流程下,可以得到與書中內(nèi)容完全相同的操作系統(tǒng)環(huán)境,讓學習者在實訓時,可以取得與教材完全一致的信息,讓學習更有效果。
3. 提供豐富的課后練習
操作系統(tǒng)的學習沒有捷徑,就是要不斷地練習。因此,除了課程上的實訓題外,作者也在每節(jié)課程后面加入豐富的練習,并且練習題的程序已經(jīng)具有一致性操作,老師與學生都可以快速地理解操作系統(tǒng)的設(shè)計理念與學習重點。
供老師下載的教學用的線上操作系統(tǒng),讓上課的進度可以延續(xù)到讀者回家的作業(yè)。
前 言
雖然《Linux私房菜基礎(chǔ)學習篇》已經(jīng)成書多年,而且也已經(jīng)出到第四版,但作者自己在大專院校授課時,卻沒有拿基礎(chǔ)學習篇來作為課堂實際上課的指引用書。因為實在是寫得太過于煩瑣了,要注意的細節(jié)太多,對于學生的訓練而言,并不是一本好的教材。同時,基礎(chǔ)學習篇中雖然有大量的練習與實訓,但是缺乏一個大眾化一致的訓練環(huán)境,每個人的安裝條件都不相同,所以當與書內(nèi)的實踐練習進行對比時,經(jīng)常會發(fā)生不知所以然的問題。這對于學生與老師來說,也是在課堂上經(jīng)常遇到的一大問題。
也就是說,基礎(chǔ)學習篇比較偏向于自學者的實踐參考用書、從無到有慢慢地學習與摸索的入門書籍。但是,基礎(chǔ)學習篇確實不適合拿來作為課堂上的教科書。因此,這幾年在上課時,大部分還是要寫黑板出習題,讓學生們在現(xiàn)有的環(huán)境下實施一些類似于基礎(chǔ)學習篇內(nèi)的練習,并且也要將書內(nèi)的重點簡明扼要地進行一些說明。對于有限的授課時間來說,聽講的同時還要抄黑板上的練習以便實踐,對于同學們而言,真的是苦不堪言。
基于這種原因,從2015年開始,作者逐漸將上課要抄寫的題目匯編整理成為一系列的網(wǎng)頁教材,同時也將課程中會用到的環(huán)境先行安裝和設(shè)置好,讓學生們可以借助這個事先安裝和設(shè)置好的虛擬化環(huán)境來使用系統(tǒng)。如此授課較為輕松,很多實踐的題目也可以無限制地讓學生操作,弄亂了直接恢復系統(tǒng)重來一次就好,學生在實訓上也就沒有什么壓力了,對于練習才是王道的操作系統(tǒng)學習來說,確實可以看到學生們學習的成效。
經(jīng)過兩年多的實驗,終于將完整的教材具體地呈現(xiàn)在網(wǎng)頁上,同時提供了上課的虛擬機環(huán)境(僅供本書學習和練習使用),也通過簡易的流程來協(xié)助教學者快速地安裝和設(shè)置服務(wù)器與實訓的操作環(huán)境,對于教與學來說,都有相當好的成效。
上課的虛擬機環(huán)境下載地址為:
https://pan.baidu.com/s/1dyCF4sIrbOTrbkAgOmkArA(注意區(qū)分數(shù)字和英文字母大小寫)
也可掃描下方二維碼下載:
如果下載有問題,請發(fā)送電子郵件至booksaga@126.com,郵件標題為鳥哥的Linux基礎(chǔ)學習實訓教程下載資源。
這本教材主要是希望能夠讓老師們輕松地準備好教學的環(huán)境,讓學生通過一系列反復的實訓操作與練習,熟練掌握Linux操作系統(tǒng)的使用;蛘吲浜匣A(chǔ)理論部分的教學,在實訓操作方面,從開學第一周就給學生布置作業(yè),并持續(xù)到學期末,最終讓學生自行安裝一個最小化的Linux系統(tǒng)加以驗收,期望學生們可以在學期末順利地學習到RHCSA(Red Hat Certified Engineer,紅帽認證工程師)訓練所需的知識,加強學習的信心!
鳥哥
鳥哥
臺灣成功大學環(huán)境工程系博士,因?qū)嶒炇倚枨蠖珜戻B哥的Linux私房菜網(wǎng)站(俗稱鳥站),因個人愛好啐啐念,鳥站文章風格就此成形。
曾任臺灣多家知名Linux教育中心講師,專長是Linux操作系統(tǒng)、網(wǎng)站規(guī)劃與維護、網(wǎng)絡(luò)安全,個人興趣是寫作與閱讀,研究方向是網(wǎng)絡(luò)整合應(yīng)用與虛擬化進階應(yīng)用。
目 錄
第1章 初次使用Linux與命令行模式初探 1
1.1 Linux是什么 1
1.1.1 硬件與操作系統(tǒng) 1
1.1.2 Linux操作系統(tǒng)的發(fā)展歷史 4
1.1.3 GNU的GPL與Opensource開放源碼授權(quán) 6
1.1.4 Linux kernel(Linux內(nèi)核) 7
1.1.5 Linux distributions(Linux發(fā)行版) 8
1.1.6 Linux的常見用途 9
1.2 使用虛擬環(huán)境學習Linux操作系統(tǒng) 10
1.3 第一次登錄CentOS 7 11
1.3.1 在圖形用戶界面中使用CentOS 11
1.3.2 文本/圖形用戶界面的切換 14
1.4 簡易的文本命令操作 16
1.4.1 ls與ll檢查自己目錄中的文件名信息 16
1.4.2 歷史命令的功能 18
1.4.3 從系統(tǒng)中退出與關(guān)閉系統(tǒng) 19
1.5 課后操作練習 20
第2章 命令的執(zhí)行與基本的文件管理 22
2.1 在文本用戶界面的終端程序中的操作 22
2.1.1 在文本用戶模式中下達命令的方式 22
2.1.2 身份切換命令 su - 的使用 25
2.1.3 切換語言的功能 26
2.1.4 常見的熱鍵與組合鍵 27
2.1.5 在線求助方式 27
2.1.6 管道命令的應(yīng)用 31
2.2 Linux文件管理初探 32
2.2.1 Linux 目錄樹系統(tǒng)簡介 32
2.2.2 工作目錄的切換與相對/絕對路徑 34
2.2.3 簡易文件管理練習 36
2.3 課后操作練習 38
第3章 文件管理與vim初探 40
3.1 文件管理 40
3.1.1 目錄的創(chuàng)建與刪除 41
3.1.2 通配符 42
3.1.3 文件及目錄的復制與刪除 42
3.1.4 特殊文件名的處理方式 44
3.1.5 查看隱藏文件與文件類型 45
3.1.6 文件的移動與更名 47
3.1.7 大量創(chuàng)建空白文件的方式 47
3.2 文件內(nèi)容的查詢 48
3.2.1 連續(xù)輸出文件的內(nèi)容 48
3.2.2 可檢索文件內(nèi)容 48
3.3 vim程序編輯器 50
3.3.1 簡易的 vim 操作 50
3.3.2 常用的 vim 命令模式與命令行模式中的命令列表 51
3.4 課后操作練習 52
第4章 Linux文件的權(quán)限與賬號管理 54
4.1 Linux 傳統(tǒng)權(quán)限 54
4.1.1 用戶、群組與其他人 54
4.1.2 文件屬性與權(quán)限的修改方式 59
4.2 賬號管理 62
4.2.1 簡單的賬號管理 62
4.2.2 賬號與群組關(guān)聯(lián)性管理 63
4.3 賬號與權(quán)限的用途 64
4.3.1 單個用戶的所有權(quán) 64
4.3.2 群組共享功能 66
4.4 課后操作練習 67
第5章 權(quán)限的應(yīng)用、進程的查看與基本管理 69
5.1 權(quán)限在目錄與文件應(yīng)用上的意義 69
5.1.1 目錄文件與普通文件的權(quán)限包含的意義 69
5.1.2 用戶操作功能 71
5.2 進程管理初探 72
5.2.1 什么是程序與進程 73
5.2.2 查看進程的命令 74
5.2.3 進程的優(yōu)先級 PRI 與 NI 79
5.2.4 bash 的作業(yè)控制 80
5.3 特殊權(quán)限 SUID/SGID/SBIT 的功能 82
5.3.1 SUID/SGID/SBIT 的查看與功能說明 82
5.3.2 SUID/SGID/SBIT 權(quán)限的設(shè)置 85
5.4 課后操作練習 86
第6章 文件系統(tǒng)的基本管理 88
6.1 認識 Linux 文件系統(tǒng) 88
6.1.1 磁盤文件與磁盤分區(qū) 88
6.1.2 Linux 的 EXT2 文件系統(tǒng) 90
6.1.3 目錄與文件名 93
6.1.4 ln 鏈接文件的應(yīng)用 94
6.1.5 文件系統(tǒng)的掛載 94
6.2 文件系統(tǒng)的管理 95
6.2.1 創(chuàng)建分區(qū) 95
6.2.2 創(chuàng)建文件系統(tǒng)(磁盤格式化) 98
6.2.3 文件系統(tǒng)的掛載/卸載 98
6.2.4 系統(tǒng)開機啟動時自動掛載 100
6.3 系統(tǒng)開機啟動過程文件系統(tǒng)問題的處理 102
6.3.1 文件系統(tǒng)的卸載與移除 102
6.3.2 系統(tǒng)開機啟動過程文件系統(tǒng)出錯的救援方法 103
6.4 課后操作練習 104
第7章 bash的基本使用與系統(tǒng)救援 107
7.1 認識 bash shell 107
7.1.1 系統(tǒng)與用戶的 shell 107
7.1.2 變量設(shè)置規(guī)則 109
7.1.3 影響操作行為的變量 111
7.1.4 局部變量/全局變量與父進程/子進程 113
7.1.5 使用 kill 管理程序 114
7.1.6 登錄 Shell 和 非-登錄Shell 114
7.2 系統(tǒng)救援 116
7.2.1 通過正規(guī)的 systemd 方式救援 116
7.2.2 通過 bash 直接救援(可選方案) 119
7.3 課后操作練習 120
第8章 bash命令連續(xù)執(zhí)行與數(shù)據(jù)流重定向 122
8.1 連續(xù)執(zhí)行命令 122
8.1.1 命令返回值 122
8.1.2 連續(xù)執(zhí)行命令 124
8.1.3 使用 test 和判別式確認返回值 126
8.1.4 命令別名 130
8.1.5 用 () 進行數(shù)據(jù)或信息的匯總 131
8.2 數(shù)據(jù)流重定向 132
8.2.1 命令執(zhí)行數(shù)據(jù)的流動 132
8.2.2 管道的含義 134
8.3 課后操作練習 136
第9章 正則表達式與shell腳本初探 139
9.1 正則表達式的應(yīng)用 139
9.1.1 grep 命令的應(yīng)用 139
9.1.2 正則表達式符號的含義 140
9.1.3 sed 工具的使用 143
9.2 學習 shell 腳本 144
9.2.1 shell 腳本的編寫與執(zhí)行 144
9.2.2 shell 腳本的執(zhí)行環(huán)境 146
9.2.3 以交互式腳本及外帶參數(shù)來計算 pi 147
9.2.4 通過 if ... then 來設(shè)計條件判斷 150
9.2.5 以 case ... esac 來設(shè)計條件判斷 154
9.3 課后操作練習 156
第10章 用戶管理與ACL權(quán)限設(shè)置 160
10.1 Linux 賬號管理 160
10.1.1 Linux 賬號的 UID 與 GID 160
10.1.2 賬號與群組的管理 163
10.1.3 bash shell 腳本的循環(huán)控制 166
10.1.4 默認權(quán)限 umask 167
10.1.5 賬號管理的實踐 168
10.2 多人共管系統(tǒng)的環(huán)境:使用 sudo 171
10.3 主機的細節(jié)權(quán)限規(guī)劃:ACL 的使用 172
10.3.1 什么是 ACL 與如何啟用 ACL 173
10.3.2 ACL的設(shè)置技巧 173
10.4 課后操作練習 176
第11章 基本設(shè)置、備份、文件壓縮打包與作業(yè)調(diào)度 179
11.1 Linux 系統(tǒng)的基本設(shè)置 179
11.1.1 網(wǎng)絡(luò)設(shè)置 179
11.1.2 日期與時間設(shè)置 185
11.1.3 語言設(shè)置 187
11.1.4 簡易防火墻的管理 188
11.2 文件的壓縮與打包 190
11.2.1 文件的壓縮命令 190
11.2.2 文件的打包命令 tar 190
11.2.3 備份功能 192
11.3 Linux 作業(yè)調(diào)度 193
11.3.1 單次作業(yè)調(diào)度:at 193
11.3.2 循環(huán)作業(yè)調(diào)度:crontab 195
11.4 課后操作練習 197
第12章 軟件管理與安裝及日志文件初探 200
12.1 Linux本機軟件管理rpm 200
12.1.1 RPM管理器簡介 201
12.1.2 RPM 軟件管理器:rpm 202
12.2 Linux在線安裝/升級機制:yum 205
12.2.1 使用yum進行查詢、安裝、升級與卸載操作 205
12.2.2 yum 的配置文件 208
12.2.3 yum 的軟件群組功能 209
12.3 Linux 日志文件初探 210
12.3.1 CentOS 7 日志文件簡易說明 210
12.3.2 rsyslog 的設(shè)置與運行 212
12.3.3 systemd-journald.service 簡介 217
12.3.4 通過 logwatch 分析日志文件 218
12.4 課后操作練習 219
第13章 服務(wù)管理與系統(tǒng)啟動流程管理 221
13.1 服務(wù)管理 221
13.1.1 通過 kill 命令與信號來管理進程 221
13.1.2 systemd 簡介 223
13.1.3 systemctl管理服務(wù)的啟動與關(guān)閉 225
13.1.4 systemctl 列出系統(tǒng)服務(wù) 225
13.1.5 systemctl 獲取與切換默認操作界面 227
13.1.6 網(wǎng)絡(luò)服務(wù)管理初探 229
13.2 系統(tǒng)開機啟動流程的管理 230
13.2.1 Linux系統(tǒng)在systemd下的開機啟動流程 230
13.2.2 內(nèi)核與內(nèi)核模塊 231
13.2.3 grub2 配置文件初探 233
13.2.4 grub2 配置文件的維護 236
13.2.5 系統(tǒng)開機啟動文件的救援問題 241
13.3 課后操作練習 242
第14章 高級文件系統(tǒng)管理 244
14.1 軟件磁盤陣列 244
14.1.1 什么是RAID 244
14.1.2 軟件 RAID 的使用 246
14.2 邏輯卷管理器 248
14.2.1 LVM的基礎(chǔ):PV、PE、VG、LV的含義 248
14.2.2 LVM實踐流程 249
14.2.3 彈性化處理 LVM 文件系統(tǒng) 252
14.3 軟件RAID與LVM綜合管理 256
14.3.1 關(guān)閉與取消軟件 RAID 與 LVM 的方式 256
14.3.2 在軟件 RAID 上面構(gòu)建 LVM 257
14.4 簡易磁盤配額 258
14.4.1 磁盤配額的管理與限制 258
14.4.2 xfs 文件系統(tǒng)的 Quota 實踐 259
14.5 課后操作練習 262
第15章 Linux系統(tǒng)的準備 265
15.1 確認 Linux 服務(wù)器的用途 265
15.1.1 硬件的選購與Linux服務(wù)器的用途 266
15.1.2 磁盤分區(qū)與文件系統(tǒng)的選擇 267
15.2 系統(tǒng)安裝與初始環(huán)境的設(shè)置 269
15.2.1 服務(wù)器的假設(shè)前提設(shè)置 269
15.2.2 安裝程序與注意事項 270
15.2.3 初始化設(shè)置:網(wǎng)絡(luò)、升級機制、防火墻系統(tǒng)及其他設(shè)置等 273
15.3 簡易服務(wù)器的設(shè)置與相關(guān)環(huán)境的構(gòu)建 277
15.3.1 服務(wù)器軟件的安裝與設(shè)置 277
15.3.2 賬號的設(shè)置 279
測驗練習期中考 281
測驗練習期末考 285