內容簡介
全書共15章。書中首先講解了學習Linux作業系統的前提、作業系統的基本概念和安裝方法、作業系統基本結構以及Linux常用命令等基礎知識,接著,深入介紹了Bash Shill基礎知識、用戶許可權管理、檔案系統管理、系統進程和記憶體管理等核心套用技術。然後,詳細探討了
Shell腳本編程、正則表達式與檔案格式化處理、網路安全以及高性能集群軟體Keepalived等高級套用。最後,在實踐環節,通過對伺服器的部署、資料庫的部署以及Linux故障排查內容的講解,讓讀者掌握在實際操作中如何安裝以及部署伺服器和資料庫,同時學會應對出現錯誤問題的方法。
圖書目錄
第1篇 基礎知識
第1章 學習Linux的前提 002
◎ 本章教學微視頻:19個 37分鐘
1.1 Linux的發展現狀與趨勢 002
1.1.1 Linux與開源軟體 002
1.1.2 伺服器領域的發展 003
1.1.3 桌面領域的發展 003
1.1.4 移動嵌入式領域的發展 003
1.1.5 雲計算/大數據領域的發展 003
1.2 選擇適合自己的Linux發行版本 003
1.2.1 Linux的發行版本 004
1.2.2 初學者入門首選——CentOS系列 008
1.2.3 桌面平台首選——Ubuntu Linux 008
1.2.4 企業級套用首選——RHEL/CentOS
系列 008
1.3 形成良好的Linux學習方法 009
1.3.1 習慣命令行方式 009
1.3.2 理論結合實踐 009
1.3.3 學會使用Linux在線上幫助 009
1.3.4 學會獨立思考問題,獨立解決
問題 010
1.3.5 學習專業英語 010
1.3.6 Linux學習路線圖 010
1.4 用虛擬機技術學習Linux 011
1.4.1 虛擬機技術 011
1.4.2 虛擬機技術的優點 014
1.4.3 虛擬機的運行環境和硬體需求 014
1.4.4 安裝虛擬機注意事項 014
第2章 走進Linux的世界 016
◎ 本章教學微視頻:10個 27分鐘
2.1 UNIX作業系統 016
2.1.1 什麼是作業系統 016
2.1.2 UNIX概述 017
2.1.3 UNIX的發展 017
2.2 Linux快速入門 018
2.2.1 什麼是Linux 018
2.2.2 Linux的優缺點 018
2.2.3 Linux和Windows的區別 019
2.3 Linux系統的安裝與配置 020
2.3.1 準備安裝需要的工具 020
2.3.2 安裝並創建虛擬機 021
2.3.3 安裝Linux作業系統 023
2.3.4 設定用戶名和密碼 028
2.4 就業面試技巧與解析 030
2.4.1 面試技巧與解析(一) 030
2.4.2 面試技巧與解析(二) 030
第3章 Linux系統基本結構 032
◎ 本章教學微視頻:13個 41分鐘
3.1 系統與硬體 032
3.1.1 Linux硬體資源管理 032
3.1.2 Linux外在設備的使用 035
3.2 Linux核心 037
3.2.1 記憶體管理 038
3.2.2 進程管理 039
3.2.3 檔案系統 040
3.2.4 設備驅動程式 040
3.2.5 網路接口 041
3.3 檔案系統簡介 042
3.3.1 系統結構 042
3.3.2 檔案類型 043
3.3.3 Linux目錄及功能 044
3.4 系統服務管理工具systemd 045
3.4.1 啟動、停止、重啟服務 045
3.4.2 查看、禁止、啟用服務 047
3.4.3 systemd命令和sysvinit命令
對比 047
3.5 就業面試技巧與解析 048
3.5.1 面試技巧與解析(一) 049
3.5.2 面試技巧與解析(二) 049
第4章 Linux常用命令 050
◎ 本章教學微視頻:32個 61分鐘
4.1 Linux命令的格式 050
4.2 系統管理與維護命令 051
4.2.1 pwd命令 051
4.2.2 cd命令 052
4.2.3 ls命令 052
4.2.4 date和cal命令 054
4.2.5 su和passwd命令 055
4.2.6 man命令 057
4.2.7 who和w命令 058
4.2.8 uname命令 058
4.2.9 last命令 059
4.2.10 uptime和free命令 060
4.2.11 dmesg命令 061
4.2.12 ps和top命令 061
4.3 檔案管理與編輯命令 063
4.3.1 mkdir和touch命令 063
4.3.2 rm和rmdir命令 064
4.3.3 cat命令 065
4.3.4 grep命令 065
4.3.5 more命令 066
4.3.6 file命令 067
4.3.7 cp命令 068
4.3.8 mv命令 068
4.3.9 find命令 069
4.4 壓縮與解壓命令 070
4.4.1 zip/unzip命令 070
4.4.2 gzip/gunzip命令 071
4.4.3 bzip2/bunzip2命令 072
4.4.4 tar命令 073
4.5 磁碟管理與維護命令 073
4.5.1 df命令 073
4.5.2 du命令 074
4.5.3 fsck命令 075
4.6 文本編輯工具Vim 076
4.6.1 Vim編輯器簡介 076
4.6.2 Vim工作模式 076
4.6.3 Vim的基本操作 079
4.7 就業面試技巧與解析 081
4.7.1 面試技巧與解析(一) 081
4.7.2 面試技巧與解析(二) 082
第2篇 核心套用
第5章 Bash Shell基礎 084
◎ 本章教學微視頻:12個 30分鐘
5.1 認識Bash Shell 084
5.1.1 什麼是Shell 084
5.1.2 Bash的發展過程 085
5.1.3 Shell的工作原理 086
5.1.4 Shell的通配符 087
5.2 變數 088
5.2.1 什麼是變數 088
5.2.2 環境變數 089
5.2.3 PATH環境變數的設定 091
5.2.4 Shell引號 092
5.2.5 數組與運算符 094
5.3 配置和功能 097
5.3.1 Bash的內置命令 097
5.3.2 Bash Shell的系統配置 098
5.3.3 Bash Shell的功能 101
5.5 就業面試技巧與解析 103
5.5.1 面試技巧與解析(一) 103
5.5.2 面試技巧與解析(二) 103
第6章 Linux用戶許可權管理 105
◎ 本章教學微視頻:9個 44分鐘
6.1 Linux系統的安全性 105
6.2 用戶與用戶組的管理 106
6.2.1 用戶與用戶組的概念 106
6.2.2 用戶配置檔案 106
6.2.3 用戶賬號的添加、修改和刪除 110
6.2.4 用戶組的創建、修改和刪除 113
6.3 用戶與檔案的安全控制 115
6.4 檔案與目錄許可權的設定 115
6.4.1 檔案與目錄許可權 115
6.4.2 許可權的查看 116
6.4.3 設定檔案與目錄的許可權 117
6.5 就業面試技巧與解析 121
6.5.1 面試技巧與解析(一) 121
6.5.2 面試技巧與解析(二) 122
◎ 本章教學微視頻:13個 41分鐘
7.1 檔案系統概述 123
7.1.1 什麼是檔案系統 123
7.1.2 為什麼要使用檔案系統 125
7.1.3 檔案系統的標準 125
7.2 常用檔案系統 127
7.2.1 ext 2檔案系統 127
7.2.2 ext 3和ext 4檔案系統 128
7.2.3 ReiserFS 129
7.2.4 XFS 129
7.2.5 Btrfs 130
7.3 檔案系統的使用 130
7.3.1 硬碟設備和硬碟分區的識別 130
7.3.2 創建分區 131
7.3.3 硬碟分區的管理 134
7.3.4 創建檔案系統 135
7.3.5 檔案系統的掛載與卸載 137
7.4 就業面試技巧與解析 139
7.4.1 面試技巧與解析(一) 140
7.4.2 面試技巧與解析(二) 140
第8章 Linux系統進程和記憶體管理 141
◎ 本章教學微視頻:13個 39分鐘
8.1 系統進程 141
8.2 記憶體管理 142
8.2.1 物理記憶體和虛擬記憶體 142
8.2.2 交換空間的使用 143
8.3 進程的監控與管理 144
8.3.1 監控進程的使用情況 144
8.3.2 監控記憶體和交換分區的使用情況 147
8.3.3 pstree命令的使用 147
8.3.4 列出進程調用或打開檔案的信息 148
8.3.5 利用pgrep查詢進程ID 150
8.4 kill和killall命令的使用 152
8.4.1 用kill終止進程 152
8.4.2 用killall終止進程 155
8.5 任務調度進程crond的使用 155
8.5.1 crond簡介 156
8.5.2 crontab工具的使用 156
8.5.3 使用crontab工具的注意事項 158
8.6 就業面試技巧與解析 158
8.6.1 面試技巧與解析(一) 158
8.6.2 面試技巧與解析(二) 159
第3篇 高級套用
第9章 Shell腳本編程 162
◎ 本章教學微視頻:13個 42分鐘
9.1 Shell腳本 162
9.1.1 腳本格式 162
9.1.2 創建腳本檔案 163
9.1.3 腳本運行方式 164
9.2 Linux環境變數 166
9.2.1 Shell默認環境變數 167
9.2.2 Shell環境變數配置檔案 170
9.3 Shell腳本函式 173
9.3.1 腳本函式的基礎 173
9.3.2 函式中變數的使用 175
9.3.3 在命令行上使用函式 177
9.4 結構化命令 178
9.4.1 if-then語句 179
9.4.2 test命令 180
9.4.3 for循環 182
9.4.4 while和until命令 185
9.4.5 控制循環命令 186
9.5 就業面試技巧與解析 188
9.5.1 面試技巧與解析(一) 188
9.5.2 面試技巧與解析(二) 188
第10章 正則表達式與檔案格式化處理 189
◎ 本章教學微視頻:11個 35分鐘
10.1.1 什麼是正則表達式 189
10.1.2 正則表達式的分類 190
10.1.3 正則表達式的用途 190
10.2 基本正則表達式 191
10.2.1 表達式字元 191
10.2.2 grep的高級參數 193
10.2.3 Sed工具 194
10.3 擴展正則表達式 199
10.4 檔案的格式化與處理 200
10.4.1 格式化輸出:printf 200
10.4.2 數據處理工具:awk 201
10.4.3 檔案比較工具:diff 205
10.4.4 檔案列印準備:pr 208
10.5 就業面試技巧與解析 209
10.5.1 面試技巧與解析(一) 209
10.5.2 面試技巧與解析(二) 209
第11章 網路安全 211
◎ 本章教學微視頻:12個 37分鐘
11.1 防火牆概述 211
11.1.1 什麼是防火牆 211
11.1.2 防火牆的功能、技術及套用 212
11.2 iptables工具 213
11.2.1 iptables簡介 213
11.2.2 iptables語法格式 214
11.2.3 規則的查看與清除 215
11.2.4 防火牆的備份與還原 219
11.3 firewalld防火牆 220
11.3.1 firewalld簡介 221
11.3.2 firewalld的管理工具 221
11.4 SELinux簡介 223
11.4.1 什麼是SELinux 223
11.4.2 SELinux的配置檔案 225
11.4.3 SELinux安全上下文的查看和
修改 226
11.5 如何保護主機 230
11.6 就業面試技巧與解析 230
11.6.1 面試技巧與解析(一) 231
11.6.2 面試技巧與解析(二) 231
第12章 高性能集群軟體Keepalived 233
◎ 本章教學微視頻:15個 34分鐘
12.1 集群 233
12.1.1 什麼是集群 233
12.1.2 高可用集群 234
12.1.4 分散式計算集群 234
12.2 Keepalived簡介 235
12.2.1 Keepalived的用途 235
12.2.2 VRRP的工作原理 235
12.2.3 Keepalived的工作原理 235
12.2.4 Keepalived的體系結構 236
12.3 Keepalived安裝與配置 237
12.3.1 Keepalived的安裝過程 237
12.3.2 Keepalived的全局配置 240
12.3.3 Keepalived的VRRPD配置 243
12.3.4 Keepalived的LVS配置 244
12.4 Keepalived基礎功能套用實例 245
12.4.1 Keepalived基礎HA功能演示 245
12.4.2 通過vrrp_script實現對集群資源的
監控 249
12.4.3 Keepalived集群中MASTER和
BACKUP角色選舉策略 250
12.5 就業面試技巧與解析 252
12.5.1 面試技巧與解析(一) 252
12.5.2 面試技巧與解析(二) 252
第4篇 項目實踐
第13章 伺服器的部署 256
◎ 本章教學微視頻:16個 52分鐘
13.1 DHCP伺服器 256
13.1.1 安裝軟體 257
13.1.2 配置檔案 258
13.1.3 DHCP的套用 260
13.2 DNS域名伺服器 261
13.2.1 DNS的安裝 262
13.2.2 配置檔案 264
13.2.3 部署主域名伺服器 267
13.2.4 部署從域名伺服器 269
13.3 Apache網站伺服器 269
13.3.1 Apache簡介 269
13.3.2 安裝Apache軟體 270
13.3.3 配置檔案 273
13.3.4 常見問題總結 274
13.4 Nginx網站伺服器 275
13.4.1 Nginx簡介 275
13.4.2 安裝Nginx軟體 275
13.4.3 配置檔案解析 277
13.4.4 HTTP回響狀態碼 279
13.5 就業面試技巧與解析 280
13.5.1 面試技巧與解析(一) 281
13.5.2 面試技巧與解析(二) 281
第14章 資料庫的部署 282
◎ 本章教學微視頻:12個 41分鐘
14.1 資料庫基礎 282
14.1.1 資料庫簡介 282
14.1.2 認識MySQL 283
14.2 MySQL的安裝 283
14.3 管理工具的使用 293
14.3.1 mysql工具 293
14.3.2 mysqladmin工具 294
14.3.3 mysqldump工具 296
14.4 結構化查詢語言 297
14.4.1 資料庫定義語言 298
14.4.2 資料庫操作語言 301
14.4.3 資料庫查詢語言 302
14.5 安全性的設定 304
14.6 資料庫的備份與還原 307
14.7 就業面試技巧與解析 308
14.7.1 面試技巧與解析(一) 308
14.7.2 面試技巧與解析(二) 309
第15章 Linux故障排查 310
◎ 本章教學微視頻:9個 20分鐘
15.1 基本原理 310
15.2 Linux下常見系統故障的處理 311
15.2.1 處理Linux系統故障的思路 311
15.2.2 忘記Linux root密碼 311
15.2.3 Linux系統無法啟動的解決
辦法 314
15.3 dd命令行實用程式 316
15.3.1 dd命令的套用實例 317
15.3.2 某一運行級別的恢復 319
15.4 Linux下常見網路故障處理 319
15.5 因NAS存儲故障引起的Linux系統恢復
案例 321
15.6 就業面試技巧與解析 323
15.6.1 面試技巧與解析(一) 323
15.6.2 面試技巧與解析(二) 324
15.6.3 面試技巧與解析(三) 324