《鳥哥的Linux私房菜基礎篇第四版.pdf》PDF高清完整免費版

再說一遍,完全免費!!!附加書籍標籤!

下載地址:https://u15372029.pipipan.com/fs/15372029-393101184

書籍目錄

第一部分 Linux的規則與安裝

第0章 計算機概論 2

0.1 電腦:輔助人腦的好工具 3

0.1.1 電腦硬件的五大單元 3

0.1.2 一切設計的起點:CPU的架構 5

0.1.3 其他單元的設備 6

0.1.4 運作流程 6

0.1.5 電腦的分類 7

0.1.6 電腦上面常用的計算單位(容量、速度等) 8

0.2 個人電腦架構與相關設備組件 9

0.2.1 執行腦袋運算與判斷的CPU 10

0.2.2 內存 12

0.2.3 顯卡 15

0.2.4 硬盤與存儲設備 16

0.2.5 擴展卡與接口 20

0.2.6 主板 21

0.2.7 主機電源 22

0.2.8 選購須知 22

0.3 數據表示方式 23

0.3.1 數字系統 24

0.3.2 字符編碼系統 24

0.4 軟件程序運行 25

0.4.1 機器語言程序與編譯型程序 25

0.4.2 操作系統 26

0.4.3 應用程序 28

0.5 重點回顧 29

0.6 本章習題 29

0.7 參考資料與擴展閱讀 30

第1章 Linux是什麼與如何學習 32

1.1 Linux是什麼 33

1.1.1 Linux是什麼?操作系統還是應用程序? 33

1.1.2 Linux之前,Unix的歷史 34

1.1.3 關於GNU計劃、自由軟件與開放源代碼 40

1.2 託瓦茲的Linux的發展 43

1.2.1 與Minix之間 43

1.2.2 對386硬件的多任務測試 44

1.2.3 初次發佈Linux 0.02 45

1.2.4 Linux的發展:虛擬團隊的產生 46

1.2.5 Linux的內核版本 47

1.2.6 Linux發行版 48

1.3 Linux當前應用的角色 51

1.3.1 企業環境的使用 52

1.3.2 個人環境的使用 53

1.3.3 雲端應用 54

1.4 Linux該如何學習 55

1.4.1 從頭學習Linux基礎 56

1.4.2 選擇一本易讀的工具書 57

1.4.3 實踐再實踐 58

1.4.4 發生問題怎麼處理 58

1.4.5 鳥哥的建議(重點在solution的學習) 59

1.5 重點回顧 60

1.6 本章習題 61

1.7 參考資料與擴展閱讀 62

第2章 主機規劃與磁盤分區 63

2.1 Linux與硬件的搭配 64

2.1.1 認識計算機的硬件設備 64

2.1.2 選擇與Linux搭配的主機設備 65

2.1.3 各硬件設備在Linux中的文件名 67

2.1.4 使用虛擬機學習 68

2.2 磁盤分區 69

2.2.1 磁盤連接方式與設備文件名的關係 69

2.2.2 MBR(MS-DOS)與GPT磁盤分區表(partition table) 70

2.2.3 啓動流程中的BIOS與UEFI啓動檢測程序 76

2.2.4 Linux安裝模式下,磁盤分區的選擇(極重要) 79

2.3 安裝Linux前的規劃 82

2.3.1 選擇適當的Linux發行版 82

2.3.2 主機的服務規劃與硬件的關係 83

2.3.3 主機硬盤的主要規劃 84

2.3.4 鳥哥的兩個實際案例 85

2.4 重點回顧 86

2.5 本章習題 87

2.6 參考資料與擴展閱讀 87

第3章 安裝CentOS 7.x 88

3.1 本練習機的規劃(尤其是分區參數) 89

3.2 開始安裝 CentOS 7 91

3.2.1 調整BIOS與虛擬機創建流程 91

3.2.2 選擇安裝模式與啓動(inst.gpt) 94

