Ubuntu Linux 系統管理實戰

Ubuntu Linux 系統管理實戰

《Ubuntu Linux 系統管理實戰》是2018年清華大學出版社出版的圖書,作者是張春曉。

作者介紹

張春曉,計算機軟體與理論碩士,長期從事UNIX及Linux系統維護達15年之久,對Shell編程有深入的研究。作者熱衷於UNIX的嚴謹與簡潔,又痴迷於Linux的自由與開放,整日與UNIX及Linux為伴,從中獲益匪淺。

圖書目錄

第一篇 Ubuntu入門

第1章 了解Ubuntu 3

1.1 什麼是Linux 3

1.2 Linux發行版 5

1.2.1 Debian 6

1.2.2 Ubuntu 6

1.2.3 Arch Linux 7

1.2.4 Fedora 8

1.2.5 OpenSUSE 8

1.2.6 CentOS 9

1.2.7 Red Hat Enterprise Linux 10

1.3 Ubuntu概述 10

1.3.1 什麼是Ubuntu 10

1.3.2 Ubuntu的版本 11

1.3.3 Ubuntu的特點 12

1.3.4 如何獲得Ubuntu 13

1.4 GNU GPL和POSIX介紹 14

1.4.1 什麼是GNU GPL 14

1.4.2 GNU GPL發展歷史 14

1.4.3 如何正確理解GNU GPL 15

1.4.4 了解POSIX標準 15

1.5 學習Ubuntu的方法 15

第2章 安裝Ubuntu 17

2.1 準備安裝Ubuntu 17

2.1.1 獲得安裝介質 17

2.1.2 Ubuntu的硬體要求 19

2.1.3 Ubuntu的安裝方式 20

2.2 虛擬機軟體 20

2.2.1 常見虛擬機軟體 20

2.2.2 選擇虛擬機軟體 21

2.2.3 安裝Oracle VM VirtualBox 21

2.3 安裝Ubuntu的方式 26

2.3.1 下載ISO鏡像檔案 26

2.3.2 創建虛擬機 26

2.3.3 安裝Ubuntu過程 29

2.4 通過網路安裝Ubuntu 35

2.4.1 下載網路安裝器 35

2.4.2 通過網路安裝Ubuntu步驟 35

2.5 將Ubuntu安裝到隨身碟中 41

2.5.1 Rufus工具 42

2.5.2 製作LiveUSB Ubuntu系統 42

2.6 安裝過程中的常見問題 44

2.6.1 選擇32位還是64位的Ubuntu 44

2.6.2 應該選擇哪種語言 45

2.6.3 Ubuntu中的磁碟分區與Windows中的磁碟分區 45

第3章 桌面環境 46

3.1 常見的桌面環境 46

3.1.1 KDE 46

3.1.2 GNOME 48

3.1.3 Xfce 50

3.1.4 Unity 51

3.2 使用Unity 52

3.2.1 選單欄 52

3.2.2 啟動器 54

3.2.3 Dash 55

3.2.4 工作區 56

3.2.5 管理視窗 58

3.2.6 檔案管理器 59

3.2.7 搜尋檔案和資料夾 61

3.2.8 定製桌面 63

3.3 使用GNOME 65

3.3.1 桌面布局 65

3.3.2 活動按鈕 66

3.3.3 工作區 66

3.3.4 浮動面板 67

3.3.5 顯示應用程式 68

3.3.6 鎖定、關閉或者重啟電腦 69

第4章 檔案系統基礎知識 70

4.1 檔案系統的層次結構 70

4.1.1 樹形層次結構 70

4.1.2 路徑名 72

4.1.3 Linux目錄結構 74

4.2 檔案類型 75

4.2.1 普通檔案 75

4.2.2 目錄檔案 78

4.2.3 字元設備檔案 79

4.2.4 塊設備檔案 80

4.2.5 管道 81

4.2.6 套接字 84

4.2.7 檔案連結 84

4.3 檔案許可權 87

4.3.1 檔案許可權概述 88

4.3.2 顯示檔案許可權 89

4.3.3 修改檔案許可權 91

4.3.4 更改檔案所有權 94

4.3.5 檔案特殊許可權 95

第5章 檔案和目錄管理 98

5.1 創建檔案 98

5.1.1 使用touch命令創建檔案 99

5.1.2 使用重定向創建檔案 99

5.1.3 使用vi命令創建檔案 101

5.2 顯示檔案列表 103

5.2.1 使用ls命令顯示檔案列表 103

5.2.2 顯示隱藏檔案 106

5.2.3 遞歸顯示目錄內容 107

5.3 顯示檔案內容 108

5.3.1 拼接檔案內容:cat命令 108

5.3.2 分屏顯示:more命令 111

