本書從信息技術(shù)的應用實踐出發(fā),闡述Ubuntu(Linux)操作系統(tǒng)的基礎使用方法以及服務器相關(guān)配置的應用原理與實踐,內(nèi)容包括Ubuntu操作系統(tǒng)的安裝與基本使用方法、用戶與組管理、目錄與文件管理、資源管理、系統(tǒng)管理、Shell編程、部署Ubuntu服務器、配置文件服務器和網(wǎng)絡服務器,并將安全相關(guān)內(nèi)容貫穿其中。本書采用了行業(yè)應用比較前沿的Ubuntu 18.04版本為基礎環(huán)境,緊密跟蹤行業(yè)需求和發(fā)展現(xiàn)狀,以業(yè)內(nèi)的典型實踐來設計和開展相關(guān)教學與實踐,培養(yǎng)讀者的扎實理論基礎和動手能力。
本書內(nèi)容豐富,理論概念清晰,實驗內(nèi)容系統(tǒng)全面,理論聯(lián)系實際,便于初學者快速入門,可作為高等學校計算機、云計算等相關(guān)專業(yè)的教材,也可作為從事網(wǎng)絡部署和運維相關(guān)工作的技術(shù)人員的參考書。
1.本書凝結(jié)了曙光瑞翼多年的產(chǎn)學研經(jīng)驗,能夠滿足校企融合教學的需求。
2.本書旨在介紹云計算中操作系統(tǒng)的基礎知識,為即將學習和從事云計算技術(shù)的讀者奠定基礎。
3.本書采用大量的典型應用,讓讀者在生活常見的應用中理解云計算技術(shù)。
許桂秋,北京中科特瑞科技有限公司運營總監(jiān)
主要研究方向為專注于大數(shù)據(jù)、人工智能技術(shù)領域的產(chǎn)教融合研究,負責機器學習、計算機視覺、人工智能導論、深度學習原理與TensorFlow實踐、樣本數(shù)據(jù)處理、自然語言處理授課任務。已出版專著:《大數(shù)據(jù)導論》、《Python編程基礎與應用》、《NoSQL數(shù)據(jù)庫原理與應用》、《數(shù)據(jù)挖掘與機器學習》等9本系列教材。
第 一部分 Ubuntu基礎知識
項目1 Ubuntu操作系統(tǒng)的安裝與基本使用方法1
任務1.1 熟悉Ubuntu的桌面環(huán)境1
1.1.1 Ubuntu桌面環(huán)境2
1.1.2 VNC與遠程桌面3
1.1.3 Ubuntu桌面版操作系統(tǒng)的安裝4
1.1.4 熟悉桌面環(huán)境的基本操作8
1.1.5 實現(xiàn)桌面?zhèn)性化設置12
1.1.6 Ubuntu軟件安裝和更新軟件包15
1.1.7 使用遠程桌面17
任務1.2 Ubuntu操作系統(tǒng)的基本網(wǎng)絡配置19
1.2.1 網(wǎng)絡配置20
1.2.2 防火墻20
1.2.3 配置主機名21
1.2.4 配置IP地址21
1.2.5 配置防火墻23
1.2.6 使用PuTTY連接Ubuntu24
任務1.3 使用Ubuntu操作系統(tǒng)進行日常辦公25
1.3.1 Ubuntu桌面應用25
1.3.2 LibreOffice概述25
1.3.3 使用Web瀏覽器26
1.3.4 收發(fā)電子郵件28
1.3.5 播放多媒體28
1.3.6 使用LibreOffice辦公套件30
任務1.4 文本編輯器32
1.4.1 Vim編輯器33
1.4.2 終端用戶界面34
1.4.3 使用Vim編輯配置文件35
1.4.4 使用Nano編輯配置文件35
1.4.5 解決文本模式下的中文顯示和輸入問題36
項目小結(jié)38
課后練習38
項目2 用戶與組管理39
任務2.1 創(chuàng)建和管理賬戶39
2.1.1 Linux用戶賬戶40
2.1.2 Ubuntu的超級用戶權(quán)限40
2.1.3 用戶賬戶配置文件41
2.1.4 使用圖形用戶界面工具創(chuàng)建和管理用戶賬戶42
2.1.5 使用命令行工具創(chuàng)建和管理用戶賬戶45
2.1.6 sudo配置47
2.1.7 在Ubuntu操作系統(tǒng)中啟用root賬戶登錄48
2.1.8 多用戶登錄與用戶切換49
任務2.2 創(chuàng)建和管理用戶組49
2.2.1 Linux組賬戶及其類型50
2.2.2 組賬戶配置文件50
2.2.3 使用“用戶和組”工具管理組賬戶51
2.2.4 使用命令行工具創(chuàng)建和管理組賬戶51
項目小結(jié)53
課后練習53
項目3 目錄與文件管理54
任務3.1 目錄操作54
3.1.1 Linux的目錄結(jié)構(gòu)55
3.1.2 Linux的路徑56
3.1.3 目錄與文件的命名規(guī)范57
3.1.4 Linux目錄配置標準58
3.1.5 使用文件管理器進行目錄操作60
3.1.6 使用命令行工具進行目錄操作63
任務3.2 文件操作65
3.2.1 Linux文件結(jié)構(gòu)65
3.2.2 Linux文件類型65
3.2.3 使用文件管理器進行文件操作67
3.2.4 使用命令行工具進行文件操作68
3.2.5 使用命令行工具處理文本文件內(nèi)容70
3.2.6 使用sed命令分析處理文本文件內(nèi)容71
3.2.7 使用awk命令分析處理文本文件內(nèi)容73
任務3.3 目錄和文件權(quán)限管理74
3.3.1 目錄和文件權(quán)限75
3.3.2 使用文件管理器管理文件和文件夾訪問權(quán)限76
3.3.3 使用命令行工具變更文件所有者和所屬組77
3.3.4 使用命令行工具設置文件訪問權(quán)限78
3.3.5 設置默認的文件訪問權(quán)限79
3.3.6 設置特殊權(quán)限80
項目小結(jié)82
課后練習82
項目4 資源管理83
任務4.1 磁盤分區(qū)管理83
4.1.1 磁盤分區(qū)概述84
4.1.2 磁盤數(shù)據(jù)組織85
4.1.3 Linux磁盤設備命名86
4.1.4 Linux磁盤分區(qū)87
4.1.5 磁盤分區(qū)規(guī)劃88
4.1.6 磁盤分區(qū)工具89
4.1.7 使用cfdisk進行分區(qū)管理90
任務4.2 文件系統(tǒng)管理93
4.2.1 常見的Linux文件系統(tǒng)93
4.2.2 文件系統(tǒng)常用命令95
4.2.3 使用mkfs創(chuàng)建文件系統(tǒng)102
4.2.4 使用命令行工具掛載文件系統(tǒng)103
4.2.5 使用quota命令進行磁盤配額管理104
任務4.3 掛載和使用外部存儲設備111
4.3.1 設備文件111
4.3.2 掛載和使用光盤113
4.3.3 制作和使用光盤映象114
4.3.4 掛載和使用USB設備115
4.3.5 外部設備自動掛載117
任務4.4 邏輯卷管理117
4.4.1 LVM基礎118
4.4.2 LVM的安裝與配置119
4.4.3 物理卷的創(chuàng)建與管理120
4.4.4 卷組的創(chuàng)建與管理120
4.4.5 創(chuàng)建邏輯卷121
4.4.6 刪除邏輯卷并擴展邏輯卷122
4.4.7 縮減邏輯卷123
4.4.8 擴展卷組124
項目小結(jié)125
課后練習126
項目5 系統(tǒng)管理127
任務5.1 進程管理127
5.1.1 進程簡介128
5.1.2 進程管理129
5.1.3 crontab130
5.1.4 使用crontab設置定時任務131
任務5.2 日志管理131
5.2.1 日志介紹132
5.2.2 配置日志132
5.2.3 日志分析132
任務5.3 備份與恢復133
5.3.1 歸檔和壓縮133
5.3.2 完整備份與恢復133
任務5.4 安裝軟件包與管理工具的基本使用134
5.4.1 apt操作134
5.4.2 apt換源134
項目小結(jié)135
課后練習135
項目6 Shell編程136
任務6.1 初識Shell腳本136
6.1.1 什么是Shell腳本137
6.1.2 Shell腳本與Linux操作系統(tǒng)運維137
6.1.3 Shell腳本的構(gòu)成138
6.1.4 Shell編程的基本步驟139
6.1.5 執(zhí)行Shell腳本140
6.1.6 調(diào)試Shell腳本142
任務6.2 使用Shell變量143
6.2.1 用戶自定義變量143
6.2.2 環(huán)境變量144
6.2.3 內(nèi)部變量145
6.2.4 位置參數(shù)146
6.2.5 變量值輸出147
6.2.6 變量值讀取148
6.2.7 變量替換149
6.2.8 數(shù)組149
6.2.9 驗證位置參數(shù)150
6.2.10 編寫Shell腳本監(jiān)控磁盤空間使用情況151
任務6.3 使用表達式與運算符152
6.3.1 算術(shù)表達式與算術(shù)運算符152
6.3.2 邏輯表達式與邏輯運算符154
6.3.3 編寫Shell腳本統(tǒng)計目錄和文件數(shù)量156
6.3.4 編寫Shell腳本清理下載的大文件157
6.3.5 定時執(zhí)行Shell腳本158
任務6.4 實現(xiàn)流程控制159
6.4.1 多命令的組合執(zhí)行159
6.4.2 條件語句160
6.4.3 分支結(jié)構(gòu)161
6.4.4 循環(huán)結(jié)構(gòu)162
6.4.5 編寫腳本從用戶列表文件中批量添加用戶166
6.4.6 編寫腳本判斷一批主機的在線狀態(tài)167
任務6.5 使用函數(shù)實現(xiàn)模塊化程序設計168
6.5.1 函數(shù)的定義和調(diào)用168
6.5.2 函數(shù)的返回值169
6.5.3 在Shell腳本中使用函數(shù)171
6.5.4 編寫腳本批量檢測網(wǎng)站的可訪問性173
任務6.6 使用Shell正則表達式高效處理文本174
6.6.1 為什么要使用正則表達式175
6.6.2 正則表達式的構(gòu)成175
6.6.3 正則表達式的類型176
6.6.4 在Shell腳本中使用正則表達式178
項目小結(jié)179
課后練習179
第二部分 Ubuntu服務器的部署與應用
項目7 部署Ubuntu服務器182
任務7.1 安裝Ubuntu服務器182
7.1.1 什么是服務器182
7.1.2 Ubuntu服務器184
7.1.3 安裝Ubuntu服務器版184
7.1.4 調(diào)整網(wǎng)絡配置191
任務7.2 遠程管理Ubuntu服務器192
7.2.1 SSH概述192
7.2.2 什么是遠程桌面193
7.2.3 通過SSH遠程登錄服務器193
7.2.4 基于Web界面遠程管理Ubuntu服務器194
任務7.3 Apache的安裝與配置197
7.3.1 Apache簡介198
7.3.2 使用Yum安裝與運行軟件198
7.3.3 Apache的配置與管理198
任務7.4 MySQL的安裝與配置199
7.4.1 MySQL簡介200
7.4.2 MySQL的安裝與配置200
7.4.3 MySQL的基本使用202
7.4.4 數(shù)據(jù)庫的備份與恢復207
項目小結(jié)210
課后練習210
項目8 配置文件服務器211
任務8.1 Samba服務器的安裝與配置211
8.1.1 Samba簡介212
8.1.2 Samba的安裝與啟動215
8.1.3 Samba服務器的配置與管理217
8.1.4 Samba客戶端的配置222
任務8.2 NFS服務器的安裝與配置227
8.2.1 NFS簡介228
8.2.2 NFS的安裝和啟動229
8.2.3 NFS服務器的配置與管理230
8.2.4 NFS客戶端的安裝和管理232
任務8.3 FTP服務器的安裝與配置233
8.3.1 FTP服務器233
8.3.2 FTP服務器的安裝235
8.3.3 FTP服務器的配置文件236
8.3.4 FTP客戶端操作238
項目小結(jié)242
課后練習242
項目9 配置網(wǎng)絡服務器244
任務9.1 DNS服務器的安裝與配置244
9.1.1 DNS簡介245
9.1.2 安裝與運行BIND247
9.1.3 使用YUM安裝與運行BIND248
9.1.4 BIND服務的配置249
任務9.2 DHCP服務器的安裝與配置251
9.2.1 DHCP簡介251
9.2.2 DHCP服務器的工作過程252
9.2.3 DHCP的用途253
9.2.4 安裝DHCP254
9.2.5 使用apt安裝DHCP255
9.2.6 詳細參數(shù)配置256
任務9.3 VPN服務器的配置與管理257
9.3.1 VPN簡介257
9.3.2 VPN的特點257
9.3.3 VPN協(xié)議的分類及其特點258
任務9.4 防火墻配置258
9.4.1 防火墻介紹259
9.4.2 防火墻的分類260
9.4.3 防火墻的工作過程261
9.4.4 iptables簡介264
9.4.5 firewalld簡介266
9.4.6 iptables的使用267
9.4.7 firewalld的使用268
項目小結(jié)269
課后練習269