3.2.3 在地設置之時區、語言與鍵盤佈局 96

3.2.4 安裝源設置與軟件選擇 97

3.2.5 磁盤分區與文件系統設置 99

3.2.6 內核管理與網絡設置 104

3.2.7 開始安裝、設置root密碼與新增可切換身份之一般用戶 106

3.2.8 準備使用系統前的授權同意 108

3.2.9 其他功能:RAM測試,安裝筆記本電腦的內核參數(可選) 110

3.3 多重引導安裝步驟與管理(可選) 111

3.3.1 安裝 CentOS 7.x + Windows 7的規劃 111

3.3.2 高級安裝 CentOS 7.x與Windows 7 112

3.3.3 恢復MBR內的啓動引導程序與設置多重引導選項 113

3.4 重點回顧 114

3.5 本章習題 115

3.6 參考資料與擴展閱讀 115

第4章 首次登錄與在線求助 116

4.1 首次登錄系統 117

4.1.1 首次登錄CentOS 7.x圖形用戶界面模式 117

4.1.2 GNOME的操作與註銷 118

4.1.3 X Window與命令行模式的切換 124

4.1.4 在終端登錄Linux 125

4.2 命令行模式下命令的執行 127

4.2.1 開始執行命令 127

4.2.2 基礎命令的操作 128

4.2.3 重要的幾個熱鍵[Tab]、[Ctrl]-c、[Ctrl]-d 131

4.2.4 錯誤信息的查看 133

4.3 Linux系統的在線求助man page與info page 133

4.3.1 命令的 --help求助說明 134

4.3.2 man page 135

4.3.3 info page 139

4.3.4 其他有用的文件(documents) 141

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.2.1 Linux文件屬性 152

5.2.2 如何修改文件屬性與權限 156

5.2.3 目錄與文件的權限意義 159

5.2.4 Linux文件種類與擴展名 162

5.3 Linux目錄配置 165

5.3.1 Linux目錄配置的依據-- FHS 165

5.3.2 目錄樹(directory tree) 169

5.3.3 絕對路徑與相對路徑 170

5.3.4 CentOS的觀察 172

5.4 重點回顧 173

5.5 本章練習 174

5.6 參考資料與擴展閱讀 174

第6章 Linux文件與目錄管理 175

6.1 目錄與路徑 176

6.1.1 相對路徑與絕對路徑 176

6.1.2 目錄的相關操作 176

6.1.3 關於執行文件路徑的變量:$PATH 179

6.2 文件與目錄管理 181

6.2.1 文件與目錄的查看:ls 181

6.2.2 複製、刪除與移動:cp、rm、mv 183

6.2.3 獲取路徑的文件名與目錄名稱 186

6.3 文件內容查看 186

6.3.1 直接查看文件內容 187

6.3.2 可翻頁查看 188

6.3.3 數據截取 190

6.3.4 非純文本文件:od 191

6.3.5 修改文件時間或創建新文件:touch 192

6.4 文件與目錄的默認權限與隱藏權限 194

6.4.1 文件默認權限:umask 195

6.4.2 文件隱藏屬性 196

6.4.3 文件特殊權限:SUID、SGID、SBIT 198

6.4.4 觀察文件類型:file 200

6.5 命令與文件的查找 201

6.5.1 腳本文件的查找 201

6.5.2 文件的查找 201

6.6 極重要的複習,權限與命令間的關係 205

6.7 重點回顧 206

6.8 本章習題 207

6.9 參考資料與擴展閱讀 208

第7章 Linux磁盤與文件系統管理 209

7.1 認識Linux文件系統 210

7.1.1 磁盤組成與分區的複習 210

7.1.2 文件系統特性 211

7.1.3 Linux的ext2文件系統(inode) 212

7.1.4 與目錄樹的關係 217

7.1.5 ext2/ext3/ext4文件的存取與日誌式文件系統的功能 219

7.1.6 Linux文件系統的運行 220