5.3.3 前後翻頁分屏顯示:less命令 113

5.3.4 查看前幾行內容:head命令 113

5.3.5 查看最後幾行內容:tail命令 114

5.4 檔案的常用操作 116

5.4.1 複製檔案 116

5.4.2 移動檔案 118

5.4.3 刪除檔案 119

5.4.4 比較檔案 120

5.4.5 重命名檔案 122

5.5 搜尋檔案 122

5.5.1 快速搜尋檔案:locate命令 122

5.5.2 按類型搜尋:whereis命令 125

5.5.3 搜尋二進制檔案:which命令 125

5.5.4 全功能搜尋:find命令 126

5.6 文本內容篩選 127

5.6.1 使用grep命令檢索文本內容 128

5.6.2 篩選其他命令的輸出結果 129

5.6.3 在grep命令中使用正則表達式 130

5.7 文本排序 132

5.7.1 使用sort命令文本排序 133

5.7.2 合併有序檔案 134

5.8 檔案的壓縮和解壓 135

5.8.1 壓縮檔案 135

5.8.2 解壓檔案 138

5.9 目錄管理 139

5.9.1 顯示當前工作目錄 139

5.9.2 改變目錄 139

5.9.3 創建目錄 140

5.9.4 移動目錄 141

5.9.5 複製目錄 141

5.9.6 刪除目錄 141

第6章 用戶和許可權管理 142

6.1 用戶和用戶組基礎 142

6.1.1 用戶和用戶標識號 142

6.1.2 用戶組和組標識號 143

6.1.3 /etc/passwd檔案 144

6.1.4 /etc/shadow檔案 145

6.1.5 /etc/group檔案 146

6.2 用戶管理 147

6.2.1 添加用戶:useradd命令 147

6.2.2 添加用戶:adduser命令 148

6.2.3 修改用戶:usermod命令 150

6.2.4 刪除用戶:userdel命令 151

6.2.5 修改用戶密碼:passwd命令 152

6.2.6 顯示用戶信息:id命令 153

6.2.7 用戶間切換:su命令 154

6.2.8 受限的特權:sudo命令 154

6.3 用戶組管理 157

6.3.1 添加用戶組:groupadd命令 157

6.3.2 添加用戶組:addgroup命令 157

6.3.3 修改用戶組:groupmod命令 157

6.3.4 刪除用戶組:groupdel命令 158

6.4 許可權管理 158

6.4.1 許可權概述 158

6.4.2 改變檔案所有者:chown命令 160

6.4.3 改變檔案所屬組:chgrp命令 161

6.4.4 設定許可權掩碼:umask命令 162

6.4.5 修改檔案訪問許可權:chmod命令 163

6.4.6 修改檔案ACL:setfacl命令 165

6.4.7 查詢檔案ACL:getfacl命令 166

第二篇 進階篇

第7章 系統啟動和關閉 169

7.1 Ubuntu啟動過程 169

7.1.1 BIOS階段 169

7.1.2 引導程式階段 170

7.1.3 核心階段 173

7.1.4 進入系統 174

7.2 引導相關組件 174

7.2.1 主引導記錄 174

7.2.2 GRUB啟動程式 175

7.3 登錄 181

7.3.1 login進程 181

7.3.2 選擇Shell 183

7.3.3 用戶初始化檔案 185

7.4 關閉系統 187

7.4.1 shutdown命令 187

7.4.2 init命令 188

7.4.3 其他命令 188

第8章 服務和進程管理 189

8.1 初始化程式概述 189

8.1.1 初始化程式 190

8.1.2 systemd 196

8.1.3 systemd基本配置檔案 197

8.2 systemd單元 198

8.2.1 單元類型 198

8.2.2 列出單元 200

8.2.3 查看單元狀態 203

8.2.4 單元依賴 205

8.2.5 單元配置檔案 207

8.3 systemd單元管理 209

8.3.1 啟動服務 210

8.3.2 停止服務 210

8.3.3 重啟服務 210

8.3.4 重新載入服務配置檔案 211

8.3.5 查看服務狀態 211

8.3.6 配置服務自動啟動 212

8.3.7 禁止服務自動啟動 213

8.3.8 重新載入單元配置檔案 214

8.3.9 顯示服務屬性 214

8.3.10 設定服務屬性 216

8.4 常用systemd命令 216

8.4.1 systemd-analyze命令分析系統啟動時的性能 216

8.4.2 hostnamectl命令 219

8.4.3 localectl命令 220

8.4.4 timedatectl命令 220

8.4.5 loginctl命令 221

8.5 目標 222

8.5.1 理解目標 222

8.5.2 切換目標 225

8.5.3 默認目標 226

8.6 日誌管理 226

8.6.1 讀取日誌 226

8.6.2 過濾輸出 227

