內容簡介
本書是知名度頗高的Linux入門書《鳥哥的Linux私房菜基礎學習篇》的新版,全面而詳細地介紹了Linux作業系統。
全書分為五部分:第一部分著重說明計算機的基礎知識、Linux的學習方法,如何規劃和安裝Linux主機以及CentOS 7.x的安裝、登錄與求助方法;第二部分介紹Linux的檔案系統、檔案、目錄與磁碟的管理;第三部分介紹文字模式接口shell和管理系統的好幫手shell腳本,另外還介紹了文字編輯器vi和vim的使用方法;第四部分介紹了對於系統安全非常重要的Linux賬號的管理、磁碟配額、高級檔案系統管理、計畫任務以及進程管理;第五部分介紹了系統管理員(root)的管理事項,如了解系統運行狀況、系統服務,針對登錄檔案進行解析,對系統進行備份以及核心的管理等。
本書內容豐富全面,基本概念的講解非常細緻,深入淺出。各種功能和命令的介紹,都配以大量的實例操作和詳盡的解析。本書是初學者學習Linux不可多得的一本入門好書。
圖書目錄
第一部分 Linux的規則與安裝
第0章 計算機概論 2
0.1 電腦:輔助人腦的好工具 3
0.2 個人電腦架構與相關設備組件 9
0.3 數據表示方式 23
0.4 軟體程式運行 25
0.5 重點回顧 29
0.6 本章習題 29
0.7 參考資料與擴展閱讀 30
第1章 Linux是什麼與如何學習 32
1.1 Linux是什麼 33
1.2 托瓦茲的Linux的發展 43
1.3 Linux當前套用的角色 51
1.4 Linux該如何學習 55
1.5 重點回顧 60
1.6 本章習題 61
1.7 參考資料與擴展閱讀 62
第2章 主機規劃與磁碟分區 63
2.1 Linux與硬體的搭配 64
2.2 磁碟分區 69
2.3 安裝Linux前的規劃 82
2.4 重點回顧 86
2.5 本章習題 87
2.6 參考資料與擴展閱讀 87
第3章 安裝CentOS7.x 88
3.1 本練習機的規劃(尤其是分區參數) 89
3.2 開始安裝CentOS7 91
3.3 多重引導安裝步驟與管理(可選) 111
3.4 重點回顧 114
3.5 本章習題 115
3.6 參考資料與擴展閱讀 115
第4章 首次登錄與線上求助 116
4.1 首次登錄系統 117
4.2 命令行模式下命令的執行 127
4.3 Linux系統的線上求助manpage與info page 133
4.4 超簡單的文本編輯器:nano 142
4.5 正確的關機方法 143
4.6 重點回顧 146
4.7 本章習題 146
4.8 參考資料與擴展閱讀 147
第二部分 Linux檔案、目錄與磁碟格式
第5章 Linux的檔案許可權與目錄配置 149
5.1 用戶與用戶組 150
5.2 Linux檔案許可權概念 152
5.3 Linux目錄配置 165
5.4 重點回顧 173
5.5 本章練習 174
5.6 參考資料與擴展閱讀 174
第6章 Linux檔案與目錄管理 175
6.1 目錄與路徑 176
6.2 檔案與目錄管理 181
6.3 檔案內容查看 186
6.4 檔案與目錄的默認許可權與隱藏許可權 194
6.5 命令與檔案的查找 201
6.6 極重要的複習,許可權與命令間的關係 205
6.7 重點回顧 206
6.8 本章習題 207
6.9 參考資料與擴展閱讀 208
第7章 Linux磁碟與檔案系統管理 209
7.1 認識Linux檔案系統 210
7.2 檔案系統的簡單操作 224
7.3 磁碟的分區、格式化、檢驗與掛載 231
7.4 設定啟動掛載 248
7.5 記憶體交換分區(swap)之創建 252
7.6 檔案系統的特殊觀察與操作 255
7.7 重點回顧 257
7.8 本章習題 258
7.9 參考資料與擴展閱讀 259
第8章 檔案與檔案系統的壓縮 261
8.1 壓縮檔案的用途與技術 262
8.2 Linux系統常見的壓縮命令 263
8.3 打包命令:tar 266
8.4 XFS檔案系統的備份與還原 272
8.5 光碟寫入工具 277
8.6 其他常見的壓縮與備份工具 282
8.7 重點回顧 285
8.8 本章習題 286
8.9 參考資料與擴展閱讀 287
第三部分 學習shell與shellscript
第9章 vim程式編輯器 289
9.1 vi與vim 290
9.2 vi的使用 291
9.3 vim的額外功能 299
9.4 其他vim使用注意事項 305
9.5 重點回顧 308
9.6 本章練習 308
9.7 參考資料與擴展閱讀 309
第10章 認識與學習BASH 310
10.1 認識BASH這個Shell 311
10.2 Shell的變數功能 316
10.3 命令別名與歷史命令 334
10.4 Bashshell的操作環境 337
10.5 數據流重定向 345
10.6 管道命令(pipe) 350
10.7 重點回顧 359
10.8 本章習題 360
10.9 參考資料與擴展閱讀 361
第11章 正則表達式與檔案格式化處理 362
11.1 開始之前:什麼是正則表達式 363
11.2 基礎正則表達式 364
11.3 擴展正則表達式 376
11.4 檔案的格式化與相關處理 377
11.5 重點回顧 384
11.6 本章習題 385
11.7 參考資料與擴展閱讀 386
第12章 學習shell腳本 387
12.1 什麼是shell腳本 388
12.2 簡單的shell腳本練習 392
12.3 善用判斷式 395
12.4 條件判斷式 400
12.5 循環(loop) 408
12.6 shell腳本的跟蹤與調試 413
12.7 重點回顧 414
12.8 本章習題 415
第四部分 Linux使用者管理
第13章 Linux賬號管理與ACL許可權設定 417
13.1 Linux的賬號與用戶組 418
13.2 賬號管理 426
13.3 主機的詳細許可權規劃:ACL的使用 440
13.4 用戶身份切換 444
13.5 用戶的特殊shell與PAM模組 450
13.6 Linux主機上的用戶信息傳遞 457
13.7 CentOS7環境下大量創建賬號的方法 460
13.8 重點回顧 462
13.9 本章習題 463
13.10 參考資料與擴展閱讀 464
第14章 磁碟配額(Quota)與高級檔案系統管理 465
14.1 磁碟配額(Quota)的套用與實踐 466
14.2 軟體磁碟陣列(SoftwareRAID) 475
14.3 邏輯卷管理器(Logical VolumeManager) 484
14.4 重點回顧 497
14.5 本章習題 498
14.6 參考資料與擴展閱讀 499
第15章 計畫任務(crontab) 500
15.1 什麼是計畫任務 501
15.2 僅執行一次的計畫任務 502
15.3 循環執行的計畫任務 506
15.4 可喚醒停機期間的工作任務 511
15.5 重點回顧 514
15.6 本章習題 514
第16章 進程管理與SELinux初探 515
16.1 什麼是進程(process) 516
16.2 任務管理(jobcontrol) 520
16.3 進程管理 524
16.4 特殊檔案與進程 538
16.5 SELinux初探 543
16.6 重點回顧 560
16.7 本章習題 561
16.8 參考資料與擴展閱讀 561
第五部分 Linux系統管理員
第17章 認識系統服務(daemon) 563
17.1 什麼是daemon與服務(service) 564
17.2 通過systemctl管理服務 568
17.3 systemctl針對service類型的配置檔案 578
17.4 systemctl針對timer的配置檔案 585
17.5 CentOS7.x默認啟動的服務概要 588
17.6 重點回顧 591
17.7 本章習題 591
17.8 參考資料與擴展閱讀 593
第18章 認識與分析日誌檔案 594
18.1 什麼是日誌檔案 595
18.2 rsyslog.service:記錄日誌檔案的服務 598
18.3 日誌檔案的輪循(logrotate) 605
18.4 systemd-journald.service簡介 610
18.5 分析日誌檔案 613
18.6 重點回顧 616
18.7 本章習題 617
18.8 參考資料與擴展閱讀 617
第19章 啟動流程、模組管理與Loader 618
19.1 Linux的啟動流程分析 619
19.2 核心與核心模組 630
19.3 BootLoader:Grub2 634
19.4 啟動過程的問題解決 650
19.5 重點回顧 653
19.6 本章習題 653
19.7 參考資料與擴展閱讀 654
第20章 基礎系統設定與備份策略 655
20.1 系統基本設定 656
20.2 伺服器硬體數據的收集 663
20.3 備份要點 668
20.4 備份的種類、頻率與工具的選擇 671
20.5 鳥哥的備份策略 675
20.6 災難恢復的考慮 678
20.7 重點回顧 678
20.8 本章習題 679
20.9 參考資料與擴展閱讀 679
第21章 軟體安裝:原始碼與Tarball 680
21.1 開放源碼的軟體安裝與升級簡介 681
21.2 使用傳統程式語言進行編譯的簡單範例 685
21.3 用make進行宏編譯 689
21.4 Tarball的管理與建議 692
21.5 函式館管理 699
21.6 校驗軟體正確性 702
21.7 重點回顧 703
21.8 本章習題 704
21.9 參考資料與擴展閱讀 705
第22章 軟體安裝RPM、SRPM與YUM 706
22.1 軟體管理器簡介 707
22.2 RPM軟體管理程式:rpm 712
22.3 YUM線上升級功能 719
22.4 SRPM的使用:rpmbuild(Optional) 730
22.5 重點回顧 737
22.6 本章習題 738
22.7 參考資料與擴展閱讀 738
第23章 XWindow設定介紹 739
23.1 什麼是XWindowSystem 740
23.2 XServer配置檔案解析與設定 748
23.3 顯示卡驅動程式安裝範例 754
23.4 重點回顧 757
23.5 本章習題 758
23.6 參考資料與擴展閱讀 758
第24章 Linux核心編譯與管理 759
24.1 編譯前的任務:認識核心與獲取核心原始碼 760
24.2 核心編譯前的預處理與核心功能選擇 765
24.3 核心的編譯與安裝 772
24.4 額外(單一)核心模組編譯 774