內容簡介
目前各種類型的Linux系統在其套用領域中都有著長足的發展,特別是在信息安全越來越重要的今天。本書作為一本
Linux的入門書籍,主要面向Linux在伺服器及個人套用領域的初學者,希望讀者在認真學習後可以掌握Linux的基本操作及一些常見服務的安裝配置方法。
本書由淺入深地講解Linux系統的安裝部署、桌面套用、基礎操作、Shell腳本、常用服務等相關知識。本書從初學者的角度詳細地講解每一個操作步驟,力求讓讀者可以更加清楚、準確了解整個操作過程。
本書適合Linux初、中級用戶參考學習,也可作為高等院校電子類、信息類、計算機類等專業的Linux教材。
宣傳語
深入淺出,依靠深厚行業經驗講透技術原理
循序漸進,詳解典型套用案例提升實戰能力
前 言
在20世紀70年代,
UNIX體系的源程式大多是開放的,網際網路的基礎協定
TCP/IP就是產生於那個年代。在當時,人們在創作各自的“程式作品”中享受著從事科學探索、創新活動所特有的那種激情和成就感。那時的程式設計師,如同藝術家一樣,急於“發表”自己的程式作品,並不專注於保守“機密”,以換取高額利潤。
1979年,AT&T宣布了UNIX的商業化計畫,隨之出現了各種二進制的商業UNIX版本。於是就興起了基於
二進制機讀代碼的“著作權產業”(Copyright Industry),使軟體業成為一種著作權專有式的產業,圍繞程式開發的那種創新活動被局限在某些骨幹企業的小圈子裡,源碼程式被視為核心“商業機密”。這種做法,一方面產生了大批的商業軟體,極大地推動了軟體業的發展,誕生了一批軟體巨人;另一方面,由於封閉式的開發模式,也阻礙了軟體業的進一步深化和提高。由此,人們為商業軟體的“專有權”付出了巨大的代價。
1983年,理查·馬修·斯托曼(Richard Stallman)創立了
GNU計畫。這個計畫有一個目標,是為了發展一個完全免費自由的
類UNIX作業系統。1991年,
李納斯·托瓦茲(Linus Torvalds)編寫出了與
UNIX兼容的Linux作業系統核心並在
GPL條款下發布。之後
Linux在網上廣泛流傳,許多
程式設計師參與了開發與修改。
1992年,Linux與其他GNU軟體結合,完全自由的作業系統正式誕生。該作業系統往往被稱為“
GNU/Linux”或簡稱Linux。
伴隨著網際網路的發展,Linux得到了來自全世界軟體開好者、組織、公司的支持。起初,Linux主要被用做伺服器的作業系統,但是現在Linux除了在
伺服器作業系統方面保持著強勁的發展勢頭以外,在個人電腦、上網本、嵌入式系統上都有著長足的進步。
有很多計算機的愛好者對
Linux的印象還停留在多年前,認為Linux使用起來有一定的難度,只有水平很高的用戶才可以使用。創作本書的目的也在於此,希望廣大讀者通過學習本書可以認識到Linux並不是想像中那么難,只是在操作習慣上有一些區別。
作者介紹
張勤:
MCSE、
MCDBA、
RHCE,2004年以前主要從事軟體開發(Delphi、Java)及項目管理工作,2004年以後主要從事系統集成工作。在國內多個知名IT網站發表技術類文章,並已出版《
Linux伺服器配置全程實錄》、《開源IT系統及套用架構寶典——系統、工具、案例》兩本著作。
本書特點
目前各種類型的Linux系統在其套用領域中都有著長足的發展,特別是在信息安全越來越重要的今天。本書作為一本
Linux的入門書籍,主要針對Linux在伺服器及個人套用領域的初學者,希望讀者在認真學習後可以掌握Linux的基本操作及一些常見服務的安裝配置方法。本書主要具有以下特點。
Linux系統日常的維護工作一般都是通過命令完成的,對於初學者來說記憶這些命令是一件很困難的事情,所以本書中對所有命令都會標明一個常用指數,方便讀者有選擇地記憶Linux命令。常用指數包括:“ ”表示最常用的命令,這種命令需要熟悉其使用方法;“ ”表示次常用的命令,需要掌握基本用法,具體操作在使用時可查閱幫助;“ ”表示很少使用的命令,可在需要時查閱幫助。
內容豐富。本書由淺入深地講解Linux系統的安裝部署、桌面套用、基礎操作、Shell腳本、常用服務的相關知識。
詳細的操作步驟。本書從初學者的角度詳細地講解每一個操作步驟,力求讓讀者可以更加清楚、準確地了解整個操作過程。
在本書附贈的光碟中包括配合本書使用的教學課件及測試習題,可以作為學校或培訓機構使用的教材。
附贈光碟內容
本書附贈光碟中主要包括以下內容,希望通過這些內容方便讀者閱讀和使用本書。
(1)教學課件。位於光碟PPT目錄(檔案名稱:chapXX-章節名稱.
pptx)下,包括書中所有章節教學使用的課件。
(2)測試習題。位於光碟Exam目錄下,包括書中每章測試習題(檔案名稱:chapXX.pdf)的電子版及三套綜合測試題(檔案名稱:examXX.pdf)。
(3)實驗錄像。位於光碟Video目錄下,包括書中各章節的操作錄像。
VMware Workstation基本套用:光碟\Video\第2章\2.1 VMware Workstation基本套用.mp4
安裝RHEL5.4:光碟\Video\第2章\2.2 安裝.mp4
vi基本操作:光碟\Video\第3章\3.1 vi基本操作.mp4
使用
SSH管理Linux:光碟\Video\第3章\3.2 .mp4
使用遠程桌面連線Windows:光碟\Video\第3章\3.3 .mp4
目錄操作命令:光碟\Video\第4章\4.1 目錄操作命令.mp4
檔案操作命令:光碟\Video\第4章\4.2 檔案操作命令.mp4
查找操作命令:光碟\Video\第4章\4.3 查找操作命令.mp4
壓縮與歸檔命令:光碟\Video\第4章\4.4 壓縮與歸檔命令.mp4
文本查看命令:光碟\Video\第4章\4.5 文本查看命令.mp4
用戶及用戶組管理命令:光碟\Video\第5章\5.1 用戶及用戶組管理命令.mp4
用戶切換:光碟\Video\第5章\5.2 用戶切換.mp4
檔案及目錄許可權管理:光碟\Video\第6章\6.1 檔案及目錄許可權管理.mp4
檔案及目錄ACL功能:光碟\Video\第6章\6.2 檔案及目錄ACL功能.mp4
創建及格式化分區:光碟\Video\第7章\7.1 創建及格式化分區.mp4
掛載分區:光碟\Video\第7章\7.2 掛載分區.mp4
管理交換分區:光碟\Video\第7章\7.3 管理
交換分區.mp4
讀寫
NTFS分區:光碟\Video\第7章\7.4 讀寫NTFS分區.mp4
創建RAID陣列:光碟\Video\第7章\7.5 創建RAID陣列.mp4
創建及管理
LVM:光碟\Video\第7章\7.6 創建及管理.mp4
管理
磁碟配額:光碟\Video\第7章\7.7 管理磁碟配額.mp4
常見軟體安裝方法:光碟\Video\第8章\8.1 軟體安裝.mp4
修復root用戶密碼:光碟\Video\第10章\10.1 修復root用戶密碼.mp4
修復損壞的boot分區:光碟\Video\第10章\10.2 修復boot分區.mp4
自動化任務:光碟\Video\第10章\10.3 自動化任務.mp4
DHCP服務配置:光碟\Video\第12章\12.1 DHCP服務配置.mp4
BIND服務配置:光碟\Video\第13章\13.1 BIND服務配置.mp4
NFS服務配置及客戶端訪問:光碟\Video\第14章\14.1 NFS服務配置及客戶端訪問.mp4
FTP服務配置身份驗證:光碟\Video\第15章\15.1 FTP服務配置身份驗證.mp4
Samba服務共享配置及客戶端訪問:光碟\Video\第16章\16.1 Samba服務共享配置及客戶端訪問.mp4
Samba服務
訪問控制:光碟\Video\第16章\16.2 Samba對調.mp4
Samba服務用戶及許可權配置:光碟\Video\第16章\16.2 Samba對調.mp4
Apache服務配置虛擬主機:光碟\Video\第17章\17.1 Apache服務配置虛擬主機.mp4
Apache服務配置用戶認證:光碟\Video\第17章\17.2 Apache服務配置用戶認證.mp4
Apache服務配置訪問控制:光碟\Video\第17章\17.3 Apache服務配置
訪問控制.mp4
Apache服務配置HTTPS:光碟\Video\第17章\17.4 Apache服務配置.mp4
使用源碼包搭建LAMP:光碟\Video\第17章\17.5 Apache&MySQL&PHP(Make).mp4
Squid服務配置正向代理:光碟\Video\第18章\18.1 Squid服務配置
正向代理.mp4
Squid服務配置
反向代理:光碟\Video\第18章\18.2 Squid服務配置反向代理.mp4
讀者對象
本書非常適合對Linux有興趣的初學者、Linux套用愛好者,同時也適合其他相關從業人員,如大、中專院校
計算機專業師生、培訓機構作為參考教材使用。
聯繫我們
初學者在接觸和使用
Linux系統時,一開始總會遇到各種各樣的問題,本書中儘可能多地講述可能遇到的問題,但限於時間及作者的水平,書中難免會存在一些問題,懇請各位讀者批評與指正,同時也希望和大家共同學習進步。關於本書的任何問題或意見歡迎與本書作者聯繫,我們將儘快回復您的郵件。
目 錄
第1章 前世今生——Linux系統簡介 1
1.1 Linux誕生記 2
1.2 Linux成長記 3
1.3 百家爭鳴的Linux發行版 3
1.3.1 Debian 4
1.3.2 Ubuntu 6
1.3.3 SuSE/openSuSE 8
1.3.4 RHEL 9
1.3.5 紅旗Linux 10
1.3.6 CentOS 11
1.3.7 Fedora 12
1.3.8 為什麼選擇RHEL 5.x 13
1.5 小企鵝大身手 16
第2章 開門見山——Linux系統安裝 18
2.1 使用VMware Workstation搭建測試環境 19
2.1.2 虛擬機基本操作 26
2.2.1 Linux磁碟分區 34
2.3 打造RHEL 5.x平台 38
2.3.1 RHEL 5.x安裝方式 38
2.3.2 RHEL 5.x安裝與登錄 39
2.3.3 命令輸入 49
2.3.4 VMware Tools安裝 51
2.4 Windows 7/Fedora 12和平共處 51
2.5 實驗任務 60
3.1 玩轉桌面 62
3.1.1 桌面環境 62
3.1.2 瀏覽器 65
3.1.3 聊天軟體 68
3.1.4 郵件客戶端 70
3.1.5 辦公軟體 72
3.1.6 PDF查看 76
3.1.7 媒體播放 78
3.2 文本編輯器 82
3.2.1 Gedit編輯器使用 82
3.3 天涯若比鄰 90
3.3.1 Telnet 90
3.3.2 SSH 92
3.3.3 RDP 96
3.4 Linux命令基礎 97
3.4.1 Linux命令分類 98
3.4.2 Linux命令格式 98
3.4.3 Linux命令輔助操作 99
3.4.4 Linux命令幫助獲取 100
3.5 實驗任務 103
3.6 本章測試 103
第4章 管好家產——
Linux目錄及檔案管理 105
4.1 Linux系統常見目錄 106
4.2 目錄結構及操作命令 107
4.2.1 Nautilus工具 107
4.2.2 pwd:查看當前目錄 108
4.2.3 cd:改變當前目錄 108
4.2.4 ls:顯示目錄內容 109
4.2.5 mkdir:創建目錄 111
4.2.6 tree:以樹狀圖顯示目錄內容 112
4.3 檔案操作命令 113
4.3.1 touch:改變檔案或目錄時間 113
4.3.2 file:識別檔案類型 114
4.3.3 cp:複製檔案或目錄 114
4.3.4 rm:刪除檔案或目錄 115
4.3.5 mv:移動或更名現有的檔案或目錄 116
4.3.6 ln:連結檔案或目錄 117
4.4 查找操作命令 118
4.4.1 locate:查找檔案或目錄 118
4.4.2 which:查找檔案 118
4.4.3 whereis:查找檔案 119
4.4.4 find:查找檔案或目錄 120
4.5 壓縮與歸檔命令 123
4.5.1 gzip:壓縮檔案 123
4.5.2 bzip2:壓縮檔案 124
4.5.3 tar:壓縮備份 125
4.5.5 rar/unrar:
RAR檔案壓縮與解壓 129
4.6 文本查看命令 134
4.6.1 cat:顯示檔案內容 134
4.6.2 head:顯示檔案內容的最前部分 135
4.6.3 tail:顯示檔案內容的末尾部分 135
4.6.4 more:逐頁顯示檔案內容 136
4.6.5 less:逐頁顯示檔案內容 137
4.6.6 grep:查找並顯示符合條件的內容 138
4.7 實驗任務 140
4.8 本章測試 141
5.1 Linux用戶及組管理方式 144
5.1.1 用戶管理方式 144
5.1.2 用戶組管理方式 145
5.1.3 相關配置檔案/目錄 145
5.2 用戶及用戶組管理命令 148
5.2.1 useradd:建立用戶 148
5.2.2 passwd:更改用戶密碼 150
5.2.3 usermod:更改用戶信息 151
5.2.4 userdel:刪除用戶 152
5.2.5 groupadd:建立用戶組 152
5.2.6 groupmod:更改
GID及組名稱 153
5.2.7 groupdel:刪除用戶組 153
5.2.8 chage:修改用戶密碼策略 154
5.2.9 finger:查找並顯示用戶信息 154
5.2.10 w:顯示當前登錄系統的用戶及用戶進程信息 155
5.2.11 who:顯示當前登錄系統的用戶信息 156
5.2.12 last:顯示當前及過去登錄系統的用戶信息 156
5.3 用戶切換 157
5.3.1 su:切換用戶 157
5.3.2 sudo:以其他用戶身份執行命令 159
5.4 實驗任務 161
5.5 本章測試 162
第6章 看家護院——
Linux目錄及檔案許可權管理 163
6.1 Linux目錄及檔案許可權管理方式 164
6.1.1 目錄及檔案的所有者及擁有組 164
6.1.2 目錄及檔案許可權類型 164
6.1.3 目錄及檔案許可權特性 165
6.2 檔案及目錄所有者/擁有組/許可權管理 168
6.2.1 chgrp:更改目錄或檔案的擁有組 168
6.2.2 chown:更改目錄或檔案的所有者或擁有組 169
6.2.3 chmod:更改目錄或檔案許可權 170
6.3 目錄及檔案高級許可權管理 172
6.3.2 特殊許可權 173
6.3.3 ACL 175
6.4 實驗任務 184
6.5 本章測試 185
第7章 我的地盤我做主——
Linux磁碟及檔案系統管理 187
7.1.1 Linux硬碟管理方式 188
7.1.2 通過命令對磁碟進行分區 189
7.2.1 Linux支持的檔案系統 196
7.2.2 ext3檔案系統 198
7.2.3 ext4檔案系統 199
7.3 創建檔案系統 200
7.3.1 創建msdos檔案系統 200
7.4.1 掛載及卸載設備 203
7.4.2 /etc/
fstab配置檔案掛載檔案設備 206
7.4.3 自動掛載 207
7.5 查看檔案系統 208
7.5.1 df:顯示分區的使用情況 208
7.5.2 du:顯示檔案或目錄占用空間 209
7.6.1 建立專用的交換分區 211
7.6.2 使用交換檔案 212
7.8 RAID管理 213
7.8.2 在安裝時創建RAID陣列 216
7.8.3 使用mdadm命令創建RAID陣列 217
7.9 LVM管理 220
7.9.1 LVM創建流程 220
7.9.2 在安裝時創建LVM 221
7.9.3 LVM相關命令 222
7.9.4 LVM建立與維護 226
7.10.1 磁碟配額相關命令 230
7.10.2 磁碟配額步驟 233
7.11 實驗任務 234
7.12 本章測試 234
第8章 不只是下一步——
Linux軟體安裝及管理 236
8.1 Linux軟體常見安裝方式 237
8.2 RPM方式安裝軟體 237
8.2.1 RPM命名規則 237
8.2.3 維護RPM資料庫 244
8.3 YUM方式安裝軟體 244
8.3.1 YUM倉庫配置 245
8.3.2 YUM客戶端配置 246
8.3.3 YUM客戶端使用 247
8.4 源碼包方式安裝軟體 249
8.4.1 編譯RPMs包 249
8.4.2 編譯tar包 250
8.5 實驗任務 251
8.6 本章測試 252
9.1 常見的Shell 254
9.2 bash Shell 254
9.2.1 命令列表 254
9.2.3 命令別名 256
9.2.4 命令替換 257
9.2.6 標準輸入/輸出及管道 259
9.3.1 正則表達式基本概念 263
9.3.2 表達式全集 263
9.3.3 正則表達式實例 265
9.4 高級文本處理命令 267
9.4.1 tr:轉換或刪除指定內容 267
9.4.2 sort:將顯示內容排序 268
9.4.3 cut:顯示指定的內容 269
9.4.4 split:拆分檔案 270
9.5.1 變數 272
9.5.2 條件測試 275
9.5.4 函式 283
9.5.5 腳本實例 284
9.6 實驗任務 289
9.7 本章測試 289
第10章 識骨尋蹤——Linux引導及
進程管理 291
10.1 Linux引導過程 292
10.1.2 載入引導程式 293
10.1.3 載入核心 295
10.1.4 root用戶密碼丟失 300
10.1.5 修復損壞的/boot分區 302
10.2 Shell初始化 305
10.4 /proc目錄詳解 308
10.5 Linux服務類型 311
10.5.1 Standalone服務 311
10.5.2 Transient服務 316
10.6.1 Linux進程查看 321
10.6.2 Linux進程管理 331
10.7 Linux作業管理 334
10.8 自動化任務管理 335
10.8.1 一次性任務管理 335
10.8.2 周期性任務管理 337
10.9 Linux系統日誌 339
10.9.1 Linux日誌等級及設施 339
10.9.2 syslog服務 340
10.9.3 syslog日誌格式 340
10.9.4 循環日誌 341
10.9.5 核心日誌 342
10.9.6 自定義日誌 342
10.10 實驗任務 343
10.11 本章測試 343
第11章 開山鋪路——Linux網路管理 345
11.1.1 網路接口 346
11.1.2 配置網路接口 348
11.1.3 IP別名 350
11.2 主機名配置 352
11.4 ARP配置 354
11.5.1 ping:測試網路連通性 355
11.5.2 nslookup:檢查DNS查詢結果 356
11.5.3 traceroute:顯示數據包到達目標的路徑 357
11.5.4 tcpdump:監視網路傳輸數據 358
11.5.5 wireshark 359
11.6 圖形化管理Linux網路參數 365
11.7 實驗任務 366
11.8 本章測試 366
12.1 DHCP基礎 369
12.2 DHCP服務安裝 370
12.3 DHCP服務配置 371
12.3.1 作用域配置 372
12.3.2 選項配置 374
12.3.3 保留配置 376
12.3.4 中繼代理配置 378
12.3.5 其他配置 380
12.4 客戶端配置 382
12.4.1 Linux平台 383
12.4.2 Windows平台 383
12.5 實驗任務 384
12.6 本章測試 385
第13章 王者風範——BIND服務配置 387
13.1 DNS基礎 388
13.1.1 DNS結構 388
13.1.2 DNS查詢過程 389
13.1.3 DNS記錄 390
13.2 BIND服務安裝 391
13.3 BIND服務配置 392
13.3.1 BIND配置檔案結構 392
13.3.3 從DNS伺服器配置 402
13.3.4 快取DNS伺服器配置 404
13.4 客戶端名稱解析順序 406
13.4.1 Linux平台名稱解析順序 406
13.4.2 Windows平台名稱解析順序 406
13.5 客戶端配置 407
13.5.1 Linux平台 407
13.5.2 Windows平台 407
13.6 實驗任務 409
13.7 本章測試 410
第14章 太陽光輝——NFS服務配置 411
14.1 NFS服務配置 412
14.1.1 NFS唯讀共享 413
14.1.2 NFS可寫共享 414
14.1.3 用戶訪問許可權 414
14.2 客戶端訪問 415
14.2.1 Linux平台 415
14.2.2 Windows平台 416
14.3 實驗任務 418
14.4 本章測試 419
15.1 FTP基礎 422
15.2 vsftpd服務安裝 422
15.3 vsftpd服務配置 423
15.3.1 身份驗證 424
15.3.2 其他配置 426
15.4 客戶端訪問 429
15.4.1 使用瀏覽器 429
15.4.2 使用命令 430
15.4.3 使用FTP客戶端工具軟體 432
15.5 實驗任務 433
15.6 本章測試 433
第16章 桑巴起舞——Samba服務配置 435
16.1 Samba服務安裝 436
16.2 Samba服務配置 437
16.2.1 資源共享配置 437
16.2.2 用戶認證 439
16.2.3 許可權控制 440
16.2.5 其他配置 446
16.3 客戶端訪問 448
16.3.1 Linux平台 449
16.3.2 Windows平台 451
16.4 實驗任務 452
16.5 本章測試 453
第17章 最流行的Web伺服器——
Apache服務配置 456
17.1 Apache服務安裝 457
17.2 Apache服務配置 457
17.2.1 基本Web服務 459
17.2.2 虛擬主機 460
17.2.3 身份驗證 462
17.2.5 HTTPS配置 465
17.2.6 LAMP配置 466
17.3 Web相關命令 471
17.3.1 wget:非互動式Web下載工具 471
17.3.2 links:純文本Web瀏覽器 472
17.4 實驗任務 473
17.5 本章測試 473
第18章 可愛的章魚——Squid代理服務配置 476
18.1 Squid服務安裝 477
18.2 Squid服務配置 477
18.2.1 正向代理伺服器配置 478
18.2.2 反向代理伺服器配置 480
18.2.3 透明代理伺服器 482
18.3 客戶端訪問 487
18.3.1 IE瀏覽器 487
18.3.2 FireFox瀏覽器 488
18.4 實驗任務 490
18.5 本章測試 491
19.1 IPTables工作流程 494
19.1.1 filter表 498
19.1.2 nat表 499
19.1.3 mangle表 499
19.1.4 raw表 500
19.2 IPTables狀態機制 500
19.2.1 NEW狀態 500
19.2.2 ESTABLISHED狀態 501
19.2.3 RELATED狀態 501
19.2.4 INVALID狀態 501
19.2.5 UNTRACKED狀態 501
19.3 IPTables配置 501
19.3.1 IPTables開啟與關閉 501
19.3.2 IPTables策略配置 502
19.3.3 Firewall Builder 514
19.4 實驗任務 518
19.5 本章測試 519