8.6.3 日誌大小限制 229

8.6.4 手動清理日誌 230

8.7 進程管理 231

8.7.1 查詢進程及其狀態 231

8.7.2 監控進程及系統資源 233

8.7.3 終止進程 238

8.7.4 調整進程優先權 239

第9章 軟體包管理 241

9.1 軟體包管理概述 241

9.1.1 軟體包管理基本概念 241

9.1.2 軟體包管理工具 243

9.2 apt-get命令 245

9.2.1 搜尋軟體包 245

9.2.2 apt-get命令基本語法 247

9.2.3 安裝軟體包 248

9.2.4 重新安裝軟體包 249

9.2.5 刪除軟體包 250

9.2.6 更新和升級軟體包 251

9.3 apt命令 253

9.3.1 apt命令基本語法 253

9.3.2 搜尋軟體包 253

9.3.3 安裝軟體包 254

9.3.4 刪除軟體包 254

9.3.5 更新和升級軟體包 255

9.4 aptitude命令 255

9.4.1 aptitude命令基本語法 255

9.4.2 搜尋軟體包 257

9.4.3 安裝軟體包 259

9.4.4 刪除軟體包 259

9.4.5 更新和升級軟體包 260

9.4.6 圖形化界面 260

9.5 synaptic軟體管理工具 261

9.5.1 安裝軟體包 261

9.5.2 刪除軟體包 264

9.5.3 更新和升級軟體包 265

第10章 磁碟和檔案系統管理 266

10.1 磁碟管理基礎 266

10.1.1 磁頭 266

10.1.2 磁軌 267

10.1.3 柱面 267

10.1.4 扇區 267

10.1.5 磁碟分區 268

10.2 檔案系統基礎知識 268

10.2.1 常見檔案系統 269

10.2.2 塊 271

10.2.3 引導塊 272

10.2.4 超級塊 272

10.2.5 索引節點 272

10.3 創建檔案系統 273

10.3.1 創建分區 273

10.3.2 mkfs命令 278

10.3.3 創建ext2/ext3/ext4檔案系統 281

10.3.4 創建NTFS檔案系統 282

10.3.5 創建FAT檔案系統 282

10.3.6 調整檔案系統 284

10.4 掛載與卸載檔案系統 285

10.4.1 掛載點 285

10.4.2 mount和findmnt命令 286

10.4.3 /etc/fstab檔案 289

10.4.4 手工掛載檔案系統 290

10.4.5 自動掛載檔案系統 291

10.4.6 卸載檔案系統 291

10.5 檢查與修復檔案系統 292

10.5.1 fsck和e2fsck命令 293

10.5.2 互動式檢查與修復檔案系統 294

10.5.3 自動檢查與修復檔案系統 294

10.5.4 恢復嚴重受損的超級塊 295

10.6 磁碟陣列 296

10.6.1 磁碟陣列概述 296

10.6.2 磁碟陣列級別 296

10.6.3 創建磁碟陣列 299

10.7 邏輯卷管理 305

10.7.1 邏輯卷管理基本概念 305

10.7.2 安裝LVM 306

10.7.3 創建物理卷 306

10.7.4 創建卷組 309

10.7.5 創建邏輯卷 310

10.7.6 擴展邏輯卷 311

10.7.7 壓縮邏輯卷 312

第11章 網路管理 314

11.1 網路接口 314

11.1.1 查看網路接口 314

11.1.2 網路接口命名 319

11.1.3 配置網路接口IP位址 319

11.1.4 域名解析 323

11.2 常用網路配置命令 324

11.2.1 ifconfig命令 324

11.2.2 ip命令 326

11.2.3 route命令 333

11.2.4 netstat命令 335

11.2.5 nslookup命令 338

11.2.6 ping命令 339

11.3 防火牆 340

11.3.1 ufw簡介 340

11.3.2 ufw配置 340

11.3.3 ufw與套用系統的整合 342

11.3.4 ufw日誌管理 344

第三篇 精通Linux

第12章 Shell編程 347

12.1 Shell編程基礎 347

12.1.1 Shell 347

12.1.2 Shell腳本 348

12.1.3 Shell腳本的執行方法 349

12.1.4 位置參數 350

12.1.5 內部命令 351

12.2 變數 353

12.2.1 變數分類 353

12.2.2 變數聲明 354

12.2.3 變數賦值 355

12.2.4 變數的引用和替換 355

12.2.5 變數的間接引用 356

12.2.6 特殊變數替換 357

12.2.7 單引號和雙引號 358

12.2.8 命令替換 359

12.3 算術運算 359

12.3.1 let命令 360

12.3.2 expr命令 360

12.3.3 $(())表達式 361

12.3.4 $[]表達式 361

12.4 數組 361

