圖書簡介
本書以Red Hat Enterprise Linux Server release 5 (Tikanga)為藍本,全面而詳細地介紹了Linux的基本概念和特點,以及重要安裝步驟、GNOME桌面管理、系統配置、檔案系統、用戶管理、系統管理、網路管理、磁碟管理、Linux常用命令、檔案資源共享、檔案傳輸、遠程訪問與控制、shell編程、C語言編程、Linux系統的安全設定等內容。
本書最大的特點是結合Linux實際套用,講解具有針對性,實用性強。無論是簡單的Linux命令和系統管理,還是語言編程和安全管理,都採用通俗易懂的語言並配以簡單明了的圖片進行介紹,力求把複雜的問題簡單化。同時,本書還穿插了筆者多年來在實際套用Linux過程中積累的大量經驗。
本書內容翔實,結構清晰,語言簡練,實例眾多,既可作為高等院校師生學習Linux的教材,也可作為從事Linux系統網路管理專業技術人員的參考書。
目錄
第1章Linux概述 1
1.1Linux起源與簡介 1
1.2Linux的特性 2
1.2.1Linux的優勢 3
1.2.2Linux流行的原因 6
1.2.3Linux的可移植性 6
1.3Linux的版本類別 7
1.4RedHatLinux的發展趨勢 7
1.5RedHatEnterpriseLinux5 8
1.5.1RedHatEnterpriseLinux5的
版本類別 8
1.5.2RedHatEnterpriseLinux5的
主要功能 8
1.6下載及注意事項 10
1.7系統安裝過程中的幾個重要
步驟 10
1.7.1啟動安裝程式 11
1.7.2分區注意事項 12
1.7.3引導裝載程式設定 13
1.7.4軟體包選擇 14
1.8系統刪除 15
1.9系統啟動、登錄等基本操作 16
1.9.1系統啟動及登錄 16
1.9.2終端模擬、ssh和telnet 18
1.9.3用reboot命令重新啟動
計算機 19
1.9.4用shutdown命令關機或進入
單人維護模式 20
1.10文本模式和圖形化模式的
切換 21
1.11系統登錄時的幾個注意事項 22
1.11.1如何處理登錄失敗 22
1.11.2退出 22
1.11.3更改密碼 22
1.12上機實驗 24
1.13思考練習 24
1.13.1填空題 24
1.13.2選擇題 25
1.13.3問答題 25
第2章GNOME桌面 27
2.1桌面簡介 27
2.1.1通用桌面環境(CDE) 28
2.1.2K桌面環境(KDE) 28
2.1.3GNU網路對象模型環境
(GNOME) 28
2.2桌面和面板 29
2.2.1桌面 29
2.2.2面板 30
2.3設定系統日期和時間 30
2.4掛載移動存儲設備 31
2.5添加/刪除應用程式 32
2.6軟體包更新工具 34
2.7命令行安裝軟體包方法 34
2.8獲取幫助文檔 36
2.8.1--help選項 36
2.8.2man命令顯示系統手冊頁 37
2.8.3info命令顯示工具信息 38
2.8.4HOWTO文檔 40
2.9vim和emacs編輯器 40
2.9.1vim簡介 40
2.9.2vi常用的命令 42
2.9.3emacs 44
2.9.4emacs與vim 45
2.10Webmin 46
2.10.1Webmin簡介 46
2.10.2Webmin的下載與安裝 47
2.10.3安裝設定Webmin 49
2.10.4啟動Webmin 53
2.11RedHatEnterpriseLinux5下的
常用軟體 54
2.12KDE簡介 55
2.13上機實驗 56
2.14思考練習 56
2.14.1填空題 56
2.14.2選擇題 57
2.14.3問答題 57
第3章用戶賬號管理 59
3.1root賬號 59
3.2普通賬號 62
3.2.1創建用戶賬號 63
3.2.2賬號停用 64
3.2.3刪除賬號 65
3.3管理組群 66
3.4用戶管理器 66
3.4.1創建新用戶賬號 67
3.4.2修改已存在的用戶賬號 67
3.4.3刪除或者禁止已存在的用戶
賬號 68
3.4.4添加、修改以及刪除組 69
3.5上機實驗 69
3.6思考練習 70
3.6.1填空題 70
3.6.2選擇題 70
3.6.3問答題 70
第4章檔案系統及目錄許可權設定 71
4.1檔案管理器 71
4.2檔案系統 74
4.2.1檔案系統的類型 74
4.2.2系統目錄簡介 76
4.2.3檔案系統的結構 78
4.2.4檔案名稱 79
4.3檔案及目錄訪問許可權設定 80
4.3.1一般許可權 81
4.3.2特殊許可權 82
4.3.3使用檔案管理器來改變檔案/
目錄的許可權 83
4.3.4使用chmod和數字改變檔案/
目錄的訪問特權 84
4.3.5使用命令chown改變檔案/
目錄的所有權 86
4.5連結 87
4.5.1符號連結 88
4.5.2刪除連結 89
4.6上機實驗 90
4.7思考練習 90
4.7.1填空題 90
4.7.2選擇題 90
4.7.3問答題 90
第5章磁碟空間存儲管理 91
5.1數據存儲簡介 91
5.1.1數據存儲方式 91
5.1.2存儲發展趨勢 92
5.2數據管理 92
5.2.1高可用集群 93
5.2.2備份 93
5.2.3複製 93
5.2.4容災 93
5.2.5遷移 94
5.2.6內容管理 94
5.3RAID 94
5.3.1RAID簡介 94
5.3.2RAID的優點 95
5.3.3RAID級別 95
5.3.4RAID0級(Stripe) 95
5.3.5RAID1級(Mirror) 96
5.3.6RAID1+0 96
5.3.7RAID3 96
5.3.8RAID5級 96
5.4Linux邏輯卷管理 97
5.4.1Linux邏輯卷簡介 97
5.4.2邏輯卷基本原理 97
5.4.3邏輯卷使用舉例 98
5.4.4圖像化邏輯卷管理 100
5.4.5實際空間問題及解決方法 101
5.5Linux磁碟空間管理 101
5.5.1df命令 101
5.5.2du命令 102
5.5.3磁碟使用分析器 103
5.6磁碟掛載 104
5.7上機實驗 104
5.8思考練習 105
5.8.1填空題 105
5.8.2選擇題 105
5.8.3問答題 106
第6章數據資源共享 107
6.1Samba簡介 107
6.2smb.conf檔案說明 108
6.3配置Samba共享服務 115
6.3.1配置share級共享 115
6.3.2配置user級共享 118
6.3.3配置server級伺服器 121
6.3.4配置domain級伺服器 121
6.4Linux分區和Windows分區資源
共享 122
6.4.1從Linux分區訪問Windows
分區 123
6.4.2從Windows分區訪問Linux
分區 123
6.5圖形化配置Samba伺服器 124
6.6Samba相關命令及程式 128
6.6.1smbd 129
6.6.2nmbd 129
6.6.3Smbclient(查看資源共享
情況) 129
6.6.4smbstatus(列出共享資源
使用情況) 130
6.6.5testparm 130
6.6.6smbmount(掛載和卸除共享的
目錄) 130
6.6.7testprns(檢查印表機配置檔案
的正確性) 130
6.7配置Samba列印共享 131
6.7.1配置Samba列印共享 131
6.7.2測試Samba共享印表機配置的
正確性 131
6.7.3配置Windows客戶機訪問
Samba共享印表機 132
6.8上機實驗 134
6.9思考練習 135
6.9.1填空題 135
6.9.2選擇題 135
6.9.3問答題 136
第7章硬體設備管理 137
7.1Linux設備簡介 137
7.2XWindowSystem 138
7.2.1XWindowSystem簡介 138
7.2.2/etc/X11/Xorg.conf檔案 138
7.2.3ServerLayout 141
7.2.4InputDevice 141
7.2.5Device 141
7.2.6Screen 141
7.2.7桌面顯示設定 142
7.2.8設定螢幕解析度 144
7.3配置音效卡 144
7.4配置網卡 146
7.4.1網卡配置步驟 146
7.4.2圖形化配置方式 146
7.4.3手工配置網卡 148
7.4.4安裝雙網卡 149
7.5印表機的配置 151
7.6上機實驗 152
7.7思考練習 152
7.7.1填空題 152
7.7.2選擇題 153
7.7.3問答題 153
第8章基本網路套用 155
8.1網路基礎知識 155
8.2網路基本類型 156
8.2.1區域網路 156
8.2.2城域網 157
8.2.3廣域網 157
8.3拓撲結構 158
8.3.1匯流排拓撲 158
8.3.2星型拓撲 159
8.3.3環型拓撲 160
8.3.4樹型拓撲 161
8.3.5網狀拓撲結構 161
8.4IP位址 162
8.4.1IP位址的劃分 162
8.4.2內部IP位址 163
8.4.3子網掩碼 164
8.5linux常用網路命令 164
8.5.1ping命令 164
8.5.2netstat命令 165
8.5.3ifconfig命令 166
8.5.4route命令 168
8.5.5tcpdump命令 169
8.6接入Internet 170
8.6.1接入Internet方式簡介 170
8.6.2乙太網接入Internet設定 172
8.6.3xDSL連線設定 174
8.7MozillaFirefox瀏覽器 175
8.7.1MozillaFirefox簡介 175
8.7.2設定訪問代理 177
8.8安全級別及防火牆 177
8.8.1Linux防火牆配置 177
8.8.2SELinux設定 179
8.9上機實驗 180
8.10思考練習 180
8.10.1填空題 180
8.10.2選擇題 181
8.10.3問答題 181
第9章系統管理 183
9.1查看用戶行為 183
9.1.1查看系統當前的線上用戶 185
9.1.2查看曾經登錄系統的用戶 185
9.2系統性能監控 186
9.2.1top命令 186
9.2.2使用top監視特定用戶 187
9.2.3終止執行中的進程 188
9.2.4使用系統監視器 189
9.3系統進程管理 191
9.3.1捕獲進程狀態 191
9.3.2查看較詳細的說明 191
9.3.3查看其他用戶的進程 192
9.3.4查看後台執行的進程 192
9.3.5將進程清單排序 193
9.3.6搭配其他命令查詢進程 193
9.3.7刪除進程 193
9.3.8控制進程優先權 195
9.4系統日誌管理 196
9.4.1日誌檔案介紹 196
9.4.2日誌配置檔案 197
9.4.3配置檔案的種類和優先權 198
9.4.4配置檔案的格式 199
9.4.5圖形化管理系統日誌 200
9.5系統服務管理 201
9.5.1運行、重啟和停止某個
服務 201
9.5.2使某個服務在系統啟動時
自運行或停止 201
9.6系統連線埠管理 202
9.6.1連線埠分類 202
9.6.2查看連線埠 203
9.6.3關閉/開啟連線埠 203
9.6.4常用連線埠 203
9.7上機實驗 205
9.8思考練習 205
9.8.1填空題 205
9.8.2選擇題 206
9.8.3問答題 206
第10章Linux常用命令 207
10.1終端視窗簡介 207
10.2檔案目錄操作命令 208
10.2.1cat 209
10.2.2chgrp 209
10.2.3chmod 209
10.2.4chown 209
10.2.5clear 209
10.2.6cmp 209
10.2.7cp 209
10.2.8cut 210
10.2.9diff 210
10.2.10du 210
10.2.11file 210
10.2.12find 210
10.2.13head 211
10.2.14In 211
10.2.15less 211
10.2.16locate 211
10.2.17ls 211
10.2.18mkdir 212
10.2.19more 212
10.2.20rmkdir 213
10.2.21mv 213
10.2.22pico 213
10.2.23pwd 213
10.2.24rm 213
10.2.25sort 214
10.2.26stat 214
10.2.27strings 214
10.2.28tail 214
10.2.29touch 214
10.2.30umask 215
10.2.31uniq 215
10.2.32vi 215
10.2.33wc 215
10.2.34whereis 215
10.2.35man 215
10.2.36dd 215
10.2.37df 215
10.2.38edquota 216
10.2.39fdformat 216
10.2.40fdisk 216
10.2.41mkfs 216
10.2.42mkswap 216
10.2.43mount 216
10.2.44quota 216
10.2.45swapon,swapoff 216
10.2.46quotaon,quotaoff 216
10.2.47umount 217
10.3信息顯示命令 217
10.3.1dmesg 217
10.3.2mesg 218
10.3.3free 218
10.3.4shutdown 218
10.3.5uname 218
10.3.6uptime 218
10.3.7data 218
10.3.8who 219
10.3.9whoami 219
10.3.10last 219
10.3.11su 219
10.3.12cal 219
10.3.13write 220
10.4備份壓縮的命令 220
10.4.1zip、gzip和gunzip 220
10.4.2tar 221
10.5系統管理命令 223
10.5.1finger 223
10.5.2ftp 223
10.5.3host 223
10.5.4hostname 223
10.5.5ifconfig 224
10.5.6mail 224
10.5.7netstat 224
10.5.8ping 224
10.5.9rlogin 224
10.5.10rcp 225
10.5.11route 225
10.5.12tcpdump 225
10.5.13talk 225
10.5.14telnet 225
10.5.15wall 225
10.5.16wget 225
10.5.17&,bg 226
10.5.18fg 226
10.5.19jobs 226
10.5.20kill 226
10.5.21ps 227
10.5.22top 227
10.5.23at、batch、atq、atrm 227
10.6DOS和Linux常用命令
對比 227
10.7上機實驗 228
10.8思考練習 228
10.8.1填空題 228
10.8.2選擇題 229
10.8.3問答題 229
第11章shell及shell編程 231
11.1shell簡介 231
11.2bash基本命令 233
11.3shell變數類型 234
11.3.1預定義變數 234
11.3.2環境變數 235
11.3.3用戶變數 236
11.3.4參數變數 236
11.4shell編程比較語句 237
11.4.1字元串比較 237
11.4.2數值的比較 237
11.4.3邏輯操作 237
11.4.4檔案操作 238
11.5控制程式執行流程的語句 238
11.5.1if條件語句 238
11.5.2for循環 239
11.5.3while和until循環 239
11.5.4case條件選擇 240
11.5.5無條件控制語句break和
continue 240
11.6函式 241
11.7運行shell程式的方法 241
11.8信號或中斷處理 242
11.9bashshell程式的調試 243
11.10上機實驗 243
11.11思考練習 244
11.11.1填空題 244
11.11.2選擇題 244
11.11.3問答題 244
第12章Linux下的編程 245
12.1GCC編譯器 246
12.1.1GNUC編譯器簡介 246
12.1.2GCC約定規則 246
12.1.3GCC的基本用法 246
12.1.4GCC的基本選項 247
12.1.5GCC編譯程式舉例 248
12.1.6GCC的錯誤類型及對策 250
12.2GNUmake 251
12.2.1GNUmake簡介 251
12.2.2makefile基本結構 253
12.2.3makefile變數 253
12.2.4運行make 254
12.3GDB 255
12.3.1GDB簡介 255
12.3.2基本GDB命令 255
12.3.3啟動GDB 256
12.3.4GDB調試程式過程 257
12.3.5GDB調試舉例 259
12.4上機實驗 262
12.5思考練習 263
12.5.1填空題 263
12.5.2選擇題 264
12.5.3問答題 264
第13章檔案傳輸 265
13.1FTP簡介 265
13.1.1anonymous(匿名賬號) 266
13.1.2real(真實賬號) 266
13.1.3guest(虛擬賬號) 266
13.2安裝與啟動vsftpd 266
13.3vsftpd.conf說明 267
13.4匿名賬號伺服器配置 271
13.4.1簡單的匿名賬號伺服器
配置 271
13.4.2配置匿名賬號上傳功能 275
13.4.3連線伺服器的最大並發連線數
和用戶的最大執行緒數
設定 278
13.4.4匿名用戶的最大傳輸速率
設定 278
13.4.5禁止某些IP段的匿名用戶訪問
FTP伺服器 278
13.4.6僅允許匿名用戶訪問 279
13.4.7用ASCII方式傳送數據
設定 281
13.4.8設定各種歡迎信息 281
13.4.9設定數據傳輸中斷的時間
間隔 283
13.5真實賬號伺服器配置 283
13.5.1限制用戶列表內的用戶訪問
FTP伺服器 283
13.5.2更改FTP伺服器默認的
連線埠號 285
13.5.3限制用戶訪問特定的
目錄 286
13.6客戶端訪問FTP伺服器 288
13.6.1通過Windows客戶端訪問FTP
伺服器 288
13.6.2通過Linux客戶端訪問FTP
伺服器 293
13.7上機實驗 296
13.8思考練習 297
13.8.1填空題 297
13.8.2選擇題 297
13.8.3問答題 297
第14章遠程控制與管理 299
14.1VPN簡介 299
14.2VPN的類型 300
14.2.1VPDN(VirtualPrivateDial
Network) 300
14.2.2IntranetVPN 300
14.2.3ExtranetVPN 301
14.3VPN的特點 301
14.4VPN的隧道協定類型 301
14.4.1PPTP/L2TP 302
14.4.2IPSec 302
14.4.3SOCKSv5 303
14.5VPN安裝與啟動 304
14.5.1安裝PPP 304
14.5.2安裝pptpd 305
14.5.3相關配置檔案 305
14.5.4啟動VPN服務 305
14.6VPN伺服器配置 305
14.6.1啟動Linux核心的路由
功能 305
14.6.2配置/etc/pptpd.conf檔案 305
14.6.3配置/etc/ppp/chap-secrets
檔案 306
14.7VPN客戶端配置 306
14.7.1客戶端基本配置 306
14.7.2連線VPN伺服器 307
14.8VNC(VirtualNetworkComputing)
簡介 308
14.9Linux下配置VNC伺服器 309
14.10Linux客戶端訪問VNC
伺服器 309
14.11Openssh簡介 310
14.12配置Openssh伺服器 311
14.13使用ssh遠程管理Linux
伺服器 314
14.14上機實驗 315
14.15思考練習 315
14.15.1填空題 315
14.15.2選擇題 315
14.15.3問答題 316
第15章系統安全加固 317
15.1GRUB與LILO安全設定 317
15.2賬號安全設定 319
15.2.1設定默認口令和賬號的長度及
有效期 319
15.2.2清除不設口令的賬號 320
15.2.3特別賬號處理 321
15.3重要系統檔案的安全設定 322
15.3.1許可權與檔案系統 322
15.3.2設定自動註銷賬號的
登錄 322
15.3.3禁止外來ping請求,防止被
攻擊 324
15.3.4設定檔案/etc/host.conf,防止IP
欺騙 324
15.3.5禁止任何人su作為root 325
15.3.6禁止使用Ctrl+Alt+Delete
重啟機器 325
15.3.7截短以前使用的命令
列表 327
15.4系統開啟服務的安全 327
15.4.1用命令方式檢查和關閉開啟
的服務 328
15.4.2直接修改腳本檔案 331
15.4.3使用“服務配置”工具 333
15.5連線伺服器時的安全事項 333
15.6系統連線埠安全 334
15.6.1連線埠分類 334
15.6.2易受攻擊的連線埠 335
15.7日誌檔案的安全 338
15.7.1Linux下的日誌子系統 339
15.7.2常用的日誌檔案和命令 339
15.7.3進程統計 342
15.7.4日誌檔案的安全 343
15.8上機實驗 343
15.9思考練習 344
15.9.1填空題 344
15.9.2選擇題 344
15.9.3問答題 345
附錄思考練習參考答案 345
RedHatEnterpriseLinux實用教程
目錄