7.1.7 掛載點的意義(mount point) 221

7.1.8 其他Linux支持的文件系統與VFS 221

7.1.9 XFS文件系統簡介 222

7.2 文件系統的簡單操作 224

7.2.1 磁盤與目錄的容量 224

7.2.2 硬鏈接與符號鏈接:ln 227

7.3 磁盤的分區、格式化、檢驗與掛載 231

7.3.1 觀察磁盤分區狀態 232

7.3.2 磁盤分區:gdisk/fdisk 233

7.3.3 磁盤格式化(創建文件系統) 238

7.3.4 文件系統檢驗 241

7.3.5 文件系統掛載與卸載 243

7.3.6 磁盤/文件系統參數自定義 246

7.4 設置啓動掛載 248

7.4.1 啓動掛載/etc/fstab及/etc/mtab 248

7.4.2 特殊設備loop掛載(鏡像文件不刻錄就掛載使用) 251

7.5 內存交換分區(swap)之創建 252

7.5.1 使用物理分區創建內存交換分區 253

7.5.2 使用文件創建內存交換文件 254

7.6 文件系統的特殊觀察與操作 255

7.6.1 磁盤空間之浪費問題 255

7.6.2 利用GNU的parted 進行分區操作(可選) 256

7.7 重點回顧 257

7.8 本章習題 258

7.9 參考資料與擴展閱讀 259

第8章 文件與文件系統的壓縮 261

8.1 壓縮文件的用途與技術 262

8.2 Linux系統常見的壓縮命令 263

8.2.1 gzip,zcat/zmore/zless/zgrep 263

8.2.2 bzip2,bzcat/bzmore/bzless/bzgrep 265

8.2.3 xz,xzcat/xzmore/xzless/xzgrep 265

8.3 打包命令:tar 266

8.4 XFS文件系統的備份與還原 272

8.4.1 XFS文件系統備份xfsdump 272

8.4.2 XFS文件系統還原xfsrestore 275

8.5 光盤寫入工具 277

8.5.1 mkisofs:建立鏡像文件 277

8.5.2 cdrecord:光盤刻錄工具 280

8.6 其他常見的壓縮與備份工具 282

8.6.1 dd 282

8.6.2 cpio 284

8.7 重點回顧 285

8.8 本章習題 286

8.9 參考資料與擴展閱讀 287

第三部分 學習shell與shell script

第9章 vim程序編輯器 289

9.1 vi與vim 290

9.2 vi的使用 291

9.2.1 簡易執行範例 292

9.2.2 按鍵說明 293

9.2.3 一個案例練習 296

9.2.4 vim的緩存、恢復與打開時的警告信息 297

9.3 vim的額外功能 299

9.3.1 可視區塊(Visual Block) 300

9.3.2 多文件編輯 301

9.3.3 多窗口功能 302

9.3.4 vim的關鍵詞補全功能 303

9.3.5 vim環境設置與記錄:~/.vimrc、~/.viminfo 304

9.3.6 vim常用命令示意圖 305

9.4 其他vim使用注意事項 305

9.4.1 中文編碼的問題 306

9.4.2 DOS與Linux的換行符 306

9.4.3 語系編碼轉換 307

9.5 重點回顧 308

9.6 本章練習 308

9.7 參考資料與擴展閱讀 309

第10章 認識與學習BASH 310

10.1 認識BASH這個Shell 311

10.1.1 硬件、內核與Shell 311

10.1.2 爲何要學命令行模式的 Shell? 312

10.1.3 系統的合法shell與 /etc/shells功能 313

10.1.4 Bash shell的功能 314

10.1.5 查詢命令是否爲Bash shell 的內置命令:type 315

10.1.6 命令的執行與快速編輯按鈕 316

10.2 Shell的變量功能 316

10.2.1 什麼是變量? 317

10.2.2 變量的使用與設置:echo、變量設置規則、unset 318