12.4.1 定義數組 362

12.4.2 獲取數組長度 363

12.4.3 遍歷數組 363

12.4.4 刪除元素 365

12.4.5 數組切片 365

12.4.6 數組替換 366

12.5 條件測試 366

12.5.1 條件測試語法 367

12.5.2 檔案測試 367

12.5.3 字元串測試 370

12.5.4 整數值測試 371

12.5.5 邏輯運算符 372

12.6 條件語句 372

12.6.1 if語句 373

12.6.2 case語句 375

12.7 循環語句 377

12.7.1 for語句 377

12.7.2 while語句 379

12.7.3 until語句 381

12.7.4 select語句 382

12.7.5 嵌套循環 384

12.7.6 continue和break語句 384

12.8 信號的捕獲與處理 387

12.8.1 信號 387

12.8.2 捕獲信號 388

第13章 網路服務管理 391

13.1 SSH服務 391

13.1.1 SSH協定 391

13.1.2 配置SSH服務 392

13.1.3 管理SSH服務 395

13.1.4 使用賬號密碼登錄SSH服務 396

13.1.5 使用密鑰對登錄SSH服務 397

13.2 FTP檔案傳輸服務 402

13.2.1 FTP檔案傳輸協定 402

13.2.2 安裝vsftpd 402

13.2.3 vsftpd配置檔案 403

13.2.4 管理FTP用戶:匿名用戶、本地用戶、虛擬用戶 406

13.2.5 演示:使用FTP傳輸檔案 411

13.3 DNS域名服務 416

13.3.1 域名、IP位址、域名伺服器 417

13.3.2 BIND以及組件 418

13.3.3 BIND配置檔案 418

13.3.4 配置區域 424

13.3.5 資源記錄 425

13.3.6 演示:DNS伺服器配置實例 427

13.4 NFS服務 430

13.4.1 安裝NFS服務 431

13.4.2 已分享檔案系統 431

13.4.3 掛載NFS檔案系統 433

13.4.4 NFS檔案系統許可權 434

13.5 其他網路服務管理 437

13.5.1 Samba資源共享 437

13.5.2 Apache全球資訊網服務 441

13.5.3 MySQL資料庫服務 444

第14章 虛擬化和雲計算 447

14.1 虛擬化基礎知識 447

14.1.1 虛擬化技術 447

14.1.2 常用虛擬化方案 447

14.2 KVM 448

14.2.1 KVM及其相關組件 448

14.2.2 安裝KVM 448

14.2.3 創建虛擬機 449

14.2.4 管理虛擬機 451

14.3 Docker 452

14.3.1 Docker以及基礎知識 452

14.3.2 安裝Docker 453

14.3.3 使用鏡像 454

14.3.4 管理容器 456

14.3.5 使用網路:外部訪問容器 459

14.3.6 使用網路:容器互聯 461

14.4 LXC和LXD 461

14.4.1 LXC和LXD簡介 462

14.4.2 安裝LXD 462

14.4.3 創建容器 463

14.4.4 列出容器 464

14.4.5 查看容器 466

14.4.6 管理容器 466

14.4.7 與容器互動 467

14.4.8 管理鏡像 469

14.5 OpenStack 471

14.5.1 OpenStack的核心組件 471

14.5.2 通過DevStack部署OpenStack 473

14.5.3 儀錶盤 474

14.5.4 實例管理 478

14.5.5 鏡像管理 486

14.5.6 卷管理 488

14.5.7 網路管理:網路拓撲 489

14.5.8 網路管理:網路的修改和刪除 490

14.5.9 網路管理:路由 494

14.5.10 網路管理:安全組 496

第15章 系統和網路安全 499

15.1 用戶管理安全 499

15.1.1 管理好root用戶 499

15.1.2 用戶資料安全 500

15.1.3 密碼策略 501

15.2 防火牆 503

15.2.1 ufw 503

15.2.2 IP偽裝 504

15.2.3 日誌 504

15.3 AppArmor 505

15.3.1 安裝AppArmor 505

15.3.2 使用AppArmor 505

15.3.3 AppArmor配置檔案 507

15.4 數字證書 509

15.4.1 獲取數字證書 509

15.4.2 生成密鑰 509

15.4.3 生成證書籤署請求 510

15.4.4 安裝證書 511

15.5 弱點掃描 511

15.5.1 安裝OpenVAS 512

15.5.2 OpenVAS儀錶盤 514

15.5.3 掃描任務管理 514

15.5.4 掃描報表 516

15.6 入侵檢測 518

15.6.1 安裝Snort 518

15.6.2 Snort配置檔案 519

15.6.3 Snort檢測規則 519

15.6.4 測試Snort 521

相關詞條

相關搜尋

熱門詞條

聯絡我們