內容簡介
《Linux系統架構與運維實戰》共分為21個章節,供讀者深入淺出、循序漸進地學習。第1章~第2章主要講解Linux作業系統的發展史以及簡單的系統使用。第3章~第7章主要講述Linux各命令的基本使用,以及用戶組、磁碟管理負載查看等各命令工具的深入使用。第8章~第13章主要講述Linux各種伺服器的安裝與配置。第14章~第17章主要介紹Apache、NginxWeb伺服器的配置搭建與最佳化,以及反向代理伺服器的具體使用。第18章~第19章主要講述Linux環境下Shell腳本的語法講解和使用第20章~第21章主要講解Linux集群和自動化管理工具Ansible。
目錄
第1章Linux系統概要1
1.1Linux系統發展史1
1.1.1Linux簡單介紹1
1.1.2Linux起源2
1.1.3Torvalds的Linux開發4
1.2Linux的各個發展領域4
1.2.1伺服器領域的發展4
1.2.2桌面領域的發展4
1.2.3嵌入式領域的發展5
1.2.4雲計算/大數據領域的發展5
1.3Linux重要發行版本介紹5
1.3.1Linux發行版本介紹5
1.3.2Linux重要發行版本5
第2章Linux系統基礎7
2.1搭建CentOS作業系統7
2.1.1CentOS鏡像下載7
2.1.2VMware虛擬機安裝CentOS67
2.1.3CentOS7系統安裝8
2.23種網路模式8
2.2.1橋接模式8
2.2.2NAT模式9
2.2.3僅主機模式(Host-Only)9
2.3配置系統IP位址10
2.3.1CentOS6配置IP位址10
2.3.2CentOS7配置IP位址11
2.3.3CentOS7更改網卡名為eth012
2.4SecureCRT功能配置及遠程連線Linux14
2.4.1SecureCRT介紹14
2.4.2遠程連線Linux伺服器14
2.4.3遠程連線Linux故障排查15
2.4.4配置Windows客戶端和Linux伺服器端上傳/下載檔案17
2.4.5配置SecureCRTSSH客戶端功能18
2.5Linux系統運行級別19
2.6Linux系統單用戶模式20
2.6.1CentOS6單用戶模式20
2.6.2CentOS7單用戶模式20
2.7Linux系統救援模式21
2.7.1CentOS6救援模式21
2.7.2CentOS7救援模式21
2.8Linux系統服務22
2.8.1CentOS6系統服務22
2.8.2CentOS7系統服務24
2.9CentOS7Systemd——unit25
2.9.1Systemd管理服務的機制特點25
2.9.2unit相關的一些命令使用26
2.10CentOS7Systemd——target27
2.11CentOS7target關聯unit28
2.12網路問題排查28
第3章Linux常用命令34
3.1ls命令34
3.2pwd命令35
3.3touch命令36
3.4cd命令37
3.5rm命令37
3.6cp命令38
3.7mv命令39
3.8alias命令40
3.9時間屬性41
3.10Linux系統快捷鍵41
3.11檔案屬性43
3.11.1Linux檔案屬性描述43
3.11.2檔案屬性inode43
3.11.3檔案屬性block44
3.12Linux通配符44
3.13redlink命令44
3.14rename命令45
3.15basename和dirname命令45
3.15.1basename命令45
3.15.2dirname命令46
3.16file命令46
3.17md5sum命令46
3.18壓縮與解壓縮工具47
3.18.1gzip命令47
3.18.2bzip2命令48
3.18.3zip和unzip命令48
3.18.4xz命令49
3.19tar打包工具49
3.19.1tar打包工具詳解49
3.19.2tar打包並壓縮用法49
3.20rpm命令50
3.20.1rpm安裝和卸載50
3.20.2rpm查詢功能51
3.21yum命令52
3.21.1yum工具的使用52
3.21.2搭建本地yum庫53
3.21.3yum下載rpm到本地54
3.22源碼編譯安裝54
第4章檔案和目錄管理56
4.1創建和刪除目錄56
4.2檔案查看命令58
4.3檔案或目錄許可權chmod63
4.4更改所有者和所屬組chown命令63
4.5chgrp63
4.6umask命令64
4.7隱藏特殊許可權lsattr和chattr64
4.8軟連結和硬連結67
4.9find搜尋命令69
4.10vim工具的使用73
第5章用戶和組管理83
5.1用戶配置檔案和密碼配置檔案83
5.2添加用戶命令useradd和刪除用戶命令userdel89
5.3添加用戶組groupadd和刪除用戶組groupdel90
5.4usermod命令91
5.5passwd和mkpasswd命令93
5.6su命令94
5.7sudo命令94
5.8限制root用戶遠程登錄94
第6章Linux磁碟97
6.1df命令97
6.2du命令99
6.3磁碟分區100
6.4磁碟格式化106
6.5磁碟掛載108
6.6swap分區110
6.7萬能磁碟分區工具Parted112
第7章Linux平台日常運維管理116
7.1查看系統負載w命令116
7.2vmstat命令118
7.3動態查看負載top命令120
7.4sar命令122
7.5free命令125
7.6查看進程ps命令126
7.7查看連線埠netstat命令128
7.8網路抓包工具130
7.9Selinux135
7.10netfilter防火牆136
7.11Linux系統日誌152
7.12xargs和exec命令155
7.13crond命令158
第8章Rsync伺服器160
8.1Rsync服務介紹160
8.2Rsync特性介紹161
8.3Rsync企業工作場景161
8.4Rsync本地模式162
8.5Rsync使用遠程ssh163
8.6Rsyncdaemon服務模式164
8.7Rsync服務模式故障及常見問題169
8.8Rsync服務優缺點170
8.9配置Rsync+inotify實現實時同步170
8.10Sersync介紹及實時複製178
第9章NFS伺服器184
9.1NFS伺服器實戰環境搭建184
9.2開始安裝NFS作業系統185
9.3啟動NFS相關知識187
9.4NFS多種伺服器進程189
9.5NFS伺服器端配置189
9.6NFS客戶端配置191
9.7NFS常見故障排除方法193
9.8NFS伺服器端許可權參數194
9.9NFS服務的重要檔案195
9.10NFS客戶端掛載195
9.11NFS核心最佳化196
9.12NFS優缺點197
第10章Visio繪製拓撲圖198
10.1Visio軟體概述和基本使用198
10.2Visio繪製網路拓撲圖案例201
第11章SSH服務204
11.1OpenSSH服務介紹204
11.2SSH服務版本介紹205
11.3telnet遠程連線協定205
11.4SSH認證類型208
11.5SSH客戶端與伺服器端209
11.6SSH服務最佳實踐217
11.7dropbear219
11.8OpenSSL223
第12章Samba伺服器230
12.1Samba伺服器概述230
12.2Samba伺服器配置檔案詳解233
12.3配置匿名訪問Samba伺服器236
第13章FTP伺服器238
13.1FTP伺服器介紹238
13.2vsftp配置239
13.3pureftp部署及最佳化255
第14章LAMP服務259
14.1LAMP基礎259
14.2yum安裝LAMP265
14.3PHP278
14.4MySQL資料庫282
14.5MariaDBSQL語句290
14.6LAMP組合的編譯安裝295
第15章NginxWeb服務309
15.1Nginx特性及基本概念309
15.2NginxWeb服務配置315
15.3Nginx配置防盜鏈328
15.4php-fpm模式下的fastcgi相關配置328
第16章Squid服務329
16.1Squid介紹329
16.2Squid正向代理330
16.3Squid反向代理334
第17章Tomcat服務338
17.1Java技術體系詳解338
17.2Tomcat的安裝與配置及組件詳解344
第18章Shell編程入門357
18.1學好Shell必備基礎357
18.2Shell腳本介紹358
18.3Shell在運維工作中的作用及地位358
18.4Shell語言種類介紹359
18.5Shell特性359
18.6Shell變數362
18.7系統和用戶的環境變數配置檔案363
18.8cut命令365
18.9sort命令366
18.10wc命令367
18.11uniq和tee命令367
18.12tr和split命令368
18.13Shell中連線符369
18.14grep過濾370
18.15sed命令373
18.16awk命令377
18.17curl命令378
18.18paste命令382
18.19dos2unix383
18.20Linux系統環境變數384
18.21date命令385
第19章Shell編程進階389
19.1Shell條件表達式389
19.2Shell字元串表達式391
19.3if條件語句392
19.4Shell函式介紹及實踐394
19.5Shell的case語句397
19.6while循環398
19.7for循環398
第20章LinuxCluster399
20.1Linux集群系統基礎399
20.2lvs集群基礎400
20.3lvs類型和調度方法402
20.4lvsnat和dr類型403
20.5ipvs集群服務和用法409
20.6lvs使用進階412
20.7Keepalived簡介428
20.8Keepalived配置438
第21章Ansible自動化運維467
21.1Ansible套用概述467
21.2Ansible特性468
21.3Ansible使用468
21.4Ansible常用模組471
21.5PlayBooks組件476
21.6roles485
21.7Jinja2486