10.2.3 環境變量的功能 322

10.2.4 影響顯示結果的語系變量(locale) 325

10.2.5 變量的有效範圍 327

10.2.6 變量鍵盤讀取、數組與聲明: read、array、declare 327

10.2.7 與文件系統及程序的限制關係:ulimit 329

10.2.8 變量內容的刪除、取代與替換(可選) 330

10.3 命令別名與歷史命令 334

10.3.1 命令別名設置:alias、unalias 334

10.3.2 歷史命令:history 335

10.4 Bash shell的操作環境 337

10.4.1 路徑與命令查找順序 337

10.4.2 bash的登錄與歡迎信息: /etc/issue、/etc/motd 337

10.4.3 bash的環境配置文件 338

10.4.4 終端的環境設置:stty、 set 342

10.4.5 通配符與特殊符號 344

10.5 數據流重定向 345

10.5.1 什麼是數據流重定向 345

10.5.2 命令執行的判斷根據:;、&&、|| 348

10.6 管道命令(pipe) 350

10.6.1 選取命令:cut、grep 351

10.6.2 排序命令:sort、wc、uniq 353

10.6.3 雙向重定向:tee 354

10.6.4 字符轉換命令:tr、col、join、paste、expand 355

10.6.5 劃分命令:split 357

10.6.6 參數代換:xargs 358

10.6.7 關於減號【-】的用途 359

10.7 重點回顧 359

10.8 本章習題 360

10.9 參考資料與擴展閱讀 361

第11章 正則表達式與文件格式化處理 362

11.1 開始之前:什麼是正則表達式 363

11.2 基礎正則表達式 364

11.2.1 語系對正則表達式的影響 365

11.2.2 grep 的一些高級選項 365

11.2.3 基礎正則表達式練習 366

11.2.4 基礎正則表達式字符集合(characters) 371

11.2.5 sed工具 373

11.3 擴展正則表達式 376

11.4 文件的格式化與相關處理 377

11.4.1 格式化打印:printf 377

11.4.2 awk:好用的數據處理工具 379

11.4.3 文件比對工具 381

11.4.4 文件打印設置:pr 384

11.5 重點回顧 384

11.6 本章習題 385

11.7 參考資料與擴展閱讀 386

第12章 學習shell腳本 387

12.1 什麼是shell腳本 388

12.1.1 爲什麼要學習shell腳本 388

12.1.2 第一個腳本的編寫與執行 389

12.1.3 建立shell腳本的良好編寫習慣 391

12.2 簡單的shell腳本練習 392

12.2.1 簡單範例 392

12.2.2 腳本的執行方式差異(source、sh script、./script) 394

12.3 善用判斷式 395

12.3.1 利用test命令的測試功能 395

12.3.2 利用判斷符號[ ] 397

12.3.3 shell腳本的默認變量($0、$1...) 399

12.4 條件判斷式 400

12.4.1 利用if…then 401

12.4.2 利用case…esac判斷 405

12.4.3 利用function功能 406

12.5 循環(loop) 408

12.5.1 while do done、until do done不定循環) 408

12.5.2 for...do...done(固定循環) 409

12.5.3 for...do...done的數值處理 411

12.5.4 搭配隨機數與數組的實驗 412

12.6 shell腳本的跟蹤與調試 413

12.7 重點回顧 414

12.8 本章習題 415

第四部分 Linux使用者管理

第13章 Linux賬號管理與ACL權限設置 417

13.1 Linux的賬號與用戶組 418

13.1.1 用戶標識符:UID與GID 418

13.1.2 用戶賬號 419

13.1.3 關於用戶組:有效與初始用戶組, groups, newgr 423

13.2 賬號管理 426

13.2.1 新增與刪除用戶:useradd、相關配置文件、passwd、usermod、

userdel 426

13.2.2 用戶功能 434

13.2.3 新增與刪除用戶組 437

13.2.4 賬號管理實例 438

