《UNIX/Linux系統管理技術手冊(第四版)》是2019年8月人民郵電出版社出版的圖書,作者是[美]Evi Nemeth、Garth Snyder、Trent R.Hein、Ben Whaley。
基本介紹
- 中文名:UNIX/Linux系統管理技術手冊(第四版)
- 作者:[美]Evi Nemeth、Garth Snyder、Trent R.Hein、Ben Whaley
- 出版社:人民郵電出版社
- 出版時間:2019年8月
- 頁數:965 頁
- 定價:128 元
- 開本:16 開
- 裝幀:平裝
- ISBN:9787115279002
內容簡介,圖書目錄,
內容簡介
《UNIX/Linux系統管理技術手冊(第四版)》(ULAHv4)是《Linux系統管理技術手冊》和《UNIX系統管理技術手冊》的終結版,也是Evi Nemeth的封刀之作。
《UNIX/Linux系統管理技術手冊(第四版)》延續了《Linux系統管理技術手冊(第 二版)》以及《UNIX系統管理技術手冊(第三版)》的講解風格,以當前主流的5種Linux發行版本(Red Hat ES、SUSE、Debian、Fedora Core和Ubuntu)為例,把Linux系統管理技術分為3部分分別介紹。第 一部分全面介紹了運行單機Linux系統涉及的各種管理知識朵煉嬸轎和技術,如系統引導和關機、進程控制、檔案系統管理、用戶管理、設備管理、系統備份、軟體配置以及cron和系統日誌的管理使用等。第 二部分從詳細講解TCP/IP協定基本原理開始,深入討論了網路的兩大基本套用—淚阿蘭—域名系統和路由技術,然後逐章講解Linux上的各種Internet關鍵套用,如電子郵件、NFS、檔案共享、Web託管和Internet服務,在這部分里還有專門的章節介紹網路硬體求嬸乃、網路管理與調試以及系統安全。第三部分包括了多種不容忽視的重要主題:X視窗系統、列印系統、系統維護與環境、性能分析、與Windows系統的協作、串列設備、作業系統驅動程式和核心、系統守護進程以及政策與行政管理方面的知識等。
《UNIX/Linux系統管理技術手冊(第四版)》的幾位作者是分別來自學術界、企業界以及職業培訓領域的Linux/UNIX系統管理專家,這使得本書從第 一版開始,即成為全面、深入而且頗富實用性的Linux系統管理參考書。
《UNIX/Linux系統管理技術手冊(第四版)》適合於從Linux初學者到具有豐富經驗的Linux專業技術人員使用。
圖書目錄
第 一部分 基本管理技術 1
第 1章 從何處入手 2
1.1 系統管理員的基本任務 3
1.1.1 賬號管理 3
1.1.2 增刪硬體 3
1.1.3 執行備寒放檔份 3
1.1.4 安裝和更新軟體 3
1.1.5 監視系統 4
1.1.6 故障診斷 4
1.1.7 維護本地文檔 4
1.1.8 時刻警惕系統安全 4
1.1.9 救火 4
1.2 讀者的知識背景 4
1.3 UNIX和Linux之間的摩擦 5
1.4 Linux的發行版本 7
1.5 本書使用戀櫃舟棄的示例系統 8
1.5.1 用作示例的Linux發行版本 8
1.5.2 用作示例的UNIX發行版本 9
1.6 特定於系統的管理工具 10
1.7 表示法和印刷約定 10
1.8 單位 11
1.9 手冊頁和其他在線上文檔 12
1.9.1 手冊頁的組織 12
1.9.2 man:讀取手冊頁 13
1.9.3 手冊頁的保存 14
1.9.4 GNUTexinfo 14
1.10 其他的權 威文檔 14
1.10.1 針對系統的專門指南 14
1.10.2 針對軟體包的專門文檔 15
1.10.3 書籍 15
1.10.4 RFC和其他Internet文檔 16
1.10.5 LDP 16
1.11 其他的信息資源 16
1.12 查找和安裝軟體的途徑 17
1.12.1 判斷軟體是否已經安裝 18
1.12.2 增加新軟體 18
1.12.3 從原始碼編譯軟體 20
1.13 重壓下的系統管理員 21
1.14 推薦讀物 21
1.15 習題 23
第 2章 腳本和shell 24
2.1 shell的基礎知識 25
2.1.1 編輯命令 25
2.1.2 管道和重定向 25
2.1.3 變數和引請灑遙用 27
2.1.4 常見的過濾命令 27
2.2 bash腳本編程 30
2.2.1 從命令到腳本 31
2.2.2 輸入和輸出 32
2.2.3 命令行參數和函式 33
2.2.4 變數的作用域 34
2.2.5 控制流程 35
2.2.6 循環 36
2.2.7 數組和算術運算 38
2.3 正則表達式 39
2.3.1 匹配過程 40
2.3.2 普通字元 40
2.3.3 特殊字元 40
2.3.4 正則表達式的例子 41
2.3.5 捕獲 42
2.3.6 貪心、懶惰和災難性的回溯 43
2.4 Perl編程 44
2.4.1 變數和數組 45
2.4.2 數組和字元串文字 45
2.4.3 函式調用 46
2.4.4 表達式里的類型轉換 46
2.4.5 字元串表達式和變數 46
2.4.6 哈希 46
2.4.7 引用和自動生成 48
2.4.8 Perl語言裡的正則循鑽表達式 48
2.4.9 輸入和輸出 49
2.4.10 控制流程 50
2.4.11 接受和確認輸入 51
2.4.12 Perl用作過濾器 52
2.4.13 Perl的附加模組 53
2.5 Python腳本編程 54
2.5.1 Python快速入門 54
2.5.2 對象、字元串、數、列表、字典、元組和檔案 56
2.5.3 確認輸入的例子 57
2.5.4 循環 58
2.6 腳本編程的**佳實踐 59
2.7 推薦讀物 60
Shell基礎知識和bash腳本編程 60
正則表達式 60
Perl腳本編程 60
Python腳本編程 61
2.8 習題 61
第3章 引導和關機 62
3.1 引導 62
3.1.1 恢復模式下引導進入shell 63
3.1.2 引導過程的步驟 63
3.1.3 初始化核心 63
3.1.4 配置硬體 64
3.1.5 創建核心進程 64
3.1.6 操作員干預(僅 限恢復模式) 64
3.1.7 執行啟動腳本 65
3.1.8 引導進程完成 65
3.2 引導PC 65
3.3 GRUB:全面統一的引導載入程式 66
3.3.1 核心選項 67
3.3.2 多重引導 68
3.4 引導進入單用戶模式 68
3.4.1 用GRUB引導單用戶模式 68
3.4.2 SPARC上的單用戶模式 69
3.4.3 HP-UX的單用戶模式 69
3.4.4 AIX的單用戶模式 70
3.5 啟動腳本 70
3.5.1 init及其運行級 70
3.5.2 啟動腳本概述 71
3.5.3 Red Hat啟動腳本 73
3.5.4 SUSE的啟動腳本 74
3.5.5 Ubuntu的啟動腳本和Upstart守護進程 75
3.5.6 HP-UX的啟動腳本 75
3.5.7 AIX的啟動 76
3.6 引導Solaris 77
3.6.1 Solaris的SMF 77
3.6.2 嶄新的世界:用SMF引導系統 79
3.7 重新引導和關機 79
3.7.1 shutdown:停止系統的妥善方式 79
3.7.2 halt和reboot:關閉系統的更簡單方式 80
3.8 習題 80
第4章 訪問控制和超級許可權 82
4.1 傳統的UNIX訪問控制 82
4.1.1 檔案系統的訪問控制 83
4.1.2 進程的所有權 83
4.1.3 root賬號 84
4.1.4 setuid和setgid執行方式 84
4.2 現代的訪問控制 85
4.2.1 基於角色的訪問控制 85
4.2.2 SELinux:增強安全性的Linux 86
4.2.3 POSIX能力(Linux) 86
4.2.4 PAM:可插入式身份驗證模組 87
4.2.5 Kerberos:第三方的加密驗證 87
4.2.6 訪問控制列表 87
4.3 實際中的訪問控制 87
4.3.1 選擇root的口令 88
4.3.2 登錄進入root賬號 89
4.3.3 su:替換用戶身份 89
4.3.4 sudo:受限的su 89
4.3.5 口令保險柜和口令代管 92
4.4 root之外的其他偽用戶 92
4.5 習題 93
第5章 進程控制 94
5.1 進程的組成部分 94
5.1.1 PID:進程的ID號 95
5.1.2 PPID:父PID 95
5.1.3 UID和EUID:真實的和有效的用戶ID 95
5.1.4 GID和EGID:真實的和有效的組ID 96
5.1.5 謙讓度 96
5.1.6 控制終端 96
5.2 進程的生命周期 96
5.3 信號 97
5.4 kill: 傳送信號 99
5.5 進程的狀態 100
5.6 nice和renice:影響調度優先權 101
5.7 ps:監視進程 102
5.8 用top、prstat和topas動態監視進程 105
5.9 /proc檔案系統 105
5.10 strace、truss和tusc:追蹤信號和系統調用 107
5.11 失控進程 108
5.12 推薦讀物 108
5.13 習題 109
第6章 檔案系統 110
6.1 路徑名稱 111
6.1.1 絕 對路徑和相對路徑 111
6.1.2 檔案名稱中的空白 112
6.2 掛載和卸載檔案系統 112
6.3 檔案樹的組織 114
6.4 檔案類型 116
6.4.1 普通檔案 117
6.4.2 117
6.4.3 字元設備檔案和塊設備檔案 118
6.4.4 本地域套接口 118
6.4.5 有名管道 119
6.4.6 符號連結 119
6.5 檔案屬性 119
6.5.1 許可權位 120
6.5.2 setuid和setgid位 120
6.5.3 粘附位 121
6.5.4 ls:列出和查看檔案 121
6.5.5 chmod:改變許可權 122
6.5.6 chown和chgrp:改變歸屬關係和組 123
6.5.7 umask:分配默認的許可權 124
6.5.8 Linux上的額外標誌 124
6.6 訪問控制列表 125
6.6.1 UNIX ACL簡史 126
6.6.2 ACL的實現 126
6.6.3 系統支持的ACL 127
6.6.4 POSIX的ACL 127
6.6.5 NFSv4的ACL 130
6.7 習題 134
第7章 添加新用戶 136
7.1 /etc/passwd檔案 137
7.1.1 登錄名 138
7.1.2 加密的口令 139
7.1.3 UID號 140
7.1.4 默認的GID號 141
7.1.5 GECOS欄位 141
7.1.6 主 142
7.1.7 登錄shell 142
7.2 /etc/shadow和/etc/security/passwd檔案 142
7.3 /etc/group檔案 145
7.4 添加用戶:基本步驟 146
7.4.1 編輯passwd和group檔案 146
7.4.2 設定口令 147
7.4.3 創建主並安裝啟動檔案 147
7.4.4 設定許可權和所屬關係 148
7.4.5 設定郵件主 148
7.4.6 配置角色和管理特權 148
7.4.7 收尾步驟 148
7.5 用useradd添加用戶 149
7.5.1 Ubuntu上的useradd 150
7.5.2 SUSE上的useradd 150
7.5.3 Red Hat上的useradd 151
7.5.4 Solaris上的useradd 151
7.5.5 HP-UX上的useradd 152
7.5.6 AIX的useradd 152
7.5.7 useradd舉例 154
7.6 用newusers成批添加用戶(Linux) 154
7.7 刪除用戶 155
7.8 禁止登錄 156
7.9 用系統的專門工具管理用戶 157
7.10 用PAM降低風險 157
7.11 集中管理賬號 157
7.11.1 LDAP和Active Directory 158
7.11.2 單一登錄系統 158
7.11.3 身份管理系統 158
7.12 推薦讀物 159
7.13 習題 159
第8章 存儲 161
8.1 只想加一塊硬碟! 161
8.1.1 Linux的做法 162
8.1.2 Solaris的做法 162
8.1.3 HP-UX的做法 163
8.1.4 AIX的做法 163
8.2 存儲硬體 164
8.2.1 硬碟 164
8.2.2 固態盤 165
8.3 存儲硬體接口 166
8.3.1 PATA接口 167
8.3.2 SATA接口 168
8.3.3 並行SCSI 168
8.3.4 串列SCSI 170
8.3.5 SCSI和SATA的比較 170
8.4 層層剖析:存儲上的軟體 171
8.5 硬碟的安裝和底層管理 173
8.5.1 在硬體層面上的安裝核實 173
8.5.2 磁碟設備檔案 173
8.5.3 格式化和壞塊管理 176
8.5.4 ATA安全擦除 176
8.5.5 hdparm:設定磁碟和接口參數(Linux) 177
8.5.6 使用SMART監視磁碟 179
8.6 磁碟分區 179
8.6.1 傳統的分區方式 180
8.6.2 Windows的分區 181
8.6.3 GPT:GUID分區表 182
8.6.4 Linux的分區 183
8.6.5 Solaris的分區 183
8.6.6 HP-UX的分區 183
8.7 RAID:廉價磁碟冗餘陣列 183
8.7.1 軟硬RAID對比 184
8.7.2 RAID的級別 184
8.7.3 硬碟故障恢復 186
8.7.4 RAID 5的缺點 186
8.7.5 mdadm:Linux上的軟RAID 187
8.8 邏輯卷管理 189
8.8.1 LVM的實現 190
8.8.2 Linux的邏輯卷管理 191
8.8.3 HP-UX的邏輯卷管理 194
8.8.4 AIX的邏輯卷管理 196
8.10 檔案系統 197
8.9.1 Linux檔案系統:ext家族的檔案系統 197
8.9.2 HP-UX檔案系統 198
8.9.3 AIX的JFS2檔案系統 198
8.9.4 檔案系統的術語 199
8.9.5 檔案系統的多態性 199
8.9.6 mkfs:格式化檔案系統 200
8.9.7 fsck:檢查和修復檔案系統 200
8.9.8 掛載檔案系統 201
8.9.9 設定自動掛載 201
8.9.10 掛載USB設備 203
8.9.11 啟用交換分區 204
8.10 ZFS:解決所有存儲問題 204
8.10.1 ZFS體系結構 205
8.10.2 舉例:Solaris磁碟分區 205
8.10.3 檔案系統和屬性 206
8.10.4 屬性繼承 207
8.10.5 每個用戶一個檔案系統 208
8.10.6 快照和克隆 208
8.10.7 原始卷 209
8.10.8 通過NFS、CIFS和iSCSI已分享檔案系統 209
8.10.9 存儲池管理 210
8.11 存儲區域網路 211
8.11.1 SAN網路 212
8.11.2 iSCSI:SCSI over IP 213
8.11.3 從iSCSI卷引導 214
8.11.4 iSCSI的廠商特性 214
8.12 習題 216
第9章 周期性進程 218
9.1 cron:按時間表執行命令 218
9.2 crontab檔案的格式 219
9.3 crontab管理 220
9.4 Linux及其Vixie-CRON的擴展 221
9.5 cron的常見用途 222
9.5.1 簡單的提醒功能 222
9.5.2 清理檔案系統 223
9.5.3 配置檔案的網路分布 224
9.5.4 循環日誌檔案 224
9.6 習題 224
第 10章 備份 225
10.1 備份基本原理 226
10.1.1 從中心位置執行所有的備份 226
10.1.2 給備份介質加卷標 226
10.1.3 選擇合理的備份間隔 226
10.1.4 仔細選擇檔案系統 227
10.1.5 在單一介質上做日常轉儲 227
10.1.6 異地保存介質 227
10.1.7 保護備份 228
10.1.8 備份期間限制活動 228
10.1.9 查驗介質 228
10.1.10 發掘介質的壽命 229
10.1.11 為備份而設計數據 229
10.1.12 做**壞的準備 230
10.2 備份設備和介質 230
10.2.1 光碟:CD-R/RW、DVD±R/RW、DVD-RAM和藍光 231
10.2.2 便攜和移動硬碟 231
10.2.3 磁帶概述 231
10.2.4 小型磁帶機:8mm磁帶和DDS/DAT 232
10.2.5 DLT和S-DLT 232
10.2.6 AIT和SAIT 232
10.2.7 VXA和VXA-X 233
10.2.8 LTO 233
10.2.9 自動選帶機、自動換帶機以及磁帶庫 233
10.2.10 硬碟 233
10.2.11 網際網路和雲備份服務 234
10.2.12 介質類型小結 234
10.2.13 設備選型 235
10.3 節省空間和時間與增量備份 235
10.3.1 簡單的計畫 236
10.3.2 適中的計畫 236
10.4 用dump建立備份機制 236
10.4.1 轉儲檔案系統 237
10.4.2 用restore從轉儲中恢復 239
10.4.3 恢復整個檔案系統 241
10.4.4 恢復到新硬碟上 242
10.5 為系統升級而執行轉儲和恢復 242
10.6 使用其他存檔程式 242
10.6.1 tar: 給檔案打包 242
10.6.2 dd:處理位流 243
10.6.3 ZFS的備份 244
10.7 使用同一卷磁帶上的多個檔案 244
10.8 Bacula 245
10.8.1 Bacula的模型 246
10.8.2 設定Bacula 246
10.8.3 安裝資料庫和Bacula的守護進程 247
10.8.4 配置Bacula的守護進程 247
10.8.5 公共的配置段 248
10.8.6 bacular-dir.conf:配置控制檔案 249
10.8.7 bacula-sd.conf:配置存儲守護進程 252
10.8.8 bconsole.conf:配置控制台 253
10.8.9 安裝和配置客戶端的檔案守護進程 253
10.8.10 啟動Bacula的守護進程 253
10.8.11 向存儲池添加介質 254
10.8.12 執行一次手工備份 254
10.8.13 執行一次恢復工作 254
10.8.14 給Windows客戶機做備份 257
10.8.15 監視和調試Bacula的配置 257
10.8.16 Bacula的技巧和竅門 258
10.8.17Bacula的替代工具 258
10.9 商用備份產品 259
10.9.1 ADSM/TSM 259
10.9.2 VeritasNetBackup 259
10.9.3 EMCNetWorker 260
10.9.4 其他選擇 260
10.10 推薦讀物 260
10.11 習題 260
第 11章 系統日誌與日誌檔案 262
11.1 日誌檔案的位置 263
11.1.1 不用管理的檔案 264
11.1.2 廠商特有的檔案 265
11.2 syslog:系統事件的日誌程式 266
11.2.1 syslog的體系結構 266
11.2.2 配置syslogd 267
11.2.3 配置檔案舉例 269
11.2.4 調試syslog 271
11.2.5 syslog的其他替代方案 271
11.2.6 Linux核心和引導時刻日誌 272
11.3 AIX:日誌記錄和出錯處理 273
11.3.1 AIX的syslog配置 274
11.4 logrotate: 管理日誌檔案 275
11.5 分析日誌檔案 276
11.6 日誌記錄的策略 277
11.7 習題 278
第 12章 軟體安裝和管理 280
12.1 安裝Linux和OpenSolaris 280
12.1.1 從網路引導PC 281
12.1.2 為Linux設定PXE 281
12.1.3 非PC的網路引導 282
12.1.4 Kickstart:RHEL的自動安裝程式 282
12.1.5 AutoYaST:SUSE的自動安裝工具 284
12.1.6 用Ubuntu的安裝程式自動安裝 285
12.2 安裝Solaris 286
12.2.1 使用JumpStart網路安裝 287
12.2.2 使用自動安裝程式進行網路安裝 290
12.3 安裝HP-UX 291
12.3.1 用Ignite-UX自動安裝 293
12.4 使用NIM安裝AIX 293
12.5 軟體包管理 294
12.6 Linux的高 級軟體包管理系統 295
12.6.1 rpm:管理RPM軟體包 295
12.6.2 dpkg:管理Debian的軟體包 296
12.7 Linux的高 級軟體包管理系統 297
12.7.1 軟體包的庫 298
12.7.2 RHN:Red Hat網路 299
12.7.3 APT:高 級軟體包工具 299
12.7.4 配置apt-get 300
12.7.5 /etc/apt/sources.list檔案的例子 301
12.7.6 創建本地的庫鏡像 301
12.7.7 自動執行apt-get 302
12.7.8 yum:管理RPM的發布 302
12.7.9 Zypper:SUSE的軟體包管理 303
12.8 UNIX的軟體包管理 304
12.8.1 Solaris軟體包 304
12.8.2 HP-UX軟體包 305
12.8.3 AIX的軟體管理 307
12.9 版本控制 307
12.9.1創建備份檔案 307
12.9.2 正規的版本控制系統 308
12.9.3 Subversion 309
12.9.4 Git 310
12.10 軟體的本地化和配置 313
12.10.1 本地化的組織 313
12.10.2 測試 314
12.10.3 本地編譯軟體 314
12.10.4 發布本地軟體 315
12.11 配置管理工具 315
12.11.1 cfengine:計算機免疫系統 316
12.11.2 LCFG:大規模配置系統 316
12.11.3 Template Tree 2:cfengine的幫手 316
12.11.4 DMTF/CIM:公共信息模型 317
12.12 通過NFS共享軟體 317
12.12.1 軟體包的名字空間 318
12.12.2 依賴關係的管理 318
12.12.3 封裝腳本 319
12.13 推薦讀物 319
12.14 習題 320
第 13章 驅動程式和核心 321
13.1 核心的適應性 322
13.2 驅動程式和設備檔案 322
13.2.1 設備檔案和設備號 323
13.2.2 創建設備檔案 324
13.2.3 設備的命名約定 324
13.2.4 自定義核心和可載入模組 325
13.3 配置Linux核心 325
13.3.1 調整Linux核心參數 325
13.3.2 構造Linux核心 327
13.3.3 核心沒問題就不要改它 327
13.3.4 配置核心選項 327
13.3.5 構建Linux核心的二進制檔案 328
13.3.6 添加Linux設備驅動程式 329
13.4 配置Solaris核心 330
13.4.1 Solaris核心區 330
13.4.2 用/etc/system配置核心 331
13.4.3 添加一個Solaris設備驅動程式 332
13.4.4 調試Solaris的配置 332
13.5 配置HP-UX核心 333
13.6 管理AIX核心 334
13.6.1 ODM 334
13.6.2 核心調配 335
13.7 可載入核心模組 336
13.7.1 Linux的可載入核心模組 336
13.7.2 Solaris的可載入核心模組 337
13.8 Linux udev的意義和作用 338
13.8.1 Linux sysfs:設備對外的視窗 339
13.8.2 用udevadm瀏覽設備 339
13.8.3 構造規則和固定不變的名字 340
13.9 推薦讀物 343
13.10 習題 343
第 二部分 網路管理技術 345
第 14章 TCP/IP網路 346
14.1 TCP/IP和Internet 346
14.1.1 Internet的運行管理 347
14.1.2 網路的標準和文獻 347
14.2 連網技術概述 348
14.2.1 IPv4和IPv6 349
14.2.2 分組和封裝 349
14.2.3 乙太網組幀 350
14.2.4 **大傳輸單位(MTU) 350
14.3 分組地址 351
14.3.1 硬體(MAC)地址 351
14.3.2 IP位址 352
14.3.3 主機名“地址” 352
14.3.4 連線埠 352
14.3.5 地址類型 353
14.4 IP位址詳解 353
14.4.1 IPv4地址分類 353
14.4.2 子網 354
14.4.3 計運算元網的技巧和工具 355
14.4.4 CIDR:無類域間路由 356
14.4.5 地址分配 356
14.4.6 私用地址和NAT 357
14.4.7 IPv6地址 358
14.5 路由選擇 359
14.5.1 路由表 360
14.5.2 ICMP重定向 361
14.6 ARP:地址解析協定 361
14.7 DHCP:動態主機配置協定 362
14.7.1 DHCP軟體 363
14.7.2 DHCP的工作方式 363
14.7.3 ISC的DHCP伺服器 363
14.8 安全問題 365
14.8.1 IP轉發 365
14.8.2 ICMP重定向 365
14.8.3 源路由 365
14.8.4 廣播ping和其他形式的定向廣播 365
14.8.5 IP欺騙 366
14.8.6 基於主機的防火牆 366
14.8.7 虛擬私用網路 367
14.9 PPP:點對點協定 367
14.10 基本的網路配置 368
14.10.1 分配主機名和IP位址 368
14.10.2 ifconfig:配置網路接口 369
14.10.3 網路硬體參數 371
14.10.4 route:配置靜態路由 371
14.10.5 配置DNS 373
14.11 特定於系統的網路配置 373
14.12 Linux連網 374
14.12.1 NetworkManager 374
14.12.2 Debian和Ubuntu的網路配置 375
14.12.3 SUSE的網路配置 375
14.12.4 Red Hat的網路配置 376
14.12.5 Linux的網路硬體配置選項 377
14.12.6 Linux的TCP/IP配置選項 378
14.12.7 有關安全的核心變數 380
14.12.8 Linux的NAT和包過濾 381
14.13 Solaris連網 381
14.13.1 基本網路配置 381
14.13.2 網路配置舉例 383
14.13.3 DHCP的配置 384
14.13.4 ndd:調整TCP/IP和接口 384
14.13.5 安全 385
14.13.6 防火牆和過濾機制 386
14.13.7 NAT 386
14.13.8 Solaris連網的特別之處 387
14.14 HP-UX連網 387
14.14.1 基本網路配置 387
14.14.2 網路配置舉例 388
14.14.3 DHCP的配置 389
14.14.4 動態的重新配置和調整 390
14.14.5 安全、防火牆、過濾和NAT 390
14.15 AIX連網 391
14.15.1 no:管理AIX的網路可配參數 392
14.16 推薦讀物 393
14.17 習題 394
第 15章 路由選擇 395
15.1 近觀包轉發 396
15.2 路由守護進程和路由協定 398
15.2.1 距離向量協定 398
15.2.2 鏈路狀態協定 399
15.2.3 代價度量 399
15.2.4 內部協定和外部協定 400
15.3 路由協定巡禮 400
15.3.1 RIP和RIPng:路由信息協定 400
15.3.2 OSPF:開放**短路徑優先 401
15.3.4 EIGRP:增強內部網關路由協定 401
15.3.5 IS-IS:ISO的“標準” 402
15.3.6 RDP和NDP 402
15.3.7 BGP:邊界網關協定 402
15.4 路由策略的選擇標準 402
15.5 路由守護進程 403
15.5.1 routed:過時的RIP實現 404
15.5.2 gated:第 一代的多協定路由守護進程 404
15.5.3 Quagga:主流的路由守護進程 404
15.5.4 ramd:HP-UX的多協定路由系統 405
15.5.5 XORP:計算機里的路由器 405
15.5.6 各作業系統的特性 405
15.6 思科路由器 406
15.7 推薦讀物 408
15.8 習題 409
第 16章 網路硬體 410
16.1 乙太網:連網技術中的瑞士軍刀 411
16.1.1 乙太網的工作方式 412
16.1.2 乙太網拓撲結構 412
16.1.3 無禁止雙絞線 412
16.1.4 光纖 414
16.1.5 連線和擴展乙太網 415
16.1.6 自動協商 416
16.1.7 乙太網供電 416
16.1.8 巨大幀 417
16.2 無線:流動人士的LAN 417
16.2.1 無線網路的安全 418
16.2.2 無線交換機和輕量級AP 419
16.3 DSL和CM:**後一英里 419
16.4 網路測試和調試 420
16.5 建築物布線 420
16.5.1 UTP電纜的選擇 420
16.5.2 到辦公室的連線 421
16.5.3 布線標準 421
16.6 網路設計問題 422
16.6.1 網路結構與建築物結構 422
16.6.2 擴展 422
16.6.3 擁塞 423
16.6.4 維護和建檔 423
16.7 管理問題 423
16.8 推薦的廠商 424
16.8.1 電纜和連線器 424
16.8.2 測試儀器 424
16.8.3 路由器/交換機 424
16.9 推薦讀物 424
16.10 習題 425
第 17章 DNS:域名系統 426
17.1 誰需要DNS 427
17.1.1 管理DNS 427
17.2 DNS的工作原理 428
17.2.1 資源記錄 428
17.2.2 授權 429
17.2.3 快取和效率 430
17.2.4 多重回響 430
17.3 DNS速成 430
17.3.1 向DNS添加新機器 431
17.3.2 配置DNS客戶機 433
17.4 域名伺服器 435
17.4.1 權 威與僅快取伺服器 435
17.4.2 遞歸和非遞歸伺服器 436
17.5 DNS名字空間 437
17.5.1 註冊二級域名 438
17.5.2 創建子域 438
17.6 設計DNS環境 438
17.6.1 名字空間管理 439
17.6.2 權 威伺服器 439
17.6.3 快取伺服器 440
17.6.4 硬體要求 440
17.6.5 安全 441
17.6.6 總結 441
17.7 DNS的新特性 442
17.8 DNS資料庫 443
17.8.1 區檔案中的命令 444
17.8.2 資源記錄 444
17.8.3 SOA記錄 447
17.8.4 NS記錄 448
17.8.5 A記錄 449
17.8.6 PTR記錄 449
17.8.7 MX記錄 450
17.8.8 CNAME記錄 451
17.8.9 巧用CNAME 452
17.8.10 SRV記錄 453
17.8.11 TXT記錄 454
17.8.12 IPv6資源記錄 454
17.8.13 SPF記錄 455
17.8.14 DKIM和ADSP記錄 457
17.8.15 SSHFP資源記錄 459
17.8.16 粘合記錄:區之間的連結 460
17.9 BIND軟體 461
17.9.1 判定版本 461
17.9.2 BIND的組成 463
17.9.3 配置檔案 463
17.9.4 include語句 465
17.9.5 options語句 465
17.9.6 acl語句 470
17.9.7 (TSIG)key語句 471
17.9.8 trusted-keys語句 471
17.9.9 server語句 471
17.9.10 masters語句 472
17.9.11 logging語句 472
17.9.12 statistics-channels語句 473
17.9.13 zone語句 473
17.9.14 rndc的controls語句 475
17.9.15 分離式DNS和view語句 476
17.10 BIND配置舉例 478
17.10.1 localhost區 478
17.10.2 一家小型的安全公司 479
17.10.3 ISC 481
17.11 NSD/Unbound軟體 482
17.11.1 安裝和配置NSD 483
17.11.2 運行nsd 488
17.11.3 安裝和配置Unbound 488
17.12 更新區檔案 494
17.12.1 區傳送 494
17.12.2 BIND的動態更新 495
17.13 安全問題 497
17.13.1 再談BIND訪問控制列表 498
17.13.2 開放的解析器 499
17.13.3 在監管環境下運行 499
17.13.4 使用TSIG和TKEY保障伺服器與伺服器之間通信的安全 500
17.13.5 為BIND設定TSIG 500
17.13.6 NSD里的TSIG 502
17.13.7 DNSSEC 502
17.13.8 DNSSEC策略 505
17.13.9 DNSSEC資源記錄 505
17.13.10 啟用DNSSEC 506
17.13.11 生成密鑰對 507
17.13.12 區簽名 509
17.13.13 DNSSEC信任鏈 510
17.13.14 DLV:域旁路認證 511
17.13.15 DNSSEC密鑰延期 512
17.13.16 DNSSEC工具 513
17.13.17 調試DNSSEC 515
17.14 微軟和DNS 516
17.15 測試和調試 516
17.15.1 BIND的日誌功能 516
17.15.2 NSD/Unbound的日誌功能 521
17.15.3 域名伺服器的控制程式 521
17.15.4 域名伺服器統計 523
17.15.5 用dig進行調試 524
17.15.6 殘缺授權 525
17.15.7 其他DNS檢查工具 526
17.15.8 性能問題 527
17.16 各作業系統的特定信息 527
17.16.1 Linux 528
17.16.2 Solaris 530
17.16.3 HP-UX 530
17.16.4 AIX 531
17.17 推薦讀物 532
17.17.1 郵遞列表和新聞組 532
17.17.2 書籍和其他文檔 532
17.17.3 網上資源 533
17.17.4 RFC 533
17.18 習題 534
第 18章 網路檔案系統 535
18.1 NFS概述 535
18.1.1 狀態問題 535
18.1.2 性能問題 536
18.1.3 安全 536
18.2 NFS的方法 536
18.2.1 NFS協定的版本和歷史 537
18.2.2 傳輸協定 537
18.2.3 狀態 537
18.2.4 檔案系統導出 538
18.2.5 檔案上鎖機制 538
18.2.6 安全問題 539
18.2.7 NFSv4的標識映射 540
18.2.8 root訪問與nobody賬號 541
18.2.9 NFSv4的性能考慮 541
18.2.10 磁碟配額 541
18.3 伺服器端NFS 542
18.3.1 share命令和dfstab檔案(Solaris/HP-UX) 543
18.3.2 exportfs命令和exports檔案(Linux/AIX) 544
18.3.3 在AIX上導出檔案系統 544
18.3.4 在Linux上導出檔案系統 545
18.3.5 nfsd:提供檔案服務 547
18.4 客戶端NFS 548
18.4.1 在啟動時掛載遠程檔案系統 550
18.4.2 連線埠安全限制 550
18.5 NFSv4的標識映射 551
18.6 nfsstat:轉儲NFS統計信息 551
18.7 專用NFS檔案伺服器 552
18.8 自動掛載 552
18.8.1 間接映射檔案 553
18.8.2 直接映射檔案 554
18.8.3 主控映射檔案 554
18.8.4 可執行的映射檔案 554
18.8.5 自動掛載的可見性 555
18.8.6 重複的檔案系統和自動掛載 555
18.8.7 自動的automount(除Linux之外其他系統上的NFSv3) 556
18.8.8 Linux的特定信息 556
18.9 推薦讀物 557
18.10 習題 557
第 19章 共享系統檔案 558
19.1 共享什麼 559
19.2 把檔案複製到各處 559
19.2.1 NFS的選項 559
19.2.2 “推”系統和“拉”系統 560
19.2.3 rdist:推檔案 560
19.2.4 rsync:更安全地傳輸檔案 562
19.2.5 拉檔案 564
19.3 LDAP:輕量級訪問協定 564
19.3.1 LDAP數據的結構 565
19.3.2 LDAP的特點 566
19.3.3 LDAP的文檔和規範 567
19.3.4 OpenLDAP:傳統的開源LDAP 567
19.3.5 389 Directory Server:另一種開源LDAP伺服器 568
19.3.6 用LDAP代替/etc/passwd和/etc/group 568
19.3.7 LDAP查詢 569
19.3.8 LDAP和安全 570
19.4 NIS:網路信息服務 570
19.4.1 NIS模型 571
19.4.2 理解NIS的工作方式 571
19.4.3 NIS的安全 572
19.5 確定管理信息源的優先權 573
19.5.1 nscd:快取查找的結果 574
19.6 推薦讀物 574
19.7 習題 574
第 20章 電子郵件 576
20.1 郵件系統 577
20.1.1 用戶代理 577
20.1.2 提交代理 578
20.1.3 傳輸代理 579
20.1.4 本地投遞代理 579
20.1.5 訊息庫 579
20.1.6 訪問代理 580
20.1.7 內容太多,時間太少 580
20.2 剖析郵件訊息 580
20.2.1 閱讀郵件信頭 581
20.3 SMTP協定 582
20.3.1 EHLO 583
20.3.2 SMTP出錯代碼 583
20.3.3 SMTP身份驗證 584
20.4 郵件系統的設計 585
20.4.1 使用郵件伺服器 585
20.5 郵件別名 587
20.5.1 從檔案中獲取別名 589
20.5.2 發郵件給檔案 589
20.5.3 發郵件給程式 590
20.5.4 別名舉例 590
20.5.5 散列的別名資料庫 590
20.5.6 郵遞列表和實現清單的軟體 590
20.5.7 維護郵遞列表的軟體包 591
20.6 內容掃描:垃圾郵件和惡意軟體 591
20.6.1 垃圾郵件 592
20.6.2 偽造郵件 592
20.6.3 訊息隱私 593
20.6.4 垃圾郵件過濾 593
20.6.5 何時過濾 593
20.6.6 灰名單技術/DCC 594
20.6.7 SpamAssassin 594
20.6.8 黑名單 595
20.6.9 白名單 595
20.6.10 郵件過濾庫 596
20.6.11 SPF和Sender ID 596
20.6.12 DomainKeys、DKIM和ADSP 596
20.6.13 MTA特有的反垃圾郵件功能 597
20.6.14 MailScanner 597
20.6.15 amavisd-new 597
20.6.16 測試MTA的掃描效力 600
20.7 電子郵件配置 600
20.8 sendmail 601
20.8.1 開關檔案 602
20.8.2 運行模式 603
20.8.3 郵件佇列 604
20.9 配置sendmail 604
20.9.1 m4預處理器 605
20.9.2 sendmail的配置 605
20.9.3 從.mc樣板檔案構建配置檔案 606
20.10 sendmail基本配置原語 607
20.10.1 表和資料庫 607
20.10.2 通用宏和功能 608
20.10.3 客戶端選項 612
20.10.4 配置選項 612
20.10.5 sendmail中處理垃圾郵件的功能 614
20.10.6 sendmail中的milter配置 616
20.10.7 amavisd和sendmail的連線 617
20.11 安全與sendmail 618
20.11.1 所有權 618
20.11.2 許可權 619
20.11.3 向檔案和程式更安全地發郵件 620
20.11.4 隱私選項 620
20.11.5 運行一個chroot過的sendmail(真正嚴格的要求) 621
20.11.6 拒絕服務攻擊 622
20.11.7 SASL:簡單的身份驗證和安全層 622
20.11.8 TLS:傳輸層安全 622
20.12 sendmail的性能 623
20.12.1 投遞方式 623
20.12.2 佇列分組和信封分割 623
20.12.3 佇列運行器 623
20.12.4 控制平均負載 624
20.12.5 佇列中無法投遞的訊息 624
20.12.6 核心調優 625
20.13 sendmail測試和調試 626
20.13.1 佇列監視 626
20.13.2 日誌機制 627
20.14 Exim 627
20.14.1 安裝Exim 628
20.14.2 Exim的啟動腳本 629
20.14.3 Exim的工具 630
20.14.4 Exim的配置語言 631
20.14.5 Exim的配置檔案 631
20.14.6 全局的配置選項 632
20.14.7 ACL 633
20.14.8 ACL內容掃描 636
20.14.9 身份驗證器 637
20.14.10 路由 638
20.14.11 傳輸 640
20.14.12 重試配置 641
20.14.13 重寫配置 641
20.14.14 本地掃描功能 642
20.14.15 amavisd和Exim的連線 642
20.14.16 日誌機制 642
20.14.17 調試機制 643
20.15 Postfix郵件系統 644
20.15.1 Postfix的體系結構 644
20.15.2 安全 645
20.15.3 Postfix命令和文檔 645
20.15.4 配置Postfix 646
20.15.5 虛擬域 649
20.15.6 訪問控制 651
20.15.7 反垃圾郵件和病毒 653
20.15.8 用amavisd做內容過濾 654
20.15.9 調試 656
20.16 DKIM配置 657
20.16.1 DKIM:域密鑰身份識別郵件 657
20.16.2 DKIM郵件過濾 658
20.16.3 在amavisd-new中配置DKIM 660
20.16.4 sendmail中的DKIM 660
20.16.5 Exim中的DKIM 661
20.16.6 Postfix中的DKIM 663
20.17 綜合的電子郵件解決方案 663
20.18 推薦讀物 664
20.19 習題 665
第 21章 網路管理和調試 668
21.1 網路故障的檢測 669
21.2 ping:檢查主機是否正常 670
21.3 SmokePing:ping的累計統計 671
21.4 traceroute:跟蹤IP包 672
21.5 netstat:獲得網路統計信息 674
21.5.1 檢查接口的配置信息 674
21.5.2 監視網路連線的狀態 676
21.5.3 標識正在監聽的網路服務 677
21.5.4 檢查路由表 677
21.5.5 查看各種網路協定運行的統計信息 678
21.6 檢查工作接口的活動 679
21.7 包嗅探器 680
21.7.1 tcpdump:業界標準的包嗅探器 680
21.7.2 Wireshark和TShark:增強型的tcpdump 681
21.8 ICSI Netslyzr 682
21.9 網路管理協定 683
21.10 SNMP:簡單網路管理協定 684
21.10.1 SNMP的組織結構 684
21.10.2 SNMP協定的操作 685
21.10.3 RMON:遠程監視MIB 686
21.11 NET-SNMP代理程式 686
21.12 網路管理應用程式 687
21.12.1 NET-SNMP工具 687
21.12.2 SNMP數據的採集和繪圖 688
21.12.3 Nagios:基於事件的SNMP和服務監視工具 689
21.12.4 終 極網路監測軟體包:仍在尋覓 690
21.12.5 商業管理平台 690
21.13 NetFlow:面向連線的監視 691
21.13.1 用nfdump和Nfsen監測NetFlow數據 691
21.13.2 在思科路由器上配置NetFlow 693
21.14 推薦讀物 693
21.15 習題 694
第 22章 安全 696
22.1 UNIX安全嗎? 697
22.2 安全性是如何受損害的 698
22.2.1 社交工程 698
22.2.2 軟體漏洞 698
22.2.3 配置錯誤 699
22.3 安全的技巧和思想 699
22.3.1 補丁 700
22.3.2 不必要的服務 700
22.3.3 遠程的事件日誌 701
22.3.4 備份 701
22.3.5 病毒和蠕蟲 701
22.3.6 特洛伊木馬 702
22.3.7 隱匿木馬 702
22.3.8 包過濾 702
22.3.9 口令 702
22.3.10 警惕性 703
22.3.11 普遍原則 703
22.4 口令和用戶賬號 703
22.4.1 口令時限 704
22.4.2 組登錄名和共享登錄名 704
22.4.3 用戶的shell 704
22.4.4 獲得root許可權的辦法 704
22.5 PAM:驗證奇才 705
22.5.1 系統對PAM的支持 705
22.5.2 配置PAM 706
22.5.3 Linux上詳細配置舉例 708
22.6 setuid程式 709
22.7 有效使用chroot 709
22.8 加強安全的工具 710
22.8.1 nmap:網路連線埠掃描程式 710
22.8.2 Nessus:下一代的網路掃描程式 711
22.8.3 John the Ripper:找出不安全的口令 712
22.8.4 hosts_acces:主機訪問控制 712
22.8.5 Bro:可程式的網路入侵檢測系統 713
22.8.6 Snort:流行的網路入侵檢測系統 713
22.8.7 OSSEC:基於主機的入侵檢測 714
22.9 強制訪問控制(MAC) 716
22.9.1 SELinux 717
22.10 加密的安全工具 718
22.10.1 Kerberos:用於網路安全的統一方法 718
22.10.2 PGP:很好的私密性 719
22.10.3 SSH:安全的shell 719
22.10.4 Stunnel 722
22.11 防火牆 723
22.11.1 包過濾防火牆 724
22.11.2 如何過濾服務 724
22.11.3 狀態檢查防火牆 725
22.11.4 防火牆保險嗎 725
22.12 Linux的防火牆功能 725
22.12.1 規則、鏈和表 726
22.12.2 規則目標 726
22.12.3 設定iptables防火牆 726
22.12.4 一個完整的例子 727
22.13 UNIX系統的IPFilter 729
22.14 VPN 731
22.14.1 IPSec隧道 731
22.14.2 VPN就夠了嗎 732
22.15 認證和標準 732
22.15.1 認證 733
22.15.2 安全標準 733
22.16 安全信息的來源 735
22.16.1 CERT:卡耐基梅隆大學的註冊服務商標 735
22.16.2 SecurityFocus.com網站和BugTraq郵遞列表 735
22.16.3 施耐德的安全部落格 735
22.16.4 SANS:系統管理、網路和安全協會 736
22.16.5 廠商特有的安全資源 736
22.16.6 其他郵遞列表和網站 737
22.17 如何對付站點攻擊 737
22.18 推薦讀物 738
22.19 習題 739
第 23章 Web主機託管 741
23.1 Web主機託管的基本知識 741
23.1.1 Web上資源的位置 742
23.1.2 統一資源定位符 742
23.1.3 HTTP工作原理 743
23.1.4 即時生成內容 743
23.1.5 套用伺服器 744
23.1.6 負載均衡 745
23.2 HTTP服務程式的安裝 746
23.2.1 選擇伺服器軟體 746
23.2.2 安裝Apache 747
23.2.3 配置Apache 748
23.2.4 運行Apache 749
23.2.5 分析日誌檔案 749
23.2.6 高性能主機託管的靜態內容最佳化 749
23.3 虛擬接口 750
23.3.1 使用基於名字的虛擬主機 750
23.3.2 配置虛擬接口 750
23.3.3 告訴Apache有關虛擬接口的信息 753
23.4 SSL 753
23.4.1 產生簽發證書的請求 754
23.4.2 配置Apache使用SSL 755
23.5 快取和代理服務程式 755
23.5.1 Squid快取和代理伺服器 756
23.5.2 設定Squid 756
23.5.3 Apache的反向代理 757
23.6 超越上限 758
23.6.1 雲計算 758
23.6.2 主機代管 758
23.6.3 內容分發網路 759
23.7 習題 759
第三部分 其他管理技術 761
第 24章 虛擬化技術 762
24.1 虛擬技術的種類 763
24.1.1 全虛擬化 763
24.1.2 半虛擬化 764
24.1.3 作業系統級虛擬化 764
24.1.4 原生虛擬化 765
24.1.5 雲計算 765
24.1.6 動態遷移 766
24.1.7 虛擬化技術比較 766
24.2 虛擬化技術的好處 766
24.3 實施方案 767
24.4 Linux虛擬化 768
24.4.1 Xen簡介 768
24.4.2 Xen基礎知識 768
24.4.3 用virt-install安裝Xen的guest系統 769
24.4.4 Xen動態遷移 770
24.4.5 KVM 771
24.4.6 KVM的安裝和使用 772
24.5 Solaris的zone和container 773
24.6 AIX的WPAR 776
24.7 HP-UX的IVM 777
24.7.1 創建和安裝虛擬機 777
24.8 VMWARE 778
24.9 亞馬遜的AWS 779
24.10 推薦讀物 782
24.11 習題 782
第 25章 X視窗系統 784
25.1 X顯示管理器 786
25.2 運行一個X應用程式 787
25.2.1 環境變數DISPLAY 787
25.2.2 客戶機身份驗證 788
25.2.3 用SSH轉發X連線 789
25.3 配置X伺服器 790
25.3.1 Device段 791
25.3.2 Monitor段 792
25.3.3 Screen段 792
25.3.4 InputDevice段 793
25.3.5 ServerLayout段 794
25.3.6 xrandr:X伺服器的配置工具 794
25.3.7 核心模式設定 795
25.4 故障排查和調試 795
25.4.1 X的特殊鍵盤組合 795
25.4.2 X伺服器出問題 796
25.5 桌面環境簡述 797
25.5.1 KDE 798
25.5.2 GNOME 798
25.5.3 KDE和GNOME誰更好 799
25.6 推薦讀物 799
25.7 習題 799
第 26章 列印 800
26.1 列印系統的體系結構 801
26.1.1 主要的列印系統 801
26.1.2 列印 801
26.2 CUPS的列印 802
26.2.1 列印系統的界面 802
26.2.2 列印佇列 803
26.2.3 多台印表機和列印佇列 803
26.2.4 印表機實例 803
26.2.5 網路列印 804
26.2.6 過濾器 804
26.2.7 CUPS伺服器的管理 805
26.2.8 設定網路列印伺服器 806
26.2.9 自動配置印表機 806
26.2.10 配置網路印表機 807
26.2.11 印表機的配置舉例 807
26.2.12 設定印表機的類 807
26.2.13 關閉服務 808
26.2.14 其他配置工作 808
26.3 桌面列印環境 809
26.3.1 kprinter:列印文檔 810
26.3.2 Konqueror和列印 810
26.4 SystemⅤ的列印 811
26.4.1 概述 811
26.4.2 列印目的地及列印類 812
26.4.3 lp簡述 812
26.4.4 lpsched與lpshut:啟動和停止列印 812
26.4.5 lpadmin:配置列印環境 813
26.4.6 lpadmin舉例 815
26.4.7 lpstat:獲取狀態信息 815
26.4.8 cancel:刪除列印作業 816
26.4.9 accept和reject:控制假脫機處理 816
26.4.10 enable和disable:控制列印 816
26.4.11 lpmove:轉移作業 817
26.4.12 接口程式 817
26.4.13 lp系統混亂狀況的處理方法 818
26.5 BSD和AIX的列印 818
26.5.1 BSD列印系統的體系結構概述 818
26.5.2 控制列印環境 819
26.5.3 lpd:假脫機列印程式 820
26.5.4 lpr:提交列印作業 820
26.5.5 lpq:查看列印佇列 820
26.5.6 lprm:刪除列印作業 820
26.5.7 lpc:管理性修改 821
26.5.8 /etc/printcap檔案 823
26.5.9 printcap變數 823
26.6 漫長和奇特的歷程 826
26.6.1 列印的歷史和列印系統的出現 826
26.6.2 印表機的多樣性 827
26.7 常用的列印軟體 828
26.8 印表機的語言 829
26.8.1 PostScript 829
26.8.2 PCL 829
26.8.3 PDF 830
26.8.4 XPS 830
26.8.5 PJL 830
26.8.6 印表機驅動程式及其對PDL的處理 831
26.9 PPD檔案 832
26.10 紙型 833
26.11 實際使用印表機的問題 834
26.11.1 印表機的選擇 834
26.11.2 GDI印表機 834
26.11.3 雙面列印 835
26.11.4 其他印表機配件 835
26.11.5 串口和並口印表機 835
26.11.6 網路印表機 836
26.11.7 給印表機的其他建議 836
26.12 故障排查的技巧 838
26.12.1 重啟列印守護進程 838
26.12.2 日誌 839
26.12.3 直接列印的問題 839
26.12.4 網路列印的問題 839
26.12.5 發行版本特有的問題 840
26.13 推薦讀物 840
26.14 習題 841
第 27章 數據中心基礎 842
27.1 數據中心的可靠性級別 843
27.2 冷卻 844
27.2.1 電子設備 844
27.2.2 照明設備 845
27.2.3 操作人員 845
27.2.4 總的熱負荷 845
27.2.5 冷熱通道 845
27.2.6 濕度 846
27.2.7 環境監視 847
27.3 供電 847
27.3.1 機架的供電要求 847
27.3.2 kVA和kW 848
27.3.3 遠程控制 849
27.4 機架 849
27.5 工具 849
27.6 推薦讀物 850
27.7 習題 850
第 28章 綠色IT 852
28.1 綠色IT的興起 853
28.2 綠色IT的生態金字塔 854
28.3 綠色IT策略:數據中心 854
28.3.1 套用合併 855
28.3.2 伺服器合併 856
28.3.3 SAN存儲 856
28.3.4 伺服器虛擬化 856
28.3.5 隨用隨開的伺服器 857
28.3.6 細粒度使用和容量規劃 857
28.3.7 最佳化能源的伺服器配置 857
28.3.8 雲計算 858
28.3.9 免費冷卻 859
28.3.10 數據中心的高效冷卻 859
28.3.11 停運時的降級模式 859
28.3.12 延長設備壽命 859
28.3.13 數據中心的較高溫度 860
28.3.14 低功率設備 860
28.4 綠色IT策略:用戶空間 860
28.5 綠色IT的朋友 862
28.6 習題 862
第 29章 性能分析 863
29.1 做什麼可以提高性能 864
29.2 影響性能的因素 865
29.3 如何分析性能問題 866
29.4 系統性能檢查 867
29.4.1 盤點硬體 867
29.4.2 收集性能數據 869
29.4.3 CPU使用情況分析 870
29.4.4 系統如何管理記憶體 871
29.4.5 記憶體使用情況分析 873
29.4.6 磁碟I/O分析 874
29.4.7 xdd:分析磁碟子系統的性能 876
29.4.8 sar:連續採集和報告統計信息 876
29.4.9 nmon和nmon_analyser:AIX上的監視工具 876
29.4.10 選擇Linux的I/O調度器 877
29.4.11 oprofile:詳細剖析Linux系統 877
29.5 求助!系統為何越來越慢 877
29.6 推薦讀物 879
29.7 習題 879
第30章 同Windows協作 881
30.1 從Windows登錄到UNIX系統 881
30.2 遠程桌面訪問 882
30.2.1 在Windows計算機上運行X伺服器 882
30.2.2 VNC:虛擬網路計算 883
30.2.3 Windows RDP:遠程桌面協定 883
30.3 運行Windows和類似Windows的套用 884
30.3.1 雙重引導,為何不該用 884
30.3.2 微軟Office的替代軟體 885
30.4 在Windows上使用命令行工具 885
30.5 Windows遵守電子郵件和Web標準 885
30.6 通過Samba和CIFS已分享檔案 886
30.6.1 Samba:UNIX的CIFS伺服器 886
30.6.2 Samba的安裝 887
30.6.3 檔案名稱編碼 888
30.6.4 用戶身份驗證 888
30.6.5 基本的檔案共享 889
30.6.6 用戶組共享 889
30.6.7 用微軟的DFS做透明重定向 890
30.6.8 smbclient:簡單的CIFS客戶端 891
30.6.9 Linux的客戶端對CIFS的支持 891
30.7 用Samba共享印表機 892
30.7.1 從Windows安裝印表機驅動程式 893
30.7.2 從命令行安裝印表機驅動程式 894
30.8 調試Samba 894
30.9 Active Directory身份驗證 896
30.9.1 準備好集成AD 896
30.9.2 配置Kerberos 897
30.9.3 Samba作為Active Directory的域成員 898
30.9.4 配置PAM 899
30.9.5 winbind的備選方案 900
30.10 推薦讀物 900
30.11 習題 901
第31章 串列設備和串列終端 902
31.1 RS-232C標準 903
31.2 備選連線器 905
31.2.1 DB-9連線器 905
31.2.2 RJ-45連線器 905
31.3 硬載波和軟載波 906
31.4 硬流控 906
31.5 串列設備檔案 907
31.6 setserial:把串口參數通知給驅動程式 908
31.7 偽終端 909
31.8 硬體終端的配置 909
31.8.1 登錄過程 909
31.8.2 /etc/ttytype檔案 910
31.8.3 /etc/gettytab檔案 911
31.8.4 /etc/gettydefs檔案 911
31.8.5 /etc/inittab檔案 911
31.8.6 Linux上的getty配置 913
31.8.7 Ubuntu的Upstart 913
31.8.8 Solaris和sacadm 914
31.9 特殊字元和終端驅動程式 914
31.10 stty:設定終端的選項 915
31.11 tset:自動設定選項 916
31.12 僵住的終端 916
31.13 調試串列線 917
31.14 連線到串列設備的控制台 917
31.15 習題 918
第32章 管理、政策與政治 919
32.1 IT的目標 919
32.1.1 預算和支出 920
32.1.2 IT政策 920
32.1.3 SLA 921
32.2 IT職能機構的組成 924
32.2.1 基礎:工單和任務管理系統 924
32.2.2 工單系統的常見功能 925
32.2.3 工單的所有權 925
32.2.4 用戶對工單系統的接受程度 926
32.2.5 工單系統舉例 926
32.2.6 工單分派 927
32.2.7 IT內部的技能培養 927
32.2.8 時間管理 928
32.3 諮詢組 928
32.3.1 服務範圍 928
32.3.2 諮詢可用性 929
32.3.3 諮詢上癮 929
32.4 企業構架師 929
32.4.1 過程可再現 929
32.4.2 留下記錄 930
32.4.3 認可文檔的重要性 930
32.4.4 定製和編程 930
32.4.5 保持系統乾淨整潔 930
32.5 運行組 930
32.5.1 瞄準**短停機時間 931
32.5.2 依靠文檔 931
32.5.3 重用或淘汰老硬體 931
32.5.4 維護本地文檔 932
32.5.5 保持環境獨立 934
32.5.6 自動化 934
32.6 管理的職能 935
32.6.1 領導 935
32.6.2 人事管理 936
32.6.3 聘用 936
32.6.4 解聘 937
32.6.5 人事管理的機制 937
32.6.6 質量控制 937
32.6.7 管理但別管閒事 938
32.6.8 社區關係 938
32.6.9 管理上級 939
32.6.10 採購 939
32.6.11 化解矛盾 940
32.7 政策和規程 941
32.7.1 政策和規程之間的區別 941
32.7.2 政策的**佳實踐 942
32.7.3 規程 942
32.8 災難恢復 943
32.8.1 風險評估 943
32.8.2 災難管理 944
32.8.3 處理災難的人員準備 945
32.8.4 電源和HVAC 945
32.8.5 網際網路連線的冗餘性 946
32.8.6 安全事件 946
32.9 合規:規章與標準 947
32.9.1 ITIL:信息技術基礎設施庫 949
32.9.2 NIST:國家標準和技術研究所 949
32.10 法律問題(美國) 949
32.10.1 隱私 950
32.10.2 落實政策 950
32.10.3 控制=義務 951
32.10.4 軟體許可證 951
32.11 組織、會議及其他資源 952
32.12 推薦讀物 953
32.13 習題 953
附錄A 系統管理簡史 955
附錄B 為AIX辯護 962
跋 965
1.8 單位 11
1.9 手冊頁和其他在線上文檔 12
1.9.1 手冊頁的組織 12
1.9.2 man:讀取手冊頁 13
1.9.3 手冊頁的保存 14
1.9.4 GNUTexinfo 14
1.10 其他的權 威文檔 14
1.10.1 針對系統的專門指南 14
1.10.2 針對軟體包的專門文檔 15
1.10.3 書籍 15
1.10.4 RFC和其他Internet文檔 16
1.10.5 LDP 16
1.11 其他的信息資源 16
1.12 查找和安裝軟體的途徑 17
1.12.1 判斷軟體是否已經安裝 18
1.12.2 增加新軟體 18
1.12.3 從原始碼編譯軟體 20
1.13 重壓下的系統管理員 21
1.14 推薦讀物 21
1.15 習題 23
第 2章 腳本和shell 24
2.1 shell的基礎知識 25
2.1.1 編輯命令 25
2.1.2 管道和重定向 25
2.1.3 變數和引用 27
2.1.4 常見的過濾命令 27
2.2 bash腳本編程 30
2.2.1 從命令到腳本 31
2.2.2 輸入和輸出 32
2.2.3 命令行參數和函式 33
2.2.4 變數的作用域 34
2.2.5 控制流程 35
2.2.6 循環 36
2.2.7 數組和算術運算 38
2.3 正則表達式 39
2.3.1 匹配過程 40
2.3.2 普通字元 40
2.3.3 特殊字元 40
2.3.4 正則表達式的例子 41
2.3.5 捕獲 42
2.3.6 貪心、懶惰和災難性的回溯 43
2.4 Perl編程 44
2.4.1 變數和數組 45
2.4.2 數組和字元串文字 45
2.4.3 函式調用 46
2.4.4 表達式里的類型轉換 46
2.4.5 字元串表達式和變數 46
2.4.6 哈希 46
2.4.7 引用和自動生成 48
2.4.8 Perl語言裡的正則表達式 48
2.4.9 輸入和輸出 49
2.4.10 控制流程 50
2.4.11 接受和確認輸入 51
2.4.12 Perl用作過濾器 52
2.4.13 Perl的附加模組 53
2.5 Python腳本編程 54
2.5.1 Python快速入門 54
2.5.2 對象、字元串、數、列表、字典、元組和檔案 56
2.5.3 確認輸入的例子 57
2.5.4 循環 58
2.6 腳本編程的**佳實踐 59
2.7 推薦讀物 60
Shell基礎知識和bash腳本編程 60
正則表達式 60
Perl腳本編程 60
Python腳本編程 61
2.8 習題 61
第3章 引導和關機 62
3.1 引導 62
3.1.1 恢復模式下引導進入shell 63
3.1.2 引導過程的步驟 63
3.1.3 初始化核心 63
3.1.4 配置硬體 64
3.1.5 創建核心進程 64
3.1.6 操作員干預(僅 限恢復模式) 64
3.1.7 執行啟動腳本 65
3.1.8 引導進程完成 65
3.2 引導PC 65
3.3 GRUB:全面統一的引導載入程式 66
3.3.1 核心選項 67
3.3.2 多重引導 68
3.4 引導進入單用戶模式 68
3.4.1 用GRUB引導單用戶模式 68
3.4.2 SPARC上的單用戶模式 69
3.4.3 HP-UX的單用戶模式 69
3.4.4 AIX的單用戶模式 70
3.5 啟動腳本 70
3.5.1 init及其運行級 70
3.5.2 啟動腳本概述 71
3.5.3 Red Hat啟動腳本 73
3.5.4 SUSE的啟動腳本 74
3.5.5 Ubuntu的啟動腳本和Upstart守護進程 75
3.5.6 HP-UX的啟動腳本 75
3.5.7 AIX的啟動 76
3.6 引導Solaris 77
3.6.1 Solaris的SMF 77
3.6.2 嶄新的世界:用SMF引導系統 79
3.7 重新引導和關機 79
3.7.1 shutdown:停止系統的妥善方式 79
3.7.2 halt和reboot:關閉系統的更簡單方式 80
3.8 習題 80
第4章 訪問控制和超級許可權 82
4.1 傳統的UNIX訪問控制 82
4.1.1 檔案系統的訪問控制 83
4.1.2 進程的所有權 83
4.1.3 root賬號 84
4.1.4 setuid和setgid執行方式 84
4.2 現代的訪問控制 85
4.2.1 基於角色的訪問控制 85
4.2.2 SELinux:增強安全性的Linux 86
4.2.3 POSIX能力(Linux) 86
4.2.4 PAM:可插入式身份驗證模組 87
4.2.5 Kerberos:第三方的加密驗證 87
4.2.6 訪問控制列表 87
4.3 實際中的訪問控制 87
4.3.1 選擇root的口令 88
4.3.2 登錄進入root賬號 89
4.3.3 su:替換用戶身份 89
4.3.4 sudo:受限的su 89
4.3.5 口令保險柜和口令代管 92
4.4 root之外的其他偽用戶 92
4.5 習題 93
第5章 進程控制 94
5.1 進程的組成部分 94
5.1.1 PID:進程的ID號 95
5.1.2 PPID:父PID 95
5.1.3 UID和EUID:真實的和有效的用戶ID 95
5.1.4 GID和EGID:真實的和有效的組ID 96
5.1.5 謙讓度 96
5.1.6 控制終端 96
5.2 進程的生命周期 96
5.3 信號 97
5.4 kill: 傳送信號 99
5.5 進程的狀態 100
5.6 nice和renice:影響調度優先權 101
5.7 ps:監視進程 102
5.8 用top、prstat和topas動態監視進程 105
5.9 /proc檔案系統 105
5.10 strace、truss和tusc:追蹤信號和系統調用 107
5.11 失控進程 108
5.12 推薦讀物 108
5.13 習題 109
第6章 檔案系統 110
6.1 路徑名稱 111
6.1.1 絕 對路徑和相對路徑 111
6.1.2 檔案名稱中的空白 112
6.2 掛載和卸載檔案系統 112
6.3 檔案樹的組織 114
6.4 檔案類型 116
6.4.1 普通檔案 117
6.4.2 117
6.4.3 字元設備檔案和塊設備檔案 118
6.4.4 本地域套接口 118
6.4.5 有名管道 119
6.4.6 符號連結 119
6.5 檔案屬性 119
6.5.1 許可權位 120
6.5.2 setuid和setgid位 120
6.5.3 粘附位 121
6.5.4 ls:列出和查看檔案 121
6.5.5 chmod:改變許可權 122
6.5.6 chown和chgrp:改變歸屬關係和組 123
6.5.7 umask:分配默認的許可權 124
6.5.8 Linux上的額外標誌 124
6.6 訪問控制列表 125
6.6.1 UNIX ACL簡史 126
6.6.2 ACL的實現 126
6.6.3 系統支持的ACL 127
6.6.4 POSIX的ACL 127
6.6.5 NFSv4的ACL 130
6.7 習題 134
第7章 添加新用戶 136
7.1 /etc/passwd檔案 137
7.1.1 登錄名 138
7.1.2 加密的口令 139
7.1.3 UID號 140
7.1.4 默認的GID號 141
7.1.5 GECOS欄位 141
7.1.6 主 142
7.1.7 登錄shell 142
7.2 /etc/shadow和/etc/security/passwd檔案 142
7.3 /etc/group檔案 145
7.4 添加用戶:基本步驟 146
7.4.1 編輯passwd和group檔案 146
7.4.2 設定口令 147
7.4.3 創建主並安裝啟動檔案 147
7.4.4 設定許可權和所屬關係 148
7.4.5 設定郵件主 148
7.4.6 配置角色和管理特權 148
7.4.7 收尾步驟 148
7.5 用useradd添加用戶 149
7.5.1 Ubuntu上的useradd 150
7.5.2 SUSE上的useradd 150
7.5.3 Red Hat上的useradd 151
7.5.4 Solaris上的useradd 151
7.5.5 HP-UX上的useradd 152
7.5.6 AIX的useradd 152
7.5.7 useradd舉例 154
7.6 用newusers成批添加用戶(Linux) 154
7.7 刪除用戶 155
7.8 禁止登錄 156
7.9 用系統的專門工具管理用戶 157
7.10 用PAM降低風險 157
7.11 集中管理賬號 157
7.11.1 LDAP和Active Directory 158
7.11.2 單一登錄系統 158
7.11.3 身份管理系統 158
7.12 推薦讀物 159
7.13 習題 159
第8章 存儲 161
8.1 只想加一塊硬碟! 161
8.1.1 Linux的做法 162
8.1.2 Solaris的做法 162
8.1.3 HP-UX的做法 163
8.1.4 AIX的做法 163
8.2 存儲硬體 164
8.2.1 硬碟 164
8.2.2 固態盤 165
8.3 存儲硬體接口 166
8.3.1 PATA接口 167
8.3.2 SATA接口 168
8.3.3 並行SCSI 168
8.3.4 串列SCSI 170
8.3.5 SCSI和SATA的比較 170
8.4 層層剖析:存儲上的軟體 171
8.5 硬碟的安裝和底層管理 173
8.5.1 在硬體層面上的安裝核實 173
8.5.2 磁碟設備檔案 173
8.5.3 格式化和壞塊管理 176
8.5.4 ATA安全擦除 176
8.5.5 hdparm:設定磁碟和接口參數(Linux) 177
8.5.6 使用SMART監視磁碟 179
8.6 磁碟分區 179
8.6.1 傳統的分區方式 180
8.6.2 Windows的分區 181
8.6.3 GPT:GUID分區表 182
8.6.4 Linux的分區 183
8.6.5 Solaris的分區 183
8.6.6 HP-UX的分區 183
8.7 RAID:廉價磁碟冗餘陣列 183
8.7.1 軟硬RAID對比 184
8.7.2 RAID的級別 184
8.7.3 硬碟故障恢復 186
8.7.4 RAID 5的缺點 186
8.7.5 mdadm:Linux上的軟RAID 187
8.8 邏輯卷管理 189
8.8.1 LVM的實現 190
8.8.2 Linux的邏輯卷管理 191
8.8.3 HP-UX的邏輯卷管理 194
8.8.4 AIX的邏輯卷管理 196
8.10 檔案系統 197
8.9.1 Linux檔案系統:ext家族的檔案系統 197
8.9.2 HP-UX檔案系統 198
8.9.3 AIX的JFS2檔案系統 198
8.9.4 檔案系統的術語 199
8.9.5 檔案系統的多態性 199
8.9.6 mkfs:格式化檔案系統 200
8.9.7 fsck:檢查和修復檔案系統 200
8.9.8 掛載檔案系統 201
8.9.9 設定自動掛載 201
8.9.10 掛載USB設備 203
8.9.11 啟用交換分區 204
8.10 ZFS:解決所有存儲問題 204
8.10.1 ZFS體系結構 205
8.10.2 舉例:Solaris磁碟分區 205
8.10.3 檔案系統和屬性 206
8.10.4 屬性繼承 207
8.10.5 每個用戶一個檔案系統 208
8.10.6 快照和克隆 208
8.10.7 原始卷 209
8.10.8 通過NFS、CIFS和iSCSI已分享檔案系統 209
8.10.9 存儲池管理 210
8.11 存儲區域網路 211
8.11.1 SAN網路 212
8.11.2 iSCSI:SCSI over IP 213
8.11.3 從iSCSI卷引導 214
8.11.4 iSCSI的廠商特性 214
8.12 習題 216
第9章 周期性進程 218
9.1 cron:按時間表執行命令 218
9.2 crontab檔案的格式 219
9.3 crontab管理 220
9.4 Linux及其Vixie-CRON的擴展 221
9.5 cron的常見用途 222
9.5.1 簡單的提醒功能 222
9.5.2 清理檔案系統 223
9.5.3 配置檔案的網路分布 224
9.5.4 循環日誌檔案 224
9.6 習題 224
第 10章 備份 225
10.1 備份基本原理 226
10.1.1 從中心位置執行所有的備份 226
10.1.2 給備份介質加卷標 226
10.1.3 選擇合理的備份間隔 226
10.1.4 仔細選擇檔案系統 227
10.1.5 在單一介質上做日常轉儲 227
10.1.6 異地保存介質 227
10.1.7 保護備份 228
10.1.8 備份期間限制活動 228
10.1.9 查驗介質 228
10.1.10 發掘介質的壽命 229
10.1.11 為備份而設計數據 229
10.1.12 做**壞的準備 230
10.2 備份設備和介質 230
10.2.1 光碟:CD-R/RW、DVD±R/RW、DVD-RAM和藍光 231
10.2.2 便攜和移動硬碟 231
10.2.3 磁帶概述 231
10.2.4 小型磁帶機:8mm磁帶和DDS/DAT 232
10.2.5 DLT和S-DLT 232
10.2.6 AIT和SAIT 232
10.2.7 VXA和VXA-X 233
10.2.8 LTO 233
10.2.9 自動選帶機、自動換帶機以及磁帶庫 233
10.2.10 硬碟 233
10.2.11 網際網路和雲備份服務 234
10.2.12 介質類型小結 234
10.2.13 設備選型 235
10.3 節省空間和時間與增量備份 235
10.3.1 簡單的計畫 236
10.3.2 適中的計畫 236
10.4 用dump建立備份機制 236
10.4.1 轉儲檔案系統 237
10.4.2 用restore從轉儲中恢復 239
10.4.3 恢復整個檔案系統 241
10.4.4 恢復到新硬碟上 242
10.5 為系統升級而執行轉儲和恢復 242
10.6 使用其他存檔程式 242
10.6.1 tar: 給檔案打包 242
10.6.2 dd:處理位流 243
10.6.3 ZFS的備份 244
10.7 使用同一卷磁帶上的多個檔案 244
10.8 Bacula 245
10.8.1 Bacula的模型 246
10.8.2 設定Bacula 246
10.8.3 安裝資料庫和Bacula的守護進程 247
10.8.4 配置Bacula的守護進程 247
10.8.5 公共的配置段 248
10.8.6 bacular-dir.conf:配置控制檔案 249
10.8.7 bacula-sd.conf:配置存儲守護進程 252
10.8.8 bconsole.conf:配置控制台 253
10.8.9 安裝和配置客戶端的檔案守護進程 253
10.8.10 啟動Bacula的守護進程 253
10.8.11 向存儲池添加介質 254
10.8.12 執行一次手工備份 254
10.8.13 執行一次恢復工作 254
10.8.14 給Windows客戶機做備份 257
10.8.15 監視和調試Bacula的配置 257
10.8.16 Bacula的技巧和竅門 258
10.8.17Bacula的替代工具 258
10.9 商用備份產品 259
10.9.1 ADSM/TSM 259
10.9.2 VeritasNetBackup 259
10.9.3 EMCNetWorker 260
10.9.4 其他選擇 260
10.10 推薦讀物 260
10.11 習題 260
第 11章 系統日誌與日誌檔案 262
11.1 日誌檔案的位置 263
11.1.1 不用管理的檔案 264
11.1.2 廠商特有的檔案 265
11.2 syslog:系統事件的日誌程式 266
11.2.1 syslog的體系結構 266
11.2.2 配置syslogd 267
11.2.3 配置檔案舉例 269
11.2.4 調試syslog 271
11.2.5 syslog的其他替代方案 271
11.2.6 Linux核心和引導時刻日誌 272
11.3 AIX:日誌記錄和出錯處理 273
11.3.1 AIX的syslog配置 274
11.4 logrotate: 管理日誌檔案 275
11.5 分析日誌檔案 276
11.6 日誌記錄的策略 277
11.7 習題 278
第 12章 軟體安裝和管理 280
12.1 安裝Linux和OpenSolaris 280
12.1.1 從網路引導PC 281
12.1.2 為Linux設定PXE 281
12.1.3 非PC的網路引導 282
12.1.4 Kickstart:RHEL的自動安裝程式 282
12.1.5 AutoYaST:SUSE的自動安裝工具 284
12.1.6 用Ubuntu的安裝程式自動安裝 285
12.2 安裝Solaris 286
12.2.1 使用JumpStart網路安裝 287
12.2.2 使用自動安裝程式進行網路安裝 290
12.3 安裝HP-UX 291
12.3.1 用Ignite-UX自動安裝 293
12.4 使用NIM安裝AIX 293
12.5 軟體包管理 294
12.6 Linux的高 級軟體包管理系統 295
12.6.1 rpm:管理RPM軟體包 295
12.6.2 dpkg:管理Debian的軟體包 296
12.7 Linux的高 級軟體包管理系統 297
12.7.1 軟體包的庫 298
12.7.2 RHN:Red Hat網路 299
12.7.3 APT:高 級軟體包工具 299
12.7.4 配置apt-get 300
12.7.5 /etc/apt/sources.list檔案的例子 301
12.7.6 創建本地的庫鏡像 301
12.7.7 自動執行apt-get 302
12.7.8 yum:管理RPM的發布 302
12.7.9 Zypper:SUSE的軟體包管理 303
12.8 UNIX的軟體包管理 304
12.8.1 Solaris軟體包 304
12.8.2 HP-UX軟體包 305
12.8.3 AIX的軟體管理 307
12.9 版本控制 307
12.9.1創建備份檔案 307
12.9.2 正規的版本控制系統 308
12.9.3 Subversion 309
12.9.4 Git 310
12.10 軟體的本地化和配置 313
12.10.1 本地化的組織 313
12.10.2 測試 314
12.10.3 本地編譯軟體 314
12.10.4 發布本地軟體 315
12.11 配置管理工具 315
12.11.1 cfengine:計算機免疫系統 316
12.11.2 LCFG:大規模配置系統 316
12.11.3 Template Tree 2:cfengine的幫手 316
12.11.4 DMTF/CIM:公共信息模型 317
12.12 通過NFS共享軟體 317
12.12.1 軟體包的名字空間 318
12.12.2 依賴關係的管理 318
12.12.3 封裝腳本 319
12.13 推薦讀物 319
12.14 習題 320
第 13章 驅動程式和核心 321
13.1 核心的適應性 322
13.2 驅動程式和設備檔案 322
13.2.1 設備檔案和設備號 323
13.2.2 創建設備檔案 324
13.2.3 設備的命名約定 324
13.2.4 自定義核心和可載入模組 325
13.3 配置Linux核心 325
13.3.1 調整Linux核心參數 325
13.3.2 構造Linux核心 327
13.3.3 核心沒問題就不要改它 327
13.3.4 配置核心選項 327
13.3.5 構建Linux核心的二進制檔案 328
13.3.6 添加Linux設備驅動程式 329
13.4 配置Solaris核心 330
13.4.1 Solaris核心區 330
13.4.2 用/etc/system配置核心 331
13.4.3 添加一個Solaris設備驅動程式 332
13.4.4 調試Solaris的配置 332
13.5 配置HP-UX核心 333
13.6 管理AIX核心 334
13.6.1 ODM 334
13.6.2 核心調配 335
13.7 可載入核心模組 336
13.7.1 Linux的可載入核心模組 336
13.7.2 Solaris的可載入核心模組 337
13.8 Linux udev的意義和作用 338
13.8.1 Linux sysfs:設備對外的視窗 339
13.8.2 用udevadm瀏覽設備 339
13.8.3 構造規則和固定不變的名字 340
13.9 推薦讀物 343
13.10 習題 343
第 二部分 網路管理技術 345
第 14章 TCP/IP網路 346
14.1 TCP/IP和Internet 346
14.1.1 Internet的運行管理 347
14.1.2 網路的標準和文獻 347
14.2 連網技術概述 348
14.2.1 IPv4和IPv6 349
14.2.2 分組和封裝 349
14.2.3 乙太網組幀 350
14.2.4 **大傳輸單位(MTU) 350
14.3 分組地址 351
14.3.1 硬體(MAC)地址 351
14.3.2 IP位址 352
14.3.3 主機名“地址” 352
14.3.4 連線埠 352
14.3.5 地址類型 353
14.4 IP位址詳解 353
14.4.1 IPv4地址分類 353
14.4.2 子網 354
14.4.3 計運算元網的技巧和工具 355
14.4.4 CIDR:無類域間路由 356
14.4.5 地址分配 356
14.4.6 私用地址和NAT 357
14.4.7 IPv6地址 358
14.5 路由選擇 359
14.5.1 路由表 360
14.5.2 ICMP重定向 361
14.6 ARP:地址解析協定 361
14.7 DHCP:動態主機配置協定 362
14.7.1 DHCP軟體 363
14.7.2 DHCP的工作方式 363
14.7.3 ISC的DHCP伺服器 363
14.8 安全問題 365
14.8.1 IP轉發 365
14.8.2 ICMP重定向 365
14.8.3 源路由 365
14.8.4 廣播ping和其他形式的定向廣播 365
14.8.5 IP欺騙 366
14.8.6 基於主機的防火牆 366
14.8.7 虛擬私用網路 367
14.9 PPP:點對點協定 367
14.10 基本的網路配置 368
14.10.1 分配主機名和IP位址 368
14.10.2 ifconfig:配置網路接口 369
14.10.3 網路硬體參數 371
14.10.4 route:配置靜態路由 371
14.10.5 配置DNS 373
14.11 特定於系統的網路配置 373
14.12 Linux連網 374
14.12.1 NetworkManager 374
14.12.2 Debian和Ubuntu的網路配置 375
14.12.3 SUSE的網路配置 375
14.12.4 Red Hat的網路配置 376
14.12.5 Linux的網路硬體配置選項 377
14.12.6 Linux的TCP/IP配置選項 378
14.12.7 有關安全的核心變數 380
14.12.8 Linux的NAT和包過濾 381
14.13 Solaris連網 381
14.13.1 基本網路配置 381
14.13.2 網路配置舉例 383
14.13.3 DHCP的配置 384
14.13.4 ndd:調整TCP/IP和接口 384
14.13.5 安全 385
14.13.6 防火牆和過濾機制 386
14.13.7 NAT 386
14.13.8 Solaris連網的特別之處 387
14.14 HP-UX連網 387
14.14.1 基本網路配置 387
14.14.2 網路配置舉例 388
14.14.3 DHCP的配置 389
14.14.4 動態的重新配置和調整 390
14.14.5 安全、防火牆、過濾和NAT 390
14.15 AIX連網 391
14.15.1 no:管理AIX的網路可配參數 392
14.16 推薦讀物 393
14.17 習題 394
第 15章 路由選擇 395
15.1 近觀包轉發 396
15.2 路由守護進程和路由協定 398
15.2.1 距離向量協定 398
15.2.2 鏈路狀態協定 399
15.2.3 代價度量 399
15.2.4 內部協定和外部協定 400
15.3 路由協定巡禮 400
15.3.1 RIP和RIPng:路由信息協定 400
15.3.2 OSPF:開放**短路徑優先 401
15.3.4 EIGRP:增強內部網關路由協定 401
15.3.5 IS-IS:ISO的“標準” 402
15.3.6 RDP和NDP 402
15.3.7 BGP:邊界網關協定 402
15.4 路由策略的選擇標準 402
15.5 路由守護進程 403
15.5.1 routed:過時的RIP實現 404
15.5.2 gated:第 一代的多協定路由守護進程 404
15.5.3 Quagga:主流的路由守護進程 404
15.5.4 ramd:HP-UX的多協定路由系統 405
15.5.5 XORP:計算機里的路由器 405
15.5.6 各作業系統的特性 405
15.6 思科路由器 406
15.7 推薦讀物 408
15.8 習題 409
第 16章 網路硬體 410
16.1 乙太網:連網技術中的瑞士軍刀 411
16.1.1 乙太網的工作方式 412
16.1.2 乙太網拓撲結構 412
16.1.3 無禁止雙絞線 412
16.1.4 光纖 414
16.1.5 連線和擴展乙太網 415
16.1.6 自動協商 416
16.1.7 乙太網供電 416
16.1.8 巨大幀 417
16.2 無線:流動人士的LAN 417
16.2.1 無線網路的安全 418
16.2.2 無線交換機和輕量級AP 419
16.3 DSL和CM:**後一英里 419
16.4 網路測試和調試 420
16.5 建築物布線 420
16.5.1 UTP電纜的選擇 420
16.5.2 到辦公室的連線 421
16.5.3 布線標準 421
16.6 網路設計問題 422
16.6.1 網路結構與建築物結構 422
16.6.2 擴展 422
16.6.3 擁塞 423
16.6.4 維護和建檔 423
16.7 管理問題 423
16.8 推薦的廠商 424
16.8.1 電纜和連線器 424
16.8.2 測試儀器 424
16.8.3 路由器/交換機 424
16.9 推薦讀物 424
16.10 習題 425
第 17章 DNS:域名系統 426
17.1 誰需要DNS 427
17.1.1 管理DNS 427
17.2 DNS的工作原理 428
17.2.1 資源記錄 428
17.2.2 授權 429
17.2.3 快取和效率 430
17.2.4 多重回響 430
17.3 DNS速成 430
17.3.1 向DNS添加新機器 431
17.3.2 配置DNS客戶機 433
17.4 域名伺服器 435
17.4.1 權 威與僅快取伺服器 435
17.4.2 遞歸和非遞歸伺服器 436
17.5 DNS名字空間 437
17.5.1 註冊二級域名 438
17.5.2 創建子域 438
17.6 設計DNS環境 438
17.6.1 名字空間管理 439
17.6.2 權 威伺服器 439
17.6.3 快取伺服器 440
17.6.4 硬體要求 440
17.6.5 安全 441
17.6.6 總結 441
17.7 DNS的新特性 442
17.8 DNS資料庫 443
17.8.1 區檔案中的命令 444
17.8.2 資源記錄 444
17.8.3 SOA記錄 447
17.8.4 NS記錄 448
17.8.5 A記錄 449
17.8.6 PTR記錄 449
17.8.7 MX記錄 450
17.8.8 CNAME記錄 451
17.8.9 巧用CNAME 452
17.8.10 SRV記錄 453
17.8.11 TXT記錄 454
17.8.12 IPv6資源記錄 454
17.8.13 SPF記錄 455
17.8.14 DKIM和ADSP記錄 457
17.8.15 SSHFP資源記錄 459
17.8.16 粘合記錄:區之間的連結 460
17.9 BIND軟體 461
17.9.1 判定版本 461
17.9.2 BIND的組成 463
17.9.3 配置檔案 463
17.9.4 include語句 465
17.9.5 options語句 465
17.9.6 acl語句 470
17.9.7 (TSIG)key語句 471
17.9.8 trusted-keys語句 471
17.9.9 server語句 471
17.9.10 masters語句 472
17.9.11 logging語句 472
17.9.12 statistics-channels語句 473
17.9.13 zone語句 473
17.9.14 rndc的controls語句 475
17.9.15 分離式DNS和view語句 476
17.10 BIND配置舉例 478
17.10.1 localhost區 478
17.10.2 一家小型的安全公司 479
17.10.3 ISC 481
17.11 NSD/Unbound軟體 482
17.11.1 安裝和配置NSD 483
17.11.2 運行nsd 488
17.11.3 安裝和配置Unbound 488
17.12 更新區檔案 494
17.12.1 區傳送 494
17.12.2 BIND的動態更新 495
17.13 安全問題 497
17.13.1 再談BIND訪問控制列表 498
17.13.2 開放的解析器 499
17.13.3 在監管環境下運行 499
17.13.4 使用TSIG和TKEY保障伺服器與伺服器之間通信的安全 500
17.13.5 為BIND設定TSIG 500
17.13.6 NSD里的TSIG 502
17.13.7 DNSSEC 502
17.13.8 DNSSEC策略 505
17.13.9 DNSSEC資源記錄 505
17.13.10 啟用DNSSEC 506
17.13.11 生成密鑰對 507
17.13.12 區簽名 509
17.13.13 DNSSEC信任鏈 510
17.13.14 DLV:域旁路認證 511
17.13.15 DNSSEC密鑰延期 512
17.13.16 DNSSEC工具 513
17.13.17 調試DNSSEC 515
17.14 微軟和DNS 516
17.15 測試和調試 516
17.15.1 BIND的日誌功能 516
17.15.2 NSD/Unbound的日誌功能 521
17.15.3 域名伺服器的控制程式 521
17.15.4 域名伺服器統計 523
17.15.5 用dig進行調試 524
17.15.6 殘缺授權 525
17.15.7 其他DNS檢查工具 526
17.15.8 性能問題 527
17.16 各作業系統的特定信息 527
17.16.1 Linux 528
17.16.2 Solaris 530
17.16.3 HP-UX 530
17.16.4 AIX 531
17.17 推薦讀物 532
17.17.1 郵遞列表和新聞組 532
17.17.2 書籍和其他文檔 532
17.17.3 網上資源 533
17.17.4 RFC 533
17.18 習題 534
第 18章 網路檔案系統 535
18.1 NFS概述 535
18.1.1 狀態問題 535
18.1.2 性能問題 536
18.1.3 安全 536
18.2 NFS的方法 536
18.2.1 NFS協定的版本和歷史 537
18.2.2 傳輸協定 537
18.2.3 狀態 537
18.2.4 檔案系統導出 538
18.2.5 檔案上鎖機制 538
18.2.6 安全問題 539
18.2.7 NFSv4的標識映射 540
18.2.8 root訪問與nobody賬號 541
18.2.9 NFSv4的性能考慮 541
18.2.10 磁碟配額 541
18.3 伺服器端NFS 542
18.3.1 share命令和dfstab檔案(Solaris/HP-UX) 543
18.3.2 exportfs命令和exports檔案(Linux/AIX) 544
18.3.3 在AIX上導出檔案系統 544
18.3.4 在Linux上導出檔案系統 545
18.3.5 nfsd:提供檔案服務 547
18.4 客戶端NFS 548
18.4.1 在啟動時掛載遠程檔案系統 550
18.4.2 連線埠安全限制 550
18.5 NFSv4的標識映射 551
18.6 nfsstat:轉儲NFS統計信息 551
18.7 專用NFS檔案伺服器 552
18.8 自動掛載 552
18.8.1 間接映射檔案 553
18.8.2 直接映射檔案 554
18.8.3 主控映射檔案 554
18.8.4 可執行的映射檔案 554
18.8.5 自動掛載的可見性 555
18.8.6 重複的檔案系統和自動掛載 555
18.8.7 自動的automount(除Linux之外其他系統上的NFSv3) 556
18.8.8 Linux的特定信息 556
18.9 推薦讀物 557
18.10 習題 557
第 19章 共享系統檔案 558
19.1 共享什麼 559
19.2 把檔案複製到各處 559
19.2.1 NFS的選項 559
19.2.2 “推”系統和“拉”系統 560
19.2.3 rdist:推檔案 560
19.2.4 rsync:更安全地傳輸檔案 562
19.2.5 拉檔案 564
19.3 LDAP:輕量級訪問協定 564
19.3.1 LDAP數據的結構 565
19.3.2 LDAP的特點 566
19.3.3 LDAP的文檔和規範 567
19.3.4 OpenLDAP:傳統的開源LDAP 567
19.3.5 389 Directory Server:另一種開源LDAP伺服器 568
19.3.6 用LDAP代替/etc/passwd和/etc/group 568
19.3.7 LDAP查詢 569
19.3.8 LDAP和安全 570
19.4 NIS:網路信息服務 570
19.4.1 NIS模型 571
19.4.2 理解NIS的工作方式 571
19.4.3 NIS的安全 572
19.5 確定管理信息源的優先權 573
19.5.1 nscd:快取查找的結果 574
19.6 推薦讀物 574
19.7 習題 574
第 20章 電子郵件 576
20.1 郵件系統 577
20.1.1 用戶代理 577
20.1.2 提交代理 578
20.1.3 傳輸代理 579
20.1.4 本地投遞代理 579
20.1.5 訊息庫 579
20.1.6 訪問代理 580
20.1.7 內容太多,時間太少 580
20.2 剖析郵件訊息 580
20.2.1 閱讀郵件信頭 581
20.3 SMTP協定 582
20.3.1 EHLO 583
20.3.2 SMTP出錯代碼 583
20.3.3 SMTP身份驗證 584
20.4 郵件系統的設計 585
20.4.1 使用郵件伺服器 585
20.5 郵件別名 587
20.5.1 從檔案中獲取別名 589
20.5.2 發郵件給檔案 589
20.5.3 發郵件給程式 590
20.5.4 別名舉例 590
20.5.5 散列的別名資料庫 590
20.5.6 郵遞列表和實現清單的軟體 590
20.5.7 維護郵遞列表的軟體包 591
20.6 內容掃描:垃圾郵件和惡意軟體 591
20.6.1 垃圾郵件 592
20.6.2 偽造郵件 592
20.6.3 訊息隱私 593
20.6.4 垃圾郵件過濾 593
20.6.5 何時過濾 593
20.6.6 灰名單技術/DCC 594
20.6.7 SpamAssassin 594
20.6.8 黑名單 595
20.6.9 白名單 595
20.6.10 郵件過濾庫 596
20.6.11 SPF和Sender ID 596
20.6.12 DomainKeys、DKIM和ADSP 596
20.6.13 MTA特有的反垃圾郵件功能 597
20.6.14 MailScanner 597
20.6.15 amavisd-new 597
20.6.16 測試MTA的掃描效力 600
20.7 電子郵件配置 600
20.8 sendmail 601
20.8.1 開關檔案 602
20.8.2 運行模式 603
20.8.3 郵件佇列 604
20.9 配置sendmail 604
20.9.1 m4預處理器 605
20.9.2 sendmail的配置 605
20.9.3 從.mc樣板檔案構建配置檔案 606
20.10 sendmail基本配置原語 607
20.10.1 表和資料庫 607
20.10.2 通用宏和功能 608
20.10.3 客戶端選項 612
20.10.4 配置選項 612
20.10.5 sendmail中處理垃圾郵件的功能 614
20.10.6 sendmail中的milter配置 616
20.10.7 amavisd和sendmail的連線 617
20.11 安全與sendmail 618
20.11.1 所有權 618
20.11.2 許可權 619
20.11.3 向檔案和程式更安全地發郵件 620
20.11.4 隱私選項 620
20.11.5 運行一個chroot過的sendmail(真正嚴格的要求) 621
20.11.6 拒絕服務攻擊 622
20.11.7 SASL:簡單的身份驗證和安全層 622
20.11.8 TLS:傳輸層安全 622
20.12 sendmail的性能 623
20.12.1 投遞方式 623
20.12.2 佇列分組和信封分割 623
20.12.3 佇列運行器 623
20.12.4 控制平均負載 624
20.12.5 佇列中無法投遞的訊息 624
20.12.6 核心調優 625
20.13 sendmail測試和調試 626
20.13.1 佇列監視 626
20.13.2 日誌機制 627
20.14 Exim 627
20.14.1 安裝Exim 628
20.14.2 Exim的啟動腳本 629
20.14.3 Exim的工具 630
20.14.4 Exim的配置語言 631
20.14.5 Exim的配置檔案 631
20.14.6 全局的配置選項 632
20.14.7 ACL 633
20.14.8 ACL內容掃描 636
20.14.9 身份驗證器 637
20.14.10 路由 638
20.14.11 傳輸 640
20.14.12 重試配置 641
20.14.13 重寫配置 641
20.14.14 本地掃描功能 642
20.14.15 amavisd和Exim的連線 642
20.14.16 日誌機制 642
20.14.17 調試機制 643
20.15 Postfix郵件系統 644
20.15.1 Postfix的體系結構 644
20.15.2 安全 645
20.15.3 Postfix命令和文檔 645
20.15.4 配置Postfix 646
20.15.5 虛擬域 649
20.15.6 訪問控制 651
20.15.7 反垃圾郵件和病毒 653
20.15.8 用amavisd做內容過濾 654
20.15.9 調試 656
20.16 DKIM配置 657
20.16.1 DKIM:域密鑰身份識別郵件 657
20.16.2 DKIM郵件過濾 658
20.16.3 在amavisd-new中配置DKIM 660
20.16.4 sendmail中的DKIM 660
20.16.5 Exim中的DKIM 661
20.16.6 Postfix中的DKIM 663
20.17 綜合的電子郵件解決方案 663
20.18 推薦讀物 664
20.19 習題 665
第 21章 網路管理和調試 668
21.1 網路故障的檢測 669
21.2 ping:檢查主機是否正常 670
21.3 SmokePing:ping的累計統計 671
21.4 traceroute:跟蹤IP包 672
21.5 netstat:獲得網路統計信息 674
21.5.1 檢查接口的配置信息 674
21.5.2 監視網路連線的狀態 676
21.5.3 標識正在監聽的網路服務 677
21.5.4 檢查路由表 677
21.5.5 查看各種網路協定運行的統計信息 678
21.6 檢查工作接口的活動 679
21.7 包嗅探器 680
21.7.1 tcpdump:業界標準的包嗅探器 680
21.7.2 Wireshark和TShark:增強型的tcpdump 681
21.8 ICSI Netslyzr 682
21.9 網路管理協定 683
21.10 SNMP:簡單網路管理協定 684
21.10.1 SNMP的組織結構 684
21.10.2 SNMP協定的操作 685
21.10.3 RMON:遠程監視MIB 686
21.11 NET-SNMP代理程式 686
21.12 網路管理應用程式 687
21.12.1 NET-SNMP工具 687
21.12.2 SNMP數據的採集和繪圖 688
21.12.3 Nagios:基於事件的SNMP和服務監視工具 689
21.12.4 終 極網路監測軟體包:仍在尋覓 690
21.12.5 商業管理平台 690
21.13 NetFlow:面向連線的監視 691
21.13.1 用nfdump和Nfsen監測NetFlow數據 691
21.13.2 在思科路由器上配置NetFlow 693
21.14 推薦讀物 693
21.15 習題 694
第 22章 安全 696
22.1 UNIX安全嗎? 697
22.2 安全性是如何受損害的 698
22.2.1 社交工程 698
22.2.2 軟體漏洞 698
22.2.3 配置錯誤 699
22.3 安全的技巧和思想 699
22.3.1 補丁 700
22.3.2 不必要的服務 700
22.3.3 遠程的事件日誌 701
22.3.4 備份 701
22.3.5 病毒和蠕蟲 701
22.3.6 特洛伊木馬 702
22.3.7 隱匿木馬 702
22.3.8 包過濾 702
22.3.9 口令 702
22.3.10 警惕性 703
22.3.11 普遍原則 703
22.4 口令和用戶賬號 703
22.4.1 口令時限 704
22.4.2 組登錄名和共享登錄名 704
22.4.3 用戶的shell 704
22.4.4 獲得root許可權的辦法 704
22.5 PAM:驗證奇才 705
22.5.1 系統對PAM的支持 705
22.5.2 配置PAM 706
22.5.3 Linux上詳細配置舉例 708
22.6 setuid程式 709
22.7 有效使用chroot 709
22.8 加強安全的工具 710
22.8.1 nmap:網路連線埠掃描程式 710
22.8.2 Nessus:下一代的網路掃描程式 711
22.8.3 John the Ripper:找出不安全的口令 712
22.8.4 hosts_acces:主機訪問控制 712
22.8.5 Bro:可程式的網路入侵檢測系統 713
22.8.6 Snort:流行的網路入侵檢測系統 713
22.8.7 OSSEC:基於主機的入侵檢測 714
22.9 強制訪問控制(MAC) 716
22.9.1 SELinux 717
22.10 加密的安全工具 718
22.10.1 Kerberos:用於網路安全的統一方法 718
22.10.2 PGP:很好的私密性 719
22.10.3 SSH:安全的shell 719
22.10.4 Stunnel 722
22.11 防火牆 723
22.11.1 包過濾防火牆 724
22.11.2 如何過濾服務 724
22.11.3 狀態檢查防火牆 725
22.11.4 防火牆保險嗎 725
22.12 Linux的防火牆功能 725
22.12.1 規則、鏈和表 726
22.12.2 規則目標 726
22.12.3 設定iptables防火牆 726
22.12.4 一個完整的例子 727
22.13 UNIX系統的IPFilter 729
22.14 VPN 731
22.14.1 IPSec隧道 731
22.14.2 VPN就夠了嗎 732
22.15 認證和標準 732
22.15.1 認證 733
22.15.2 安全標準 733
22.16 安全信息的來源 735
22.16.1 CERT:卡耐基梅隆大學的註冊服務商標 735
22.16.2 SecurityFocus.com網站和BugTraq郵遞列表 735
22.16.3 施耐德的安全部落格 735
22.16.4 SANS:系統管理、網路和安全協會 736
22.16.5 廠商特有的安全資源 736
22.16.6 其他郵遞列表和網站 737
22.17 如何對付站點攻擊 737
22.18 推薦讀物 738
22.19 習題 739
第 23章 Web主機託管 741
23.1 Web主機託管的基本知識 741
23.1.1 Web上資源的位置 742
23.1.2 統一資源定位符 742
23.1.3 HTTP工作原理 743
23.1.4 即時生成內容 743
23.1.5 套用伺服器 744
23.1.6 負載均衡 745
23.2 HTTP服務程式的安裝 746
23.2.1 選擇伺服器軟體 746
23.2.2 安裝Apache 747
23.2.3 配置Apache 748
23.2.4 運行Apache 749
23.2.5 分析日誌檔案 749
23.2.6 高性能主機託管的靜態內容最佳化 749
23.3 虛擬接口 750
23.3.1 使用基於名字的虛擬主機 750
23.3.2 配置虛擬接口 750
23.3.3 告訴Apache有關虛擬接口的信息 753
23.4 SSL 753
23.4.1 產生簽發證書的請求 754
23.4.2 配置Apache使用SSL 755
23.5 快取和代理服務程式 755
23.5.1 Squid快取和代理伺服器 756
23.5.2 設定Squid 756
23.5.3 Apache的反向代理 757
23.6 超越上限 758
23.6.1 雲計算 758
23.6.2 主機代管 758
23.6.3 內容分發網路 759
23.7 習題 759
第三部分 其他管理技術 761
第 24章 虛擬化技術 762
24.1 虛擬技術的種類 763
24.1.1 全虛擬化 763
24.1.2 半虛擬化 764
24.1.3 作業系統級虛擬化 764
24.1.4 原生虛擬化 765
24.1.5 雲計算 765
24.1.6 動態遷移 766
24.1.7 虛擬化技術比較 766
24.2 虛擬化技術的好處 766
24.3 實施方案 767
24.4 Linux虛擬化 768
24.4.1 Xen簡介 768
24.4.2 Xen基礎知識 768
24.4.3 用virt-install安裝Xen的guest系統 769
24.4.4 Xen動態遷移 770
24.4.5 KVM 771
24.4.6 KVM的安裝和使用 772
24.5 Solaris的zone和container 773
24.6 AIX的WPAR 776
24.7 HP-UX的IVM 777
24.7.1 創建和安裝虛擬機 777
24.8 VMWARE 778
24.9 亞馬遜的AWS 779
24.10 推薦讀物 782
24.11 習題 782
第 25章 X視窗系統 784
25.1 X顯示管理器 786
25.2 運行一個X應用程式 787
25.2.1 環境變數DISPLAY 787
25.2.2 客戶機身份驗證 788
25.2.3 用SSH轉發X連線 789
25.3 配置X伺服器 790
25.3.1 Device段 791
25.3.2 Monitor段 792
25.3.3 Screen段 792
25.3.4 InputDevice段 793
25.3.5 ServerLayout段 794
25.3.6 xrandr:X伺服器的配置工具 794
25.3.7 核心模式設定 795
25.4 故障排查和調試 795
25.4.1 X的特殊鍵盤組合 795
25.4.2 X伺服器出問題 796
25.5 桌面環境簡述 797
25.5.1 KDE 798
25.5.2 GNOME 798
25.5.3 KDE和GNOME誰更好 799
25.6 推薦讀物 799
25.7 習題 799
第 26章 列印 800
26.1 列印系統的體系結構 801
26.1.1 主要的列印系統 801
26.1.2 列印 801
26.2 CUPS的列印 802
26.2.1 列印系統的界面 802
26.2.2 列印佇列 803
26.2.3 多台印表機和列印佇列 803
26.2.4 印表機實例 803
26.2.5 網路列印 804
26.2.6 過濾器 804
26.2.7 CUPS伺服器的管理 805
26.2.8 設定網路列印伺服器 806
26.2.9 自動配置印表機 806
26.2.10 配置網路印表機 807
26.2.11 印表機的配置舉例 807
26.2.12 設定印表機的類 807
26.2.13 關閉服務 808
26.2.14 其他配置工作 808
26.3 桌面列印環境 809
26.3.1 kprinter:列印文檔 810
26.3.2 Konqueror和列印 810
26.4 SystemⅤ的列印 811
26.4.1 概述 811
26.4.2 列印目的地及列印類 812
26.4.3 lp簡述 812
26.4.4 lpsched與lpshut:啟動和停止列印 812
26.4.5 lpadmin:配置列印環境 813
26.4.6 lpadmin舉例 815
26.4.7 lpstat:獲取狀態信息 815
26.4.8 cancel:刪除列印作業 816
26.4.9 accept和reject:控制假脫機處理 816
26.4.10 enable和disable:控制列印 816
26.4.11 lpmove:轉移作業 817
26.4.12 接口程式 817
26.4.13 lp系統混亂狀況的處理方法 818
26.5 BSD和AIX的列印 818
26.5.1 BSD列印系統的體系結構概述 818
26.5.2 控制列印環境 819
26.5.3 lpd:假脫機列印程式 820
26.5.4 lpr:提交列印作業 820
26.5.5 lpq:查看列印佇列 820
26.5.6 lprm:刪除列印作業 820
26.5.7 lpc:管理性修改 821
26.5.8 /etc/printcap檔案 823
26.5.9 printcap變數 823
26.6 漫長和奇特的歷程 826
26.6.1 列印的歷史和列印系統的出現 826
26.6.2 印表機的多樣性 827
26.7 常用的列印軟體 828
26.8 印表機的語言 829
26.8.1 PostScript 829
26.8.2 PCL 829
26.8.3 PDF 830
26.8.4 XPS 830
26.8.5 PJL 830
26.8.6 印表機驅動程式及其對PDL的處理 831
26.9 PPD檔案 832
26.10 紙型 833
26.11 實際使用印表機的問題 834
26.11.1 印表機的選擇 834
26.11.2 GDI印表機 834
26.11.3 雙面列印 835
26.11.4 其他印表機配件 835
26.11.5 串口和並口印表機 835
26.11.6 網路印表機 836
26.11.7 給印表機的其他建議 836
26.12 故障排查的技巧 838
26.12.1 重啟列印守護進程 838
26.12.2 日誌 839
26.12.3 直接列印的問題 839
26.12.4 網路列印的問題 839
26.12.5 發行版本特有的問題 840
26.13 推薦讀物 840
26.14 習題 841
第 27章 數據中心基礎 842
27.1 數據中心的可靠性級別 843
27.2 冷卻 844
27.2.1 電子設備 844
27.2.2 照明設備 845
27.2.3 操作人員 845
27.2.4 總的熱負荷 845
27.2.5 冷熱通道 845
27.2.6 濕度 846
27.2.7 環境監視 847
27.3 供電 847
27.3.1 機架的供電要求 847
27.3.2 kVA和kW 848
27.3.3 遠程控制 849
27.4 機架 849
27.5 工具 849
27.6 推薦讀物 850
27.7 習題 850
第 28章 綠色IT 852
28.1 綠色IT的興起 853
28.2 綠色IT的生態金字塔 854
28.3 綠色IT策略:數據中心 854
28.3.1 套用合併 855
28.3.2 伺服器合併 856
28.3.3 SAN存儲 856
28.3.4 伺服器虛擬化 856
28.3.5 隨用隨開的伺服器 857
28.3.6 細粒度使用和容量規劃 857
28.3.7 最佳化能源的伺服器配置 857
28.3.8 雲計算 858
28.3.9 免費冷卻 859
28.3.10 數據中心的高效冷卻 859
28.3.11 停運時的降級模式 859
28.3.12 延長設備壽命 859
28.3.13 數據中心的較高溫度 860
28.3.14 低功率設備 860
28.4 綠色IT策略:用戶空間 860
28.5 綠色IT的朋友 862
28.6 習題 862
第 29章 性能分析 863
29.1 做什麼可以提高性能 864
29.2 影響性能的因素 865
29.3 如何分析性能問題 866
29.4 系統性能檢查 867
29.4.1 盤點硬體 867
29.4.2 收集性能數據 869
29.4.3 CPU使用情況分析 870
29.4.4 系統如何管理記憶體 871
29.4.5 記憶體使用情況分析 873
29.4.6 磁碟I/O分析 874
29.4.7 xdd:分析磁碟子系統的性能 876
29.4.8 sar:連續採集和報告統計信息 876
29.4.9 nmon和nmon_analyser:AIX上的監視工具 876
29.4.10 選擇Linux的I/O調度器 877
29.4.11 oprofile:詳細剖析Linux系統 877
29.5 求助!系統為何越來越慢 877
29.6 推薦讀物 879
29.7 習題 879
第30章 同Windows協作 881
30.1 從Windows登錄到UNIX系統 881
30.2 遠程桌面訪問 882
30.2.1 在Windows計算機上運行X伺服器 882
30.2.2 VNC:虛擬網路計算 883
30.2.3 Windows RDP:遠程桌面協定 883
30.3 運行Windows和類似Windows的套用 884
30.3.1 雙重引導,為何不該用 884
30.3.2 微軟Office的替代軟體 885
30.4 在Windows上使用命令行工具 885
30.5 Windows遵守電子郵件和Web標準 885
30.6 通過Samba和CIFS已分享檔案 886
30.6.1 Samba:UNIX的CIFS伺服器 886
30.6.2 Samba的安裝 887
30.6.3 檔案名稱編碼 888
30.6.4 用戶身份驗證 888
30.6.5 基本的檔案共享 889
30.6.6 用戶組共享 889
30.6.7 用微軟的DFS做透明重定向 890
30.6.8 smbclient:簡單的CIFS客戶端 891
30.6.9 Linux的客戶端對CIFS的支持 891
30.7 用Samba共享印表機 892
30.7.1 從Windows安裝印表機驅動程式 893
30.7.2 從命令行安裝印表機驅動程式 894
30.8 調試Samba 894
30.9 Active Directory身份驗證 896
30.9.1 準備好集成AD 896
30.9.2 配置Kerberos 897
30.9.3 Samba作為Active Directory的域成員 898
30.9.4 配置PAM 899
30.9.5 winbind的備選方案 900
30.10 推薦讀物 900
30.11 習題 901
第31章 串列設備和串列終端 902
31.1 RS-232C標準 903
31.2 備選連線器 905
31.2.1 DB-9連線器 905
31.2.2 RJ-45連線器 905
31.3 硬載波和軟載波 906
31.4 硬流控 906
31.5 串列設備檔案 907
31.6 setserial:把串口參數通知給驅動程式 908
31.7 偽終端 909
31.8 硬體終端的配置 909
31.8.1 登錄過程 909
31.8.2 /etc/ttytype檔案 910
31.8.3 /etc/gettytab檔案 911
31.8.4 /etc/gettydefs檔案 911
31.8.5 /etc/inittab檔案 911
31.8.6 Linux上的getty配置 913
31.8.7 Ubuntu的Upstart 913
31.8.8 Solaris和sacadm 914
31.9 特殊字元和終端驅動程式 914
31.10 stty:設定終端的選項 915
31.11 tset:自動設定選項 916
31.12 僵住的終端 916
31.13 調試串列線 917
31.14 連線到串列設備的控制台 917
31.15 習題 918
第32章 管理、政策與政治 919
32.1 IT的目標 919
32.1.1 預算和支出 920
32.1.2 IT政策 920
32.1.3 SLA 921
32.2 IT職能機構的組成 924
32.2.1 基礎:工單和任務管理系統 924
32.2.2 工單系統的常見功能 925
32.2.3 工單的所有權 925
32.2.4 用戶對工單系統的接受程度 926
32.2.5 工單系統舉例 926
32.2.6 工單分派 927
32.2.7 IT內部的技能培養 927
32.2.8 時間管理 928
32.3 諮詢組 928
32.3.1 服務範圍 928
32.3.2 諮詢可用性 929
32.3.3 諮詢上癮 929
32.4 企業構架師 929
32.4.1 過程可再現 929
32.4.2 留下記錄 930
32.4.3 認可文檔的重要性 930
32.4.4 定製和編程 930
32.4.5 保持系統乾淨整潔 930
32.5 運行組 930
32.5.1 瞄準**短停機時間 931
32.5.2 依靠文檔 931
32.5.3 重用或淘汰老硬體 931
32.5.4 維護本地文檔 932
32.5.5 保持環境獨立 934
32.5.6 自動化 934
32.6 管理的職能 935
32.6.1 領導 935
32.6.2 人事管理 936
32.6.3 聘用 936
32.6.4 解聘 937
32.6.5 人事管理的機制 937
32.6.6 質量控制 937
32.6.7 管理但別管閒事 938
32.6.8 社區關係 938
32.6.9 管理上級 939
32.6.10 採購 939
32.6.11 化解矛盾 940
32.7 政策和規程 941
32.7.1 政策和規程之間的區別 941
32.7.2 政策的**佳實踐 942
32.7.3 規程 942
32.8 災難恢復 943
32.8.1 風險評估 943
32.8.2 災難管理 944
32.8.3 處理災難的人員準備 945
32.8.4 電源和HVAC 945
32.8.5 網際網路連線的冗餘性 946
32.8.6 安全事件 946
32.9 合規:規章與標準 947
32.9.1 ITIL:信息技術基礎設施庫 949
32.9.2 NIST:國家標準和技術研究所 949
32.10 法律問題(美國) 949
32.10.1 隱私 950
32.10.2 落實政策 950
32.10.3 控制=義務 951
32.10.4 軟體許可證 951
32.11 組織、會議及其他資源 952
32.12 推薦讀物 953
32.13 習題 953
附錄A 系統管理簡史 955
附錄B 為AIX辯護 962
跋 965