關(guān)于我們
書單推薦
新書推薦
|
跟阿銘學(xué)Linux(第4版)
本書是一本入門級(jí)的Linux學(xué)習(xí)教材,內(nèi)容由淺入深,案例豐富,通俗易懂!書中分兩部分:前面為基礎(chǔ)知識(shí),涉及安裝、登錄、文件和目錄管理、磁盤管理、Vim、壓縮和解壓縮等;后面為進(jìn)階知識(shí),包括LAMP、LNMP、NFS、FTP、Linux集群和Zabbix監(jiān)控等。與上一版相比,這版不僅將虛擬機(jī)軟件由VMware 10改為VMware 14,基于CentOS 8進(jìn)行了全面修訂,刪掉了LAMP環(huán)境搭建與配置,還增加了Docker等內(nèi)容。
1.本書語言通俗簡練、易上手、實(shí)踐性很強(qiáng),特別適合初學(xué)者。可謂是學(xué)習(xí)Linux第一本書,甚至是小白和女友也能輕松學(xué)會(huì)的Linux入門書。
2.早在2011年,作者就已經(jīng)在網(wǎng)上發(fā)表過《跟阿銘學(xué)Linux》的電子版教程,并于2013年出了第2版,市場(chǎng)反響很好,我們基于第2版電子版出版了《跟阿銘學(xué)Linux》一書。
3.第4版基于CentOS8改版,新增了Docker技術(shù),購買圖書即加入阿銘Linux圈子,共享人脈和資源
好書就像好酒,歷久彌香。本書在傳承精華的基礎(chǔ)上及時(shí)將系統(tǒng)更新到CentOS 8, 更是
加了容器技術(shù)Docker。好書,你值得擁有。
--蕭田國 DAOPS基金會(huì)中國區(qū)董事,高效運(yùn)維社區(qū)發(fā)起人
學(xué)習(xí)Linux有兩個(gè)主要條件:不懈的努力和一本通俗易懂的書。本書正是為初學(xué)者打造
的、從0到1學(xué)習(xí)Linux的好幫手,并且書中的很多案例可以即刻用于實(shí)際工作。作者阿銘擁有十多年的Linux運(yùn)維經(jīng)驗(yàn),既是運(yùn)維領(lǐng)城的老兵,也是Linux專家,值得信賴。打開本書,跟隨作者開啟你的Linux之旅吧!
-趙舜東 新運(yùn)維社區(qū)發(fā)起人
Linux是在服務(wù)器領(lǐng)域使用非常廣泛的操作系統(tǒng),每個(gè)IT運(yùn)維人員都無法繞開它。作名經(jīng)驗(yàn)豐富,將Linux方方面面的知識(shí)點(diǎn)總結(jié)、提煉為本書。本書是一本非常棒的Linux指南,細(xì)讀之后,必將受益良多!
一王津銀 優(yōu)維科技CEO
李世明,擁有12年運(yùn)維經(jīng)驗(yàn),是前騰訊高級(jí)運(yùn)維工程師,現(xiàn)任猿課在線教育運(yùn)維方向教研總監(jiān)、移動(dòng)安全領(lǐng)域頭部創(chuàng)業(yè)公司運(yùn)維總監(jiān)。
目 錄
第1 章 學(xué)習(xí)之初 1
1.1 Linux 是什么 1
1.1.1 Linux 的由來 1
1.1.2 Linux 怎么讀 2
1.1.3 常見Linux 發(fā)行版 2
1.1.4 我們要學(xué)習(xí)哪個(gè)Linux 發(fā)行版 2
1.2 Linux 系統(tǒng)管理員要養(yǎng)成的習(xí)慣 3
1.2.1 要習(xí)慣使用命令行 3
1.2.2 操作要嚴(yán)謹(jǐn) 4
1.2.3 安全不可忽視 4
1.3 學(xué)習(xí)建議 5
1.3.1 穩(wěn)中求進(jìn) 5
1.3.2 善于總結(jié)文檔 5
1.3.3 復(fù)習(xí)很關(guān)鍵 5
1.3.4 舉一反三 6
1.4 課后習(xí)題 6
第2 章 安裝CentOS 7
2.1 安裝虛擬機(jī) 7
2.1.1 下載虛擬機(jī)軟件 7
2.1.2 安裝虛擬機(jī) 8
2.1.3 新建一個(gè)虛擬機(jī) 10
2.2 安裝Linux 操作系統(tǒng) 14
2.2.1 下載CentOS 鏡像文件 14
2.2.2 設(shè)置虛擬光驅(qū) 14
2.2.3 安裝CentOS 16
23 第一次親密接觸 22
2.3.1 初次使用命令行登錄 22
2.3.2 設(shè)置網(wǎng)絡(luò) 22
2.3.3 學(xué)會(huì)使用快捷鍵 26
2.3.4 學(xué)會(huì)查詢幫助文檔——man命令 26
2.3.5 Linux 系統(tǒng)目錄結(jié)構(gòu) 27
2.3.6 如何正確關(guān)機(jī)、重啟 30
2.3.7 忘記root 密碼怎么辦 30
2.3.8 學(xué)會(huì)使用救援模式 32
2.4 課后習(xí)題 35
第3 章 遠(yuǎn)程登錄Linux 系統(tǒng) 36
3.1 安裝PuTTY 36
3.1.1 下載PuTTY 36
3.1.2 安裝 37
3.2 遠(yuǎn)程登錄 37
3.2.1 使用密碼直接登錄 37
3.2.2 使用密鑰認(rèn)證 38
3.3 兩臺(tái)Linux 相互登錄 41
3.3.1 克隆CentOS 41
3 3.2 使用密碼登錄 42
3.3.3 使用密鑰登錄 43
3.4 課后習(xí)題 45
第4 章 Linux 文件和目錄管理 46
4.1 絕對(duì)路徑和相對(duì)路徑 46
4.1.1 命令cd 46
4.1.2 命令mkdir 47
4.1.3 命令rmdir 48
4.1.4 命令rm 48
42 環(huán)境變量PATH 49
4.2.1 命令cp 50
4.2.2 命令mv 51
4.3 幾個(gè)與文檔相關(guān)的命令 52
4.3.1 命令cat 52
4.3.2 命令tac 53
4.3.3 命令more 53
4.3.4 命令less 53
4.3.5 命令head 53
4.3.6 命令tail 54
4.4 文件的所有者和所屬組 54
4.5 Linux 文件屬性 55
4.6 更改文件的權(quán)限 56
4.6.1 命令chgrp 56
4.6.2 命令chown 57
4.6.3 命令chmod 57
4.6.4 命令umask 59
4.6.5 修改文件的特殊屬性 60
4.7 在Linux 下搜索文件 62
4.7.1 用which 命令查找可執(zhí)行文件的絕對(duì)路徑 62
4.7.2 用whereis 命令查找文件 62
4.7.3 用locate 命令查找文件 63
4.7.4 使用find 搜索文件 63
4.8 Linux 文件系統(tǒng)簡介 65
4.9 Linux 文件類型 66
4.9.1 常見文件類型 66
4.9.2 Linux 文件后綴名 66
4.9.3 Linux 的鏈接文件 66
4.10 課后習(xí)題 68
第5 章 Linux 系統(tǒng)用戶與用戶組管理 70
5.1 認(rèn)識(shí) /etc/passwd 和 /etc/shadow 70
5.1.1 解說/etc/passwd 71
5.1.2 解說/etc/shadow 71
5.2 用戶和用戶組管理 72
5.2.1 新增組的命令groupadd 72
5.2.2 刪除組的命令groupdel 73
5.2.3 增加用戶的命令useradd 73
5.2.4 刪除用戶的命令userdel 74
5.3 用戶密碼管理 74
5.3.1 命令passwd 74
5.3.2 命令mkpasswd 75
5.4 用戶身份切換 75
5.4.1 命令su 76
5.4.2 命令sudo 76
5.4.3 不允許root 遠(yuǎn)程登錄Linux 78
5.5 課后習(xí)題 78
第6 章 Linux 磁盤管理 80
6.1 查看磁盤或者目錄的容量 80
6.1.1 命令df 80
6.1.2 命令du 81
6.2 磁盤的分區(qū)和格式化 83
6.2.1 增加虛擬磁盤 83
6.2.2 命令fdisk 84
6.3 格式化磁盤分區(qū) 92
6.3.1 命令mke2fs、mkfsext2、mkfsext3、mkfsext4 和mkfsxfs 92
6.3.2 命令e2label 95
6.4 掛載/卸載磁盤 95
6.4.1 命令mount 95
6.4.2 /etc/fstab 配置文件 97
6.4.3 命令blkid 99
6.4.4 命令umount 100
6.5 建立一個(gè)swap 文件增加虛擬內(nèi)存 101
6.6 課后習(xí)題 101
第7 章 文本編輯工具Vim 103
7.1 Vim 的3 種常用模式 103
7.1.1 一般模式 103
7.1.2 編輯模式 104
7.1.3 命令模式 105
7.2 Vim 實(shí)踐 105
7.3 課后習(xí)題 107
第8 章 文檔的壓縮與打包 108
8.1 gzip 壓縮工具 108
8.2 bzip2 壓縮工具 109
8.3 xz 壓縮工具 109
8.4 tar 打包工具 110
8.4.1 打包的同時(shí)使用gzip 壓縮 112
8.4.2 打包的同時(shí)使用bzip2 壓縮 112
8.5 使用zip 壓縮 113
8.6 zcat、bzcat 命令的使用 114
8.7 課后習(xí)題 114
第9 章 安裝RPM 包或源碼包 115
9.1 RPM 工具 115
9.1.1 安裝RPM 包 116
9.1.2 升級(jí)RPM 包 116
9.1.3 卸載RPM 包 116
9.1.4 查詢一個(gè)包是否已安裝 117
9.1.5 得到一個(gè)已安裝的RPM包的相關(guān)信息 117
9.1.6 列出一個(gè)RPM 包的安裝文件 118
9.1.7 列出某個(gè)文件屬于哪個(gè)RPM包 119
9.2 yum 工具 119
9.2.1 列出所有可用的RPM 包 119
9.2.2 搜索RPM 包 120
9.2.3 安裝RPM 包 120
9.2.4 卸載RPM 包 121
9.2.5 升級(jí)RPM 包 122
9.2.6 更改yum 倉庫為國內(nèi)鏡像站 122
9.2.7 利用yum 工具下載RPM 包 123
9.3 安裝源碼包 124
9.3.1 下載源碼包 124
9.3.2 解壓源碼包 124
9.3.3 配置相關(guān)的選項(xiàng)并生成Makefile 125
9.3.4 進(jìn)行編譯 126
9.3.5 安裝 126
9.4 課后習(xí)題 127
第10 章 shell 基礎(chǔ)知識(shí) 128
10.1 什么是shell 128
10.1.1 記錄命令歷史 128
10.1.2 命令和文件名補(bǔ)全 129
10.1.3 別名 129
10.1.4 通配符 130
10.1.5 輸入/輸出重定向 130
10.1.6 管道符 130
10.1.7 作業(yè)控制 131
10.2 變量 132
10.2.1 命令env 132
10.2.2 命令set 134
10.3 系統(tǒng)環(huán)境變量與個(gè)人環(huán)境變量的配置文件 137
10.4 Linux shell 中的特殊符號(hào) 137
10.41 *代表零個(gè)或多個(gè)任意字符 137
10.4.2 只代表一個(gè)任意的字符 137
10.4.3 注釋符號(hào)# 138
10.4.4 脫義字符\ 138
10.4.5 再說管道符| 138
10.4.6 特殊符號(hào)$ 142
10.4.7 特殊符號(hào); 142
10.4.8 特殊符號(hào)~ 143
10.4.9 特殊符號(hào)& 143
10.4.10 重定向符號(hào)>、>>、2>和2>> 143
10.4.11 中括號(hào)[] 143
10.4.12 特殊符號(hào)&&和|| 144
10.5 課后習(xí)題 144
第11 章 正則表達(dá)式 146
11.1 grep/egrep 工具的使用 146
11.1.1 過濾出帶有某個(gè)關(guān)鍵詞的行,并輸出行號(hào) 147
11.1.2 過濾出不帶有某個(gè)關(guān)鍵詞的行,并輸出行號(hào) 147
11.1.3 過濾出所有包含數(shù)字的行 148
11.1.4 過濾出所有不包含數(shù)字的行 148
11.1.5 過濾掉所有以#開頭的行 148
11.1.6 過濾出任意一個(gè)字符和重復(fù)字符 149
11.1.7 指定要過濾出的字符出現(xiàn)次數(shù) 150
11.1.8 過濾出一個(gè)或多個(gè)指定的字符 150
11.1.9 過濾出零個(gè)或一個(gè)指定的字符 151
11.1.10 過濾出字符串1 或者字符串2 151
11.1.11 egrep 中()的應(yīng)用 151
11.2 sed 工具的使用 152
11.2.1 打印某行 152
11.2.2 打印包含某個(gè)字符串的行 152
11.2.3 刪除某些行 153
11.2.4 替換字符或者字符串 153
11.2.5 調(diào)換兩個(gè)字符串的位置 154
11.2.6 直接修改文件的內(nèi)容 155
11.2.7 sed 練習(xí)題 155
11.3 awk 工具的使用 156
11.3.1 截取文檔中的某個(gè)段 157
11.3.2 匹配字符或者字符串 157
11.3.3 條件操作符 158
11.3.4 awk 的內(nèi)置變量 159
11.3.5 awk 中的數(shù)學(xué)運(yùn)算 160
11.3.6 awk 練習(xí)題 161
11,4 課后習(xí)題 162
第12 章 shell 腳本 163
12.1 什么是shell 腳本 163
12.1.1 shell 腳本的創(chuàng)建和執(zhí)行 164
12.1.2 命令date 165
12.2 shell 腳本中的變量 165
12.2.1 數(shù)學(xué)運(yùn)算 166
12.2.2 和用戶交互 166
12.2.3 shell 腳本預(yù)設(shè)變量 167
12.3 shell 腳本中的邏輯判斷 168
12.3.1 不帶else 168
12.3.2 帶有else 168
12.3.3 帶有elif 169
12.3.4 和文件相關(guān)的判斷 170
12.3.5 case 邏輯判斷 171
12.4 shell 腳本中的循環(huán) 172
12.4.1 for 循環(huán) 172
12.4.2 while 循環(huán) 173
12.5 shell 腳本中的函數(shù) 173
12.6 shell 腳本中的中斷和繼續(xù) 174
12.6.1 break 174
12.6.2 continue 175
12.6.3 exit 175
12.7 shell 腳本練習(xí)題 176
12.8 課后習(xí)題 178
第13 章 Linux 系統(tǒng)管理技巧 179
13.1 監(jiān)控系統(tǒng)的狀態(tài) 179
13.1.1 使用w 命令查看當(dāng)前系統(tǒng)的負(fù)載 179
13.1.2 用vmstat 命令監(jiān)控系統(tǒng)的狀態(tài) 182
13.1.3 用top 命令顯示進(jìn)程所占的系統(tǒng)資源 183
13.1.4 用sar 命令監(jiān)控系統(tǒng)狀態(tài) 184
13.1.5 用nload 命令查看網(wǎng)卡流量 186
13.1.6 用free 命令查看內(nèi)存使用狀況 186
13.1.7 用ps 命令查看系統(tǒng)進(jìn)程 187
13.1.8 用netstat 命令查看網(wǎng)絡(luò)狀況 189
13.2 抓包工具 191
13.2.1 tcpdump 工具 191
13.2.2 wireshark 工具 192
13.3 Linux 網(wǎng)絡(luò)相關(guān) 192
13.3.1 用ifconfig 命令查看網(wǎng)卡IP 193
13.3.2 給一個(gè)網(wǎng)卡設(shè)定多個(gè)IP 193
13.3.3 查看網(wǎng)卡連接狀態(tài) 194
13.3.4 更改主機(jī)名 195
13.3.5 設(shè)置DNS 195
13.4 Linux 的防火墻 196
13.4.1 SELinux 196
13.4.2 netfilter 197
13.4.3 firewalld 204
13.5 Linux 系統(tǒng)的任務(wù)計(jì)劃 210
13.5.1 命令crontab 210
13.5.2 cron 練習(xí)題 211
13.6 Linux 系統(tǒng)服務(wù)管理 212
13.6.1 chkconfig 服務(wù)管理工具 212
13.6.2 systemd 服務(wù)管理 213
13.7 Linux 下的數(shù)據(jù)備份工具rsync 216
13.7.1 rsync 的命令格式 217
13.7.2 rsync 常用選項(xiàng) 217
13.7.3 rsync 應(yīng)用實(shí)例 222
13.8 Linux 系統(tǒng)日志 227
13.8.1 /var/log/messages 228
13.8.2 dmesg 229
13.8.3 安全日志 229
13.9 xargs 與exec 230
13.9.1 xargs 應(yīng)用 230
13.9.2 exec 應(yīng)用 230
13.10 screen 工具介紹 231
13.10.1 使用nohup 231
13.10.2 screen 工具的使用 231
13.11 課后習(xí)題 232
第14 章 LNMP 環(huán)境配置 234
14.1 安裝MySQL 234
14.1.1 下載軟件包 234
14.1.2 初始化 235
14.1.3 MySQL 配置文件 236
14.2 安裝PHP 236
14.3 安裝Nginx 239
14.4 Nginx 配置 242
14.4.1 默認(rèn)虛擬主機(jī) 242
14.4.2 用戶認(rèn)證 244
14.4.3 域名或鏈接重定向 245
14.4.4 Nginx 的訪問日志 247
14.4.5 配置靜態(tài)文件不記錄日志并添加過期時(shí)間 248
14.4.6 Nginx 防盜鏈 250
14.4.7 訪問控制 251
14.4.8 Nignx 解析PHP 253
14.4.9 Nginx 代理 253
14.4.10 Nignx 配置SSL 257
14.5 php-fpm 配置 261
14.5.1 php-fpm 的pool 261
14.5.2 php-fpm 的慢執(zhí)行日志 262
14.5.3 php-fpm 定義open_basedir 263
14.5.4 php-fpm 進(jìn)程管理 263
14.6 課后習(xí)題 264
第15 章 常用MySQL 操作 265
15.1 更改MySQL 數(shù)據(jù)庫root 的密碼 265
15.2 連接數(shù)據(jù)庫 268
15.3 MySQL 基本操作的常用命令 268
15.3.1 查詢當(dāng)前庫 268
15.3.2 查詢某個(gè)庫的表 269
15.3.3 查看某個(gè)表的全部字段 270
15.3.4 查看當(dāng)前是哪個(gè)用戶 271
15.3.5 查看當(dāng)前所使用的數(shù)據(jù)庫 271
15.3.6 創(chuàng)建一個(gè)新庫 272
15.3.7 創(chuàng)建一個(gè)新表 272
15.3.8 查看當(dāng)前數(shù)據(jù)庫的版本 272
15.3.9 查看MySQL 的當(dāng)前狀態(tài) 272
15.3.10 查看MySQL 的參數(shù) 273
15.3.11 修改MySQL 的參數(shù) 273
15.3.12 查看當(dāng)前MySQL 服務(wù)器的隊(duì)列 273
15.3.13 創(chuàng)建一個(gè)普通用戶并授權(quán) 274
15.4 常用的SQL 語句 274
15.4.1 查詢語句 274
15.4.2 插入一行 275
15.4.3 更改表的某一行 275
15.4.4 清空某個(gè)表的數(shù)據(jù) 275
15.4.5 刪除表 276
15.4.6 刪除數(shù)據(jù)庫 276
15.5 MySQL 數(shù)據(jù)庫的備份與恢復(fù) 276
15.5.1 MySQL 備份 276
15.5.2 MySQL 的恢復(fù) 276
15.6 課后習(xí)題 276
第16 章 NFS 服務(wù)配置 278
16.1 服務(wù)端配置NFS 278
16.2 客戶端掛載NFS 279
16.3 命令exportfs 280
16.4 課后習(xí)題 281
第17 章 配置FTP 服務(wù) 282
17.1 使用vsftpd 搭建FTP 服務(wù) 282
17.1.1 安裝vsftpd 282
17.1.2 建立賬號(hào) 282
17.1.3 創(chuàng)建和用戶對(duì)應(yīng)的配置文件 283
17.1.4 修改全局配置文件/etc/vsftpd/vsftpdconf 284
17.2 安裝配置pure-ftpd 284
17.2.1 安裝pure-ftpd 284
17.2.2 配置pure-ftpd 285
17.2.3 建立賬號(hào) 285
17.2.4 測(cè)試pure-ftpd 286
17.3 課后習(xí)題 286
第18 章 配置Tomcat 287
18.1 安裝Tomcat 287
18.1.1 安裝JDK 287
18.1.2 安裝Tomcat 288
18.2 配置Tomcat 290
18.2.1 配置Tomcat 服務(wù)的訪問端口 290
18.2.2 Tomca 的虛擬主機(jī) 290
18.3 測(cè)試Tomcat 解析JSP 292
18.4 Tomcat 日志 293
18.5 Tomcat 連接MySQL 293
第19 章 MySQL Replication 配置 296
19.1 配置MySQL 服務(wù) 296
19.2 配置Replication 297
19.2.1 設(shè)置master(主) 298
19.2.2 設(shè)置slave(從) 299
19.3 測(cè)試主從 300
19.4 課后習(xí)題 301
第20 章 Linux 集群 302
20.1 搭建高可用集群 302
20.1.1 keepalived 的工作原理 303
20.1.2 安裝keepalived 303
20.1.3 keepalived+Nginx 實(shí)現(xiàn) Web 高可用 303
20.2 搭建負(fù)載均衡集群 309
20.2.1 介紹LVS 309
20.2.2 LVS 的調(diào)度算法 313
20.2.3 使用keepalived+LVS DR 模式實(shí)現(xiàn)負(fù)載均衡 315
20.2.4 使用Nginx 實(shí)現(xiàn)負(fù)載均衡 317
20.3 課后習(xí)題 319
第21 章 配置監(jiān)控服務(wù)器 320
21.1 Zabbix 監(jiān)控介紹 320
21.1.1 Zabbix 組件 321
21.1.2 Zabbix 架構(gòu) 321
21.2 Zabbix 監(jiān)控安裝和部署 322
21.2.1 用yum 安裝Zabbix 322
21.2.2 配置MySQL 323
21.2.3 配置Web 界面 324
21.2.4 部署Zabbix 客戶端 327
21.3 Zabbix 配置和使用 328
21.3.1 忘記Admin 密碼 328
21.3.2 添加主機(jī) 328
21.3.3 添加模板 330
21.3.4 主機(jī)鏈接模板 332
21.3.5 圖形中的中文亂碼 332
21.3.6 添加自定義監(jiān)控項(xiàng)目 333
21.3.7 配置告警 335
第22 章 Docker 容器 338
22.1 在CentOS 8 上安裝Docker 338
22.1.1 下載Docker 338
22.1.2 在CentOS 8 上安裝 Docker 339
22.2 Docker 鏡像 340
22.3 容器 342
22.4 創(chuàng)建鏡像 345
22.4.1 通過容器創(chuàng)建鏡像 345
22.4.2 使用模板創(chuàng)建鏡像 345
22.4.3 使用Dockerfile 創(chuàng)建鏡像 346
22.4.4 Dockerfile 實(shí)踐 349
22.5 Docker 私人倉庫 350
22.5.1 部署harbor 前的準(zhǔn)備工作 351
22.5.2 部署harbor 351
22.5.3 使用harbor 352
你還可能感興趣
我要評(píng)論
|