13.2.5 使用外部身份認證系統 439

13.3 主機的詳細權限規劃:ACL的使用 440

13.3.1 什麼是ACL與如何支持啓動ACL 440

13.3.2 ACL的設置技巧:getfacl、setfacl 441

13.4 用戶身份切換 444

13.4.1 su 445

13.4.2 sudo 446

13.5 用戶的特殊shell與PAM模塊 450

13.5.1 特殊的shell,/sbin/nologin 451

13.5.2 PAM模塊簡介 451

13.5.3 PAM模塊設置語法 452

13.5.4 常用模塊簡介 454

13.5.5 其他相關文件 456

13.6 Linux主機上的用戶信息傳遞 457

13.6.1 查詢用戶:w、who、last、lastlog 457

13.6.2 用戶對談:write、mesg、wall 458

13.6.3 用戶郵箱:mail 459

13.7 CentOS 7環境下大量創建賬號的方法 460

13.7.1 一些賬號相關的檢查工具 460

13.7.2 大量創建賬號模板(適用passwd --stdin 選項) 461

13.8 重點回顧 462

13.9 本章習題 463

13.10 參考資料與擴展閱讀 464

第14章 磁盤配額(Quota)與高級文件系統管理 465

14.1 磁盤配額(Quota)的應用與實踐 466

14.1.1 什麼是磁盤配額 466

14.1.2 一個xfs文件系統的磁盤配額實踐範例 468

14.1.3 實踐磁盤配額流程-1:文件系統的支持與查看 469

14.1.4 實踐磁盤配額流程-2:查看磁盤配額報告數據 469

14.1.5 實踐磁盤配額流程-3:限制值設置方式 470

14.1.6 實踐磁盤配額流程-4:project的限制(針對目錄限制)

(Optional) 471

14.1.7 xfs磁盤配額的管理與額外命令對照表 473

14.1.8 不修改既有系統的磁盤配額實例 475

14.2 軟件磁盤陣列(Software RAID) 475

14.2.1 什麼是RAID 475

14.2.2 硬件RAID,軟件RAID 479

14.2.3 軟件磁盤陣列的設置 479

14.2.4 模擬RAID錯誤的恢復模式 482

14.2.5 開機自動啓動RAID並自動掛載 483

14.2.6 關閉軟件RAID(重要) 484

14.3 邏輯卷管理器(Logical Volume Manager) 484

14.3.1 什麼是LVM:PV、PE、VG、LV的意義 485

14.3.2 LVM實踐流程 486

14.3.3 放大LV容量 490

14.3.4 使用LVM thin Volume讓LVM動態自動調整磁盤使用率 492

14.3.5 LVM的LV磁盤快照 493

14.3.6 LVM相關命令集合與LVM的關閉 496

14.4 重點回顧 497

14.5 本章習題 498

14.6 參考資料與擴展閱讀 499

第15章 計劃任務(crontab) 500

15.1 什麼是計劃任務 501

15.1.1 Linux計劃任務的種類:at、cron 501

15.1.2 CentOS Linux系統上常見的例行性工作 501

15.2 僅執行一次的計劃任務 502

15.2.1 atd的啓動與at運行的方式 502

15.2.2 實際運行單一計劃任務 503

15.3 循環執行的計劃任務 506

15.3.1 用戶的設置 506

