本書根據(jù)著者多年Linux系統(tǒng)實(shí)戰(zhàn)經(jīng)驗(yàn),以實(shí)用高效為原則,從走進(jìn)Linux的世界、熟練使用Linux、玩轉(zhuǎn)Shell腳本編程、掌握企業(yè)主流Web架構(gòu)、部署常見的企業(yè)服務(wù)5個(gè)方面徐徐展開,詳細(xì)講解了Linux 操作系統(tǒng)的安裝、命令、權(quán)限和軟件管理,數(shù)據(jù)庫(kù),防火墻,文本處理,Shell 腳本編程,Web 服務(wù)器架構(gòu)以及常見的企業(yè)服務(wù)等內(nèi)容,全書共23章,每一章都包含大量企業(yè)實(shí)戰(zhàn)演示案例。 本書內(nèi)容源于企業(yè)實(shí)際工作需要,側(cè)重于快速掌握Linux系統(tǒng)操作、提高系統(tǒng)操作效率以及解決在企業(yè)實(shí)戰(zhàn)中常遇到的疑難問題,本書配套搭建了專用網(wǎng)站,提供視頻課程、日常答疑、工具與Linux命令速查平臺(tái)、在線實(shí)驗(yàn)平臺(tái)等資源和服務(wù),可供Linux開發(fā)工程師、行業(yè)從業(yè)人員和對(duì)編程感興趣的讀者參考,也可作為高等院校相關(guān)專業(yè)教材。
孫亞洲,曾就職于中國(guó)科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心,擁有6年多的Linux運(yùn)維工作經(jīng)驗(yàn),目前在中科天齊公司擔(dān)任Linux運(yùn)維主管。
目 錄
第一部分 走進(jìn) Linux 世界
第 1 章 Linux 的來(lái)龍去脈··············································································.1
1.1 Linux 簡(jiǎn)介 ·······················································································1
1.2 Linux 內(nèi)核的誕生史與版本號(hào)·······························································3
1.3 “GNU is Not UNIX”··········································································5
1.4 Linux 操作系統(tǒng)的結(jié)構(gòu)········································································8
1.5 常見的 Linux 發(fā)行版 ··········································································8
第 2 章 VMware Workstation 虛擬機(jī) ·····························································.11
2.1 虛擬機(jī)簡(jiǎn)介···················································································.11
2.2 虛擬機(jī)的運(yùn)行架構(gòu)··········································································.11
2.3 安裝 VMware Workstation 虛擬機(jī)······················································.13
2.4 創(chuàng)建一個(gè)新的虛擬機(jī)·······································································.15
2.5 虛擬機(jī)的快照、克隆和遷移功能························································.19
第 3 章 初窺門徑之 Linux 操作系統(tǒng)的安裝部署················································.23
3.1 引言····························································································.23
3.2 安裝 CentOS Linux 8 操作系統(tǒng)··························································.23
3.3 CentOS Linux 8 之后我們將何去何從··················································.28
第 4 章 略有小成之 Linux 操作系統(tǒng)初體驗(yàn)······················································.32
4.1 引言····························································································.32
4.2 理解 Shell ·····················································································.32
4.3 命令提示符與語(yǔ)法格式····································································.33
4.4 內(nèi)置命令和外部命令以及命令幫助·····················································.34
4.5 目錄結(jié)構(gòu)詳解················································································.36
4.6 磁盤分區(qū)概念················································································.37
4.7 絕對(duì)路徑與相對(duì)路徑·······································································.39
第二部分 熟練使用 Linux
第 5 章 漸入佳境之務(wù)必掌握的 Linux 命令······················································.40
5.1 系統(tǒng)基本管理、顯示的相關(guān)命令························································.40
5.2 查看文件內(nèi)容相關(guān)命令····································································.53
5.3 創(chuàng)建、移動(dòng)文件目錄相關(guān)命令···························································.58
5.4 復(fù)制、刪除文件目錄相關(guān)命令···························································.62
5.5 文件搜索相關(guān)命令··········································································.63
5.6 打包、壓縮、解壓相關(guān)命令······························································.65
第 6 章 實(shí)戰(zhàn)神器之 Vim 編輯器····································································.70
6.1 Vim 編輯器簡(jiǎn)介·············································································.70
6.2 3 種工作模式·················································································.70
6.3 一些常用的基本操作·······································································.71
6.4 可視化(Visual)模式 ·····································································.74
第 7 章 融會(huì)貫通之用戶和用戶組管理 ···························································.78
7.1 引言····························································································.78
7.2 用戶和用戶組················································································.78
7.3 用戶的添加、刪除與管理命令···························································.83
7.4 用戶組的添加、刪除與管理命令························································.87
第 8 章 登堂入室之文件和文件夾的權(quán)限管理 ··················································.90
8.1 引言····························································································.90
8.2 文件/目錄的權(quán)限與歸屬 ···································································.91
8.3 權(quán)限位·························································································.91
8.4 修改屬主屬組相關(guān)命令····································································.93
8.5 修改文件/目錄權(quán)限相關(guān)命令·····························································.93
第 9 章 駕輕就熟之 Linux 操作系統(tǒng)的軟件管理················································.96
9.1 引言····························································································.96
9.2 Linux 軟件包分類 ···········································································.96
9.3 詳解 RPM 包的使用方式 ··································································.98
9.4 Yum 軟件包管理器 ·········································································103
9.5 DNF 軟件包管理器 ·········································································114
第 10 章 Linux 防火墻的那點(diǎn)事····································································119
10.1 防火墻簡(jiǎn)介 ·················································································119
10.2 Linux 防火墻的工作原理 ································································120
10.3 Linux 防火墻的四表五鏈 ································································121
10.4 Iptables 管理工具 ·········································································125
10.5 Firewalld 管理工具 ·······································································132
第三部分 玩轉(zhuǎn) Shell 編程
第 11 章 Linux 文本處理“三劍客”······························································145
11.1 引言···························································································145
11.2 正則表達(dá)式 ·················································································145
11.3 grep —— 查找和篩選····································································147
11.4 sed —— 取行和替換 ·····································································149
11.5 awk —— 取列和數(shù)據(jù)分析 ······························································153
第 12 章 Linux Shell 腳本編程零基礎(chǔ)閃電上手 ················································158
12.1 引言···························································································158
12.2 初識(shí) Shell 腳本·············································································158
12.3 Shell 變量與作用域 ·······································································161
12.4 Shell 命令行參數(shù)與特殊變量 ···························································170
12.5 Shell 字符串·················································································174
12.6 Shell 數(shù)組····················································································180
12.7 Shell 數(shù)學(xué)計(jì)算··············································································184
12.8 Shell 常用命令··············································································190
12.9 Shell 流程控制··············································································192
第 13 章 定時(shí)任務(wù)·····················································································221
13.1 定時(shí)任務(wù)簡(jiǎn)介 ··············································································221
13.2 用戶級(jí)別的定時(shí)任務(wù)(命令) ·························································221
13.3 系統(tǒng)級(jí)別的定時(shí)任務(wù)(配置文件) ···················································225
第 14 章 Web 服務(wù)器架構(gòu)系列之 Nginx ·························································228
14.1 引言···························································································228
14.2 理論知識(shí)準(zhǔn)備 ··············································································230
14.3 Nginx 的兩種部署方式 ···································································233
14.4 Nginx 配置文件的整體結(jié)構(gòu) ·····························································240
14.5 Nginx 配置文件的每行含義 ·····························································242
14.6 Nginx 配置文件的虛擬主機(jī) ·····························································245
14.7 Nginx 配置文件的 location 語(yǔ)法規(guī)則··················································249
14.8 Nginx 反向代理 ············································································255
14.9 Nginx 正向代理 ············································································262
14.10 Nginx 負(fù)載均衡···········································································265
14.11 Nginx 平滑升級(jí)(熱部署)····························································272
第 15 章 Web 服務(wù)器架構(gòu)系列之 Apache ·······················································279
15.1 引言···························································································279
15.2 HTTP 請(qǐng)求過程與報(bào)文結(jié)構(gòu) ·····························································280
15.3 Apache 的兩種安裝方式 ·································································284
15.4 Apache 的 3 種工作模型 ·································································290
15.5 Apache 配置文件解析 ····································································295
15.6 Apache 虛擬主機(jī)···········································································299
第 16 章 Web 服務(wù)器架構(gòu)系列之 PHP···························································304
16.1 PHP 簡(jiǎn)介 ····················································································304
16.2 Module 模式(Apache) ·································································305
16.3 FastCGI 模式(Nginx)··································································311
16.4 PHP 相關(guān)配置文件(FastCGI)························································316
第 17 章 Web 服務(wù)器架構(gòu)系列之 Tomcat ·······················································322
17.1 Tomcat 簡(jiǎn)介·················································································322
17.2 Tomcat 架構(gòu)剖析···········································································322
17.3 Tomcat 的二進(jìn)制包安裝方式 ···························································325
17.4 目錄結(jié)構(gòu)和主配置文件 ··································································328
第 18 章 數(shù)據(jù)庫(kù)系列之 MySQL 與 MariaDB····················································332
18.1 數(shù)據(jù)庫(kù)的世界 ··············································································332
18.2 數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)與類型 ··································································335
18.3 MySQL 和 MariaDB 的兩種安裝方式·················································337
18.4 主配置文件 ·················································································348
18.5 數(shù)據(jù)庫(kù)的存儲(chǔ)引擎與數(shù)據(jù)類型 ·························································350
18.6 SQL 語(yǔ)句命令分類和語(yǔ)法規(guī)則·························································354
18.7 SQL 語(yǔ)句對(duì)數(shù)據(jù)庫(kù)的基本操作·························································356
18.8 SQL 語(yǔ)句對(duì)表的基本操作·······························································361
18.9 SQL 語(yǔ)句對(duì)數(shù)據(jù)的基本操作····························································373
18.10 數(shù)據(jù)庫(kù)的用戶管理·······································································386
18.11 數(shù)據(jù)庫(kù)的備份與恢復(fù)····································································396
第 19 章 數(shù)據(jù)庫(kù)系列之 Redis ······································································404
19.1 Redis 簡(jiǎn)介···················································································404
19.2 Redis 的兩種部署方式····································································406
19.3 Redis 的基本操作命令····································································411
第 20 章 使用 LNMP 架構(gòu)搭建 DzzOffice 網(wǎng)盤 ················································422
20.1 LNMP 架構(gòu)簡(jiǎn)介 ···········································································422
20.2 搭建過程 ····················································································423
第五部分 部署常見的企業(yè)服務(wù)
第 21 章 常見的企業(yè)服務(wù)系列之 FTP ····························································431
21.1 FTP 工作原理···············································································431
21.2 FTP 服務(wù)的安裝部署 ·····································································433
第 22 章 常見的企業(yè)服務(wù)系列之 DNS····························································439
22.1 DNS 工作原理··············································································439
22.2 DNS 服務(wù)的安裝部署·····································································443
第 23 章 常見的企業(yè)服務(wù)系列之 DHCP··························································449
23.1 DHCP 工作原理············································································449
23.2 DHCP 服務(wù)的安裝部署···································································452