15.3.2 系統的配置文件:/etc/crontab、 /etc/cron.d/* 508

15.3.3 一些注意事項 510

15.4 可喚醒停機期間的工作任務 511

15.4.1 什麼是anacron 512

15.4.2 anacron與/etc/anacrontab 512

15.5 重點回顧 514

15.6 本章習題 514

第16章 進程管理與SELinux初探 515

16.1 什麼是進程(process) 516

16.1.1 進程與程序

(process & program) 516

16.1.2 Linux的多人多任務環境 518

16.2 任務管理(job control) 520

16.2.1 什麼是任務管理? 520

16.2.2 job control的管理 520

16.2.3 脫機管理問題 523

16.3 進程管理 524

16.3.1 查看進程 524

16.3.2 進程的管理 530

16.3.3 關於進程的執行順序 531

16.3.4 查看系統資源信息 533

16.4 特殊文件與進程 538

16.4.1 具有SUID/SGID權限的命令執行狀態 538

16.4.2 /proc/* 代表的意義 539

16.4.3 查詢已使用文件或已執行進程使用的文件 540

16.5 SELinux初探 543

16.5.1 什麼是SELinux 543

16.5.2 SELinux的運行模式 544

16.5.3 SELinux三種模式的啓動、關閉與查看 548

16.5.4 SELinux策略內的規則管理 550

16.5.5 SELinux安全上下文的修改 552

16.5.6 一個網絡服務案例及日誌文件協助 554

16.6 重點回顧 560

16.7 本章習題 561

16.8 參考資料與擴展閱讀 561

第五部分 Linux系統管理員

第17章 認識系統服務(daemon) 563

17.1 什麼是daemon與服務(service) 564

17.1.1 早期System V的init管理操作中daemon的主要分類

(Optional) 564

17.1.2 systemd使用的unit分類 566

17.2 通過systemctl管理服務 568

17.2.1 通過systemctl管理單一服務(service unit)的啓動/開機

啓動與查看狀態 568

17.2.2 通過systemctl查看系統上所有的服務 571

17.2.3 通過systemctl管理不同的操作環境(target unit) 572

17.2.4 通過systemctl分析各服務之間的依賴性 574

17.2.5 與systemd的daemon運行過程相關的目錄簡介 575

17.2.6 關閉網絡服務 577

17.3 systemctl針對service類型的配置文件 578

17.3.1 systemctl配置文件相關目錄簡介 578

17.3.2 systemctl配置文件的設置項目簡介 578

17.3.3 兩個vsftpd運行的實例 581

17.3.4 多重的重複設置方式:以getty爲例 582

17.3.5 自己的服務自己作 585

17.4 systemctl針對timer的配置文件 585

17.5 CentOS 7.x默認啓動的服務概要 588

17.6 重點回顧 591

17.7 本章習題 591

17.8 參考資料與擴展閱讀 593

第18章 認識與分析日誌文件 594

18.1 什麼是日誌文件 595

18.1.1 CentOS 7日誌文件簡易說明 595

18.1.2 日誌文件內容的一般格式 597

18.2 rsyslog.service:記錄日誌文件的服務 598

18.2.1 rsyslog.service的配置文件:

/etc/rsyslog.conf 598

18.2.2 日誌文件的安全性設置 603

18.2.3 日誌文件服務器的設置 604

18.3 日誌文件的輪循(logrotate) 605

18.3.1 logrotate的配置文件 605

18.3.2 實際測試logrotate的操作 608

18.3.3 自定義日誌文件的輪循功能 609

18.4 systemd-journald.service簡介 610

18.4.1 使用journalctl查看登錄信息 611

18.4.2 logger命令的應用 612

18.4.3 保存journal的方式 612

18.5 分析日誌文件 613

18.5.1 CentOS默認提供的logwatch 613

18.5.2 鳥哥自己寫的日誌文件分析工具 615

18.6 重點回顧 616

18.7 本章習題 617

18.8 參考資料與擴展閱讀 617

第19章 啓動流程、模塊管理與Loader 618

19.1 Linux的啓動流程分析 619

19.1.1 啓動流程一覽 619

19.1.2 BIOS、boot loader與kernel加載 619

19.1.3 第一個程序systemd及使用default.target進入啓動程序分析 625

19.1.4 systemd執行sysinit.target初始化系統、basic.target準備系統 627

19.1.5 systemd啓動multi-user.target下的服務 628

19.1.6 systemd啓動graphical.target下面的服務 629

19.1.7 啓動過程會用到的主要配置文件 629

19.2 內核與內核模塊 630

19.2.1 內核模塊與依賴性 631

19.2.2 查看內核模塊 632

19.2.3 內核模塊的加載與刪除 632

19.2.4 內核模塊的額外參數設置:/etc/modprobe.d/*conf 633

19.3 Boot Loader:Grub2 634

19.3.1 boot loader的兩個stage 634

19.3.2 grub2的配置文件/boot/grub2/grub.cfg初探 635

19.3.3 grub2配置文件維護/etc/default/grub與

/etc/grub.d 638

19.3.4 initramfs的重要性與建立新initramfs文件 642

19.3.5 測試與安裝grub2 643

19.3.6 啓動前的額外功能修改 645

19.3.7 關於啓動畫面與終端畫面的圖形顯示方式 647

19.3.8 爲個別選項設置密碼 647

19.4 啓動過程的問題解決 650

19.4.1 忘記root密碼的解決之道 650

19.4.2 直接啓動就以root執行bash的方法 652

19.4.3 因文件系統錯誤而無法啓動 652

19.5 重點回顧 653

19.6 本章習題 653

19.7 參考資料與擴展閱讀 654

第20章 基礎系統設置與備份策略 655

20.1 系統基本設置 656

20.1.1 網絡設置(手動設置與DHCP自動獲取) 656

20.1.2 日期與時間設置 659

20.1.3 語系設置 660

20.1.4 防火牆簡易設置 661

20.2 服務器硬件數據的收集 663

20.2.1 使用dmidecode查看硬件設備 663

20.2.2 硬件資源的收集與分析 664

20.2.3 瞭解磁盤的健康狀態 667

20.3 備份要點 668

20.3.1 備份數據的考慮 668

20.3.2 哪些Linux數據具有備份的意義 669

20.3.3 備份用存儲媒介的選擇 670

20.4 備份的種類、頻率與工具的選擇 671

20.4.1 完整備份之累積備份(Incremental backup) 672

20.4.2 完整備份之差異備份(Differential backup) 673

20.4.3 關鍵數據備份 674

20.5 鳥哥的備份策略 675

20.5.1 每週系統備份的腳本 675

20.5.2 每日備份數據的腳本 676

20.5.3 遠程備份的腳本 677

20.6 災難恢復的考慮 678

20.7 重點回顧 678

20.8 本章習題 679

20.9 參考資料與擴展閱讀 679

第21章 軟件安裝:源代碼與Tarball 680

21.1 開放源碼的軟件安裝與升級簡介 681

21.1.1 什麼是開放源碼、編譯器與可執行文件 681

21.1.2 什麼是函數庫 683

21.1.3 什麼是make與configure 683

21.1.4 什麼是Tarball的軟件 684

21.1.5 如何安裝與升級軟件 685

21.2 使用傳統程序語言進行編譯的簡單範例 685

21.2.1 單一程序:打印Hello World 686

21.2.2 主、子程序鏈接:子程序的編譯 687

21.2.3 調用外部函數庫:加入鏈接的函數庫 688

21.2.4 gcc的簡易用法(編譯、參數與連接) 689

21.3 用make進行宏編譯 689

21.3.1 爲什麼要用make 689

21.3.2 makefile的基本語法與變量 690

21.4 Tarball的管理與建議 692

21.4.1 使用源代碼管理軟件所需要的基礎軟件 693

21.4.2 Tarball安裝的基本步驟 693

21.4.3 一般Tarball軟件安裝的建議

事項(如何刪除?升級?) 695

21.4.4 一個簡單的範例、利用ntp來示範 696

21.4.5 利用patch更新源代碼 697

21.5 函數庫管理 699

21.5.1 動態與靜態函數庫 700

21.5.2 ldconfig與/etc/ld.so.conf 701

21.5.3 程序的動態函數庫解析:ldd 701

21.6 校驗軟件正確性 702

21.7 重點回顧 703

21.8 本章習題 704

21.9 參考資料與擴展閱讀 705

第22章 軟件安裝RPM、SRPM與YUM 706

22.1 軟件管理器簡介 707

22.1.1 Linux界的兩大主流:RPM與DPKG 707

22.1.2 什麼是RPM與SRPM 708

22.1.3 什麼是i386、i586、i686、noarch、 x86_64 709

22.1.4 RPM的優點 710

22.1.5 RPM屬性依賴的解決方式:YUM在線升級 711

22.2 RPM軟件管理程序:rpm 712

22.2.1 RPM默認安裝的路徑 712

22.2.2 RPM安裝(install) 712

22.2.3 RPM升級與更新(upgrade/freshen) 714

22.2.4 RPM查詢(query) 714

22.2.5 RPM驗證與數字簽名(Verify/signature) 716

22.2.6 RPM反安裝與重建數據庫(erase/rebuilddb) 719

22.3 YUM在線升級功能 719

22.3.1 利用YUM進行查詢、安裝、升級與刪除功能 720

22.3.2 YUM的配置文件 723

22.3.3 YUM的軟件羣組功能 725

22.3.4 EPEL/ELRepo外掛軟件以及自定義配置文件 726

22.3.5 全系統自動升級 728

22.3.6 管理的抉擇:RPM還是 Tarball 728

22.3.7 基礎服務管理:以Apache 爲例 729

22.4 SRPM的使用:rpmbuild(Optional) 730

22.4.1 利用默認值安裝SRPM文件(--rebuid/--recompile) 730

22.4.2 SRPM使用的路徑與需要的軟件 731

22.4.3 配置文件的主要內容(*.spec) 732

22.4.4 SRPM的編譯命令(-ba/-bb) 735

22.4.5 一個打包自己軟件的範例 736

22.5 重點回顧 737

22.6 本章習題 738

22.7 參考資料與擴展閱讀 738

第23章 X Window設置介紹 739

23.1 什麼是X Window System 740

23.1.1 X Window System的發展簡史 740

23.1.2 主要組件:X Server/XClient/Window Manager/Display

Manager 741

23.1.3 X Window System的啓動流程 743

23.1.4 X啓動流程測試 746

23.1.5 我是否需要啓用X Window System 747

23.2 X Server配置文件解析與設置 748

23.2.1 解析xorg.conf設置 748

23.2.2 字體管理 751

23.2.3 顯示器參數微調 753

23.3 顯卡驅動程序安裝範例 754

23.3.1 NVIDIA 754

23.3.2 AMD(ATI) 756

23.3.3 Intel 756

23.4 重點回顧 757

23.5 本章習題 758

23.6 參考資料與擴展閱讀 758

第24章 Linux內核編譯與管理 759

24.1 編譯前的任務:認識內核與獲取內核源代碼 760

24.1.1 什麼是內核(Kernel) 760

24.1.2 更新內核的目的 761

24.1.3 內核的版本 762

24.1.4 內核源代碼的獲取方式 763

24.1.5 內核源代碼的解壓縮、安裝、查看 764

24.2 內核編譯前的預處理與內核功能選擇 765

24.2.1 硬件環境查看與內核功能要求 765

24.2.2 保持乾淨源代碼:make mrproper 765

24.2.3 開始選擇內核功能:make XXconfig 765

24.2.4 內核功能詳細選項選擇 767

24.3 內核的編譯與安裝 772

24.3.1 編譯內核與內核模塊 772

24.3.2 實際安裝模塊 773

24.3.3 開始安裝新內核與多重內核選項(grub) 773

24.4 額外(單一)內核模塊編譯 774

24.4.1 編譯前注意事項 774

24.4.2 單一模塊編譯 775

24.4.3 內核模塊管理 777

24.5 以最新內核版本編譯CentOS 7.x的內核 777

24.6 重點回顧 778

24.7 本章習題 778

24.8 參考資料與擴展閱讀 778

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章