Linux系統最佳實踐工具

Linux系統最佳實踐工具

《Linux系統最佳實踐工具》是電子工業出版社出版的圖書,作者是曹江華。

基本介紹

  • 書名:Linux系統最佳實踐工具
  • 作者:曹江華
  • ISBN:9787121081248
  • 頁數:727
  • 出版社:電子工業出版社
  • 出版時間:2009年3月1日
  • 裝幀:平
  • 開本:16
簡介,目錄,

簡介

對於某些用戶和執行某些任務來說,使用圖形界面更容易、更簡潔。這實際上依賴於你要做什麼和你是誰。圖形用戶界面和命令行之間的區別就像極品飛車遊戲的自動駕駛與自己使用技巧玩一樣。不過還是建議你自己慢慢地打任務。這樣更有意思,而且你會慢慢地發現自己的技術提高了很多,包括漂移,你多玩就會領悟很多技巧,如果直接下載補丁的話就沒有太多的樂趣了。
初級Linux用戶多將矛頭指向相對圖形界面缺乏的UNIX的時候,多少人發出疑問:為何要死守命令行?我們說一個簡單的邏輯:圖形界面人機互動好,圖形界面簡單,圖形界面在某些任務方面,確實是高效而且簡單的,但是,某些任務方面,圖形界面是無能的......>>

目錄

第1部分 Linux基礎
第1章 LINUX簡介 1
1.1 Linux簡介 1
1.1.1 UNIX作業系統的誕生 1
1.1.2 Minix作業系統 2
1.1.3 GNU早期簡史 3
1.1.4 POSIX標準歷史 3
1.1.5 Linux概述 4
1.1.6 Linux和開源軟體的商業化 5
1.1.7 Linux和開源軟體的商業模式 6
1.2 Linux核心和Linux發行版本 7
1.2.1 Linux發行版本概述 7
1.2.2 Linux核心的變遷 8
1.2.3 Linux主要發行版本 9
1.3 Linux的優勢 12
1.4 小結 14
第2部分 從系統管理角度學習Linux命令
第2章 LINUX檔案系統及其相關處理命令 15
2.1 Linux的檔案系統介紹 15
2.1.1 檔案系統定義 15
2.1.2 Linux檔案系統的體系結構 15
2.1.3 Linux檔案系統結構 16
2.1.4 /proc檔案系統 18
2.1.5 Linux檔案系統的組成 19
2.1.6 檔案類型 20
2.1.7 檔案系統的特性 21
2.1.8 Linux主流檔案格式 22
2.2 查看當前Linux支持的檔案類型 26
2.2.1 ls:顯示檔案名稱 26
2.2.2 cat:顯示文本檔案內容 28
2.2.3 rm:刪除檔案 30
2.2.4 less:分屏顯示檔案 30
2.2.5 cp:複製檔案 31
2.2.6 mv:更改檔案名稱 33
2.2.7 grep:查找字元串 33
2.2.8 head:顯示檔案頭部 35
2.2.9 tail:顯示檔案尾部 35
2.2.10 sort:按順序顯示檔案內容 36
2.2.11 uniq:忽略檔案中的重複行 37
2.2.12 diff:比較兩個檔案 37
2.2.13 diffstat命令:diff結果的統計
2.2.13 信息 39
2.2.14 file:測試檔案內容 39
2.2.15 echo:顯示文本 40
2.2.16 date:顯示日期和時間 41
2.2.17 script:記錄Linux會話信息 42
2.2.18 apropos:搜尋關鍵字 43
2.2.19 locate:搜尋檔案 43
2.2.20 rmdir:刪除目錄 44
2.2.21 basename:顯示檔案或者目錄的
2.2.21 基本名稱 44
2.2.22 chattr:改變檔案的屬性 45
2.2.23 cksum:檔案的CRC校驗 46
2.2.24 cmp:比較檔案差異 47
2.2.25 split:分割檔案 47
2.2.26 dirname:顯示檔案除名字外的
2.2.26 路徑 48
2.2.27 find:查找目錄或者檔案 48
2.2.28 findfs:通過列表或用戶ID查找
2.2.28 檔案系統 49
2.2.29 ln:連結檔案或目錄 50
2.2.30 lndir:連結目錄內容 51
2.2.31 lsattr:顯示檔案屬性 51
2.2.32 od:輸出檔案內容 52
2.2.33 paste:合併檔案的列 53
2.2.34 stat:顯示inode內容 53
2.2.35 tee:讀取標準輸入到標準輸出
2.2.35 並可保存為檔案 54
2.2.36 tmpwatch:刪除臨時檔案 54
2.2.37 touch:更新檔案或目錄時間 54
2.2.38 tree:以樹狀圖顯示目錄內容 55
2.2.39 umask:指定在建立檔案時預設
2.2.39 的許可權掩碼 56
2.2.40 chmod:設定檔案或者目錄的
2.2.40 許可權 58
2.2.41 chgrp:改變檔案或者目錄所屬的
2.2.41 群組 60
2.2.42 chown:改變檔案的擁有者或者
2.2.42 群組 60
2.3 小結 61
第3章 LINUX磁碟管理及其相關命令 62
3.1 硬碟相關的概念 62
3.1.1 硬碟及其組成 62
3.1.2 硬碟的性能指標 64
3.1.3 硬碟接口方式 65
3.1.4 Linux伺服器硬碟的選擇 67
3.2 Linux磁碟分區 67
3.2.1 df:磁碟信息 69
3.2.2 du:顯示目錄或者檔案所占的
3.2.2 磁碟空間 70
3.2.3 dd:磁帶驅動操作 71
3.2.4 fdisk:磁碟分區 74
3.2.5 mount:載入檔案系統 75
3.2.6 umount:卸載檔案系統 77
3.2.7 mkfs:建立各種檔案系統 77
3.2.8 1mkfs.ext2:建立一個ext2/ext3
3.2.8 檔案系統 78
3.2.9 mkbootdisk:建立啟動盤 79
3.2.10 fsck:檢查檔案系統 79
3.2.11 fsck.ext2:檢查檔案系統 80
3.2.12 hdparm:設定磁碟參數 81
3.2.13 mkswap:建立交換分區 82
3.2.14 dump:備份檔案系統 83
3.2.15 restore:還原檔案 84
3.2.16 sync:寫入磁碟 84
3.2.17 e2label:設定卷標 85
3.2.18 badblock:檢查磁碟 85
3.2.19 quota:顯示磁碟已使用的空間
3.2.19 與限制 85
3.2.20 quotacheck:檢查磁碟的使用
3.2.20 空間與限制 86
3.2.21 quotaoff:關閉磁碟空間限制 86
3.2.22 quotaon:開啟磁碟空間限制 87
3.2.23 quotastats:顯示磁碟空間的限制 87
3.2.24 repquota:檢查磁碟空間限制的
3.2.24 狀態 87
3.2.25 mdadm:RAID工具 88
3.2.26 parted:磁碟分區工具 90
3.3 Linux磁碟操作實戰 91
3.3.1 為Linux添加新硬碟 91
3.3.2 Linux伺服器磁碟配額配置 94
3.3.3 最佳化Linux系統硬碟 99
3.4 RAID和LVM 101
3.4.1 Linux下軟體RAID配置 101
3.4.2 LVM基礎 105
3.4.3 LVM配置實戰 108
3.4.4 LVM和RAID配合使用 115
3.5 總結 119
第4章 LINUX進程及其管理命令 120
4.1 Linux進程的基礎 120
4.1.1 進程的基本概念 120
4.1.2 進程的屬性 120
4.1.3 理解Linux下進程的結構 121
4.1.4 進程狀態 121
4.1.5 Linux進程的創建 121
4.1.6 進程的管理 122
4.1.7 Linux的第一個進程:init 123
4.1.8 Linux的執行緒簡介 126
4.2 理解Linux守護進程 127
4.2.1 守護進程簡介 127
4.2.2 查看守護進程的方法 128
4.2.3 100個最常見Linux守護進程
4.2.3 簡介 128
4.2.4 Linux守護進程工作原理和方式 132
4.3 Linux進程管理命令詳解 135
4.3.1 at:定時運行命令 135
4.3.2 bg:後台運行命令 136
4.3.3 fg:掛起程式 136
4.3.4 jobs:顯示後台程式 137
4.3.5 kill:終止進程 137
4.3.6 crontab:安裝、刪除或列出
4.3.6 任務表 138
4.3.7 ps:查看許可權 139
4.3.8 pstree:列出當前進程的樹狀
4.3.8 結構 141
4.3.9 top:顯示進程 141
4.3.10 nice:改變許可權優先權 143
4.3.11 renice:修改優先權 143
4.3.12 sleep:暫停進程 144
4.3.13 nohup:用戶退出系統之後
4.3.13 繼續工作 144
4.3.14 pgrep:查找當前進程並列出
4.3.14 匹配給定條件的進程pid 144
4.3.15 chkconfig:設定系統的各種服務 145
4.4 總結 146
第5章 LINUX網路體系及其相關命令 147
5.1 Linux網路體系簡介 147
5.1.1 OSI模型 147
5.1.2 OSI七層功能說明 149
5.1.3 TCP/IP模型 152
5.1.4 IP定址、子網和路由 154
5.2 Linux網路基礎 157
5.2.1 Linux網路結構的特點 157
5.2.2 Linux下連線埠號分配 159
5.2.3 Linux的TCP/IP網路配置 161
5.3 Linux網路管理命令詳解 162
5.3.1 arp:管理系統中的ARP高速
5.3.1 快取 162
5.3.2 arpwatch:監聽ARP記錄 163
5.3.3 ADSL數據機命令 164
5.3.4 ifconfig:設定網路接口 164
5.3.5 iwconfig:設定無線網卡 165
5.3.6 hostname:顯示主機名 169
5.3.7 ifup:激活設備 170
5.3.8 ifdown:禁用網路設備 170
5.3.9 mii-tool:調整網卡模式 171
5.3.10 route:設定路由表 172
5.3.11 netstat:查看網路連線 173
5.3.12 ping:檢測網卡接口 174
5.3.13 minicom:設定數據機 175
5.3.14 pppd:建立ppp連線 176
5.3.15 pppstats:顯示ppp連線狀態 177
5.3.16 chat:撥號命令 178
5.3.17 traceroute:顯示數據包到主機間
5.3.17 的路徑 178
5.3.18 rcp:遠程複製 179
5.3.19 finger:查找並顯示用戶信息 179
5.3.20 tcpdump:網路數據分析器 180
5.3.21 ip:網路集成命令工具 181
5.3.22 yum:軟體包管理 182
5.3.23 apt:管理套件的工具 186
5.4 通過Linux命令行進行網路操作 188
5.4.1 配置Linux的TCP/IP配置 188
5.4.2 Linux伺服器的靜態路由配置 193
5.4.3 Linux異構網路共享ADSL連線
5.4.3 及其故障排除 197
5.4.4 Linux命令行下傳送帶有附屬檔案的
5.4.4 郵件 204
5.4.5 掌握Linux命令行下載工具 206
5.4.6 掌握Linux命令行網路監控工具 213
5.5 掌握Linux 命令行嗅探器工具 223
5.5.1 Linux嗅探器簡介 223
5.5.2 使用Tcpdump 225
5.5.3 嗅探器的防範 228
第6章 LINUX用戶管理及其相關命令 232
6.1 Linux用戶管理簡介 232
6.1.1 Linux多用戶、任務系統 232
6.1.2 Linux用戶(user)和用戶組
6.1.2 (group)概念 233
6.1.3 Linux用戶、組及私有用戶組 234
6.1.4 理解Linux用戶配置檔案 236
6.1.5 理解Linux用戶組配置檔案 237
6.1.6 Linux用戶相關配置檔案 239
6.1.7 定製Linux系統環境變數 241
6.2 Linux用戶管理命令 243
6.2.1 useradd:建立用戶 243
6.2.2 userdel:刪除用戶 244
6.2.3 usermod:修改已有用戶信息 244
6.2.4 passwd:設定密碼 245
6.2.5 chage:密碼老化 246
6.2.6 groupadd:添加組 246
6.2.7 groupdel:刪除組賬戶 247
6.2.8 groupmod:修改組 247
6.2.9 vipw:編輯/etc/passwd檔案 247
6.2.10 vigr:編輯/etc/group檔案 248
6.2.11 newgrp:轉換組 248
6.2.12 groups:顯示組 248
6.2.13 gpasswd:添加組 248
6.2.14 whoami:顯示當前用戶名稱 249
6.2.15 who:顯示登錄用戶 249
6.2.16 id:顯示用戶信息 250
6.2.17 su:切換身份 250
6.2.18 pwck:檢測賬戶 251
6.2.19 grpck:檢測用戶組賬號信息
6.2.19 完整性 251
6.2.20 chsh:設定shell 251
6.2.21 chfn:修改用戶信息 252
6.3 Linux用戶管理實例 253
6.3.1 Linux用戶管理小技巧 253
6.3.2 配置sudo讓Linux用戶管理
6.3.2 更加安全 257
6.3.3 為Linux用戶配置PAM 262
6.3.4 Linux用戶安全策略 271
第7章 LINUX的備份和壓縮及其相關
第7章 命令 276
7.1 Linux備份恢復基礎 276
7.1.1 什麼是備份 276
7.1.2 備份的重要性 276
7.1.3 備份前需考慮的因素 276
7.1.4 選擇備份介質 277
7.1.5 Linux備份策略 278
7.1.6 確定要備份的內容 279
7.2 Linux下壓縮檔案格式簡介 280
7.2.1 .arc格式 281
7.2.2 .arj格式 281
7.2.3 .lzh(.lha)格式 282
7.2.4 .rar格式 282
7.2.5 .zip格式 283
7.2.6 壓縮檔案相關網址 284
7.3 Linux的備份和壓縮及其相關命令 285
7.3.1 tar:備份檔案 285
7.3.2 dump:備份檔案系統 287
7.3.3 cpio(copy in/out):備份檔案 288
7.3.4 restore:還原備份下來的檔案或
7.3.4 整個檔案系統(一個分區) 290
7.3.5 ar:建立、修改或從檔案檔案中
7.3.5 提取檔案 291
7.3.6 bunzip2解壓縮.bz2檔案 292
7.3.7 bzip2:解壓縮.bz2檔案 293
7.3.8 unzip:解壓縮zip檔案 293
7.3.9 bzip2recover:損壞bz2檔案的
7.3.9 修復 294
7.3.10 gzip:壓縮檔案 294
7.3.11 compress:壓縮、解壓檔案 295
7.3.12 gzexe:壓縮執行檔案 296
7.3.13 lha:壓縮或解壓縮檔案 296
7.3.14 unarj:解壓縮檔案 297
7.3.15 zip:壓縮檔案 297
7.3.16 zipinfo:顯示壓縮檔案的信息 298
7.4 Linux命令行數據備份實例 299
7.4.1 Linux磁帶機備份攻略 299
7.4.2 用mirrordir做硬碟分區鏡像 309
7.4.3 使用partimage備份恢復Linux
7.4.3 分區 310
7.4.4 使用afio工具備份 311
7.4.5 在RHEL 5中使用Amanda實現
7.4.5 伺服器及客戶端備份 312
7.4.6 使用cfengine工具備份Linux
7.4.6 伺服器 320
7.4.7 部署開源磁碟備份伺服器rsync 330
第8章 LINUX系統管理命令 336
8.1 Linux啟動過程 336
8.1.1 Linux的啟動過程詳解 336
8.1.2 Linux運行級 339
8.1.3 /etc/inittab檔案詳解 340
8.1.4 init和/etc/inittab 342
8.2 Linux引導載入程式:LILO和
8.2 GRUB 343
8.2.1 LILO 343
8.2.2 GRUB 347
8.3 Linux系統管理命令詳解 359
8.3.1 apmd:高級電源管理 359
8.3.2 apmsleep:APM進入休眠狀態 360
8.3.3 apropos:查找使用手冊的名字
8.3.3 和相關描述 360
8.3.4 arch:輸出主機體系結構 360
8.3.5 alias:設定別名 361
8.3.6 batch:執行批處理命令 361
8.3.7 cd:切換目錄 362
8.3.8 chkconfig:設定服務 362
8.3.9 clear:清除終端螢幕 363
8.3.10 clock:系統RTC時間設定 363
8.3.11 cal:顯示日曆 364
8.3.12 chroot:改變根目錄 364
8.3.13 date:顯示或設定系統時間 365
8.3.14 dmesg:顯示開機信息 366
8.3.15 dircolors:設定ls命令在顯示
8.3.15 目錄或檔案時所用色彩 367
8.3.16 depmod:分析模組 367
8.3.17 echo:顯示文本行 367
8.3.18 exec:執行完命令後,交出
8.3.18 控制權 368
8.3.19 exit:退出shell 368
8.3.20 eject:彈出介質 369
8.3.21 enable:關閉shell命令 369
8.3.22 fgconsole:顯示虛擬終端的數目 370
8.3.23 free:顯示記憶體信息 370
8.3.24 fuser:使用檔案或檔案結構識別
8.3.24 進程 370
8.3.25 getty:設定終端機模式 371
8.3.26 gdialog:從shell顯示文本信息 372
8.3.27 git:檔案管理員 372
8.3.28 halt:關閉系統 372
8.3.29 history:顯示歷史命令 373
8.3.30 hwclock:顯示與設定硬體時鐘 374
8.3.31 init:進程處理初始化 374
8.3.32 last:顯示登錄用戶信息 375
8.3.33 lilo:引導管理器 376
8.3.34 login:登錄系統 376
8.3.35 local:顯示本地支持的語言系統
8.3.35 信息 377
8.3.36 logname:顯示登錄賬號的信息 377
8.3.37 logout:退出系統 378
8.3.38 lsmod:顯示Linux核心的模組
8.3.38 信息 378
8.3.39 lsattr:顯示檔案在Linux第二
8.3.39 擴展檔案系統上的特有屬性 378
8.3.40 modinfo:顯示核心信息 379
8.3.41 modprobe:自動處理可載入
8.3.41 模組 379
8.3.42 ntsysv:設定系統的各種服務 380
8.3.43 pmap:顯示程式的記憶體信息 380
8.3.44 procinfo:顯示系統狀態 381
8.3.45 pwd:顯示工作目錄 382
8.3.46 reboot:重新啟動系統 382
8.3.47 rlogin:遠程登錄 383
8.3.48 rmmod:刪除模組 383
8.3.49 rpm:軟體包管理 384
8.3.50 shutdown:系統關機命令 388
8.3.51 sleep:延遲指定數量的時間 388
8.3.52 suspend:暫停執行shell 389
8.3.53 swatch:系統監控程式 389
8.3.54 tload:顯示系統負載 389
8.3.55 uname:顯示系統信息 390
8.3.56 authconfig:配置系統的認證
8.3.56 信息 390
8.3.57 declare:顯示或者設定shell
8.3.57 變數 392
8.3.58 enable:可用的shell內置命令 393
8.3.59 export:設定或者顯示環境變數 393
8.3.60 hostid:列印出當前主機的標識 394
8.3.61 insmod:載入模組 394
8.3.62 rdate:顯示其他主機的日期與
8.3.62 時間 394
8.3.63 runlevel:顯示執行等級 395
8.3.64 set:設定shell 395
8.3.65 setconsole:設定系統終端 396
8.3.66 setenv:查詢或顯示環境變數 397
8.3.67 setserial:設定或顯示串口的相關
8.3.67 信息 397
8.3.68 setup:設定公用程式 397
8.3.69 sync:將記憶體緩衝區內的數據
8.3.69 寫入磁碟 398
8.3.70 startx:啟動X Window 398
8.3.71 sysctl:設定系統核心參數 399
8.3.72 timeconfig:設定時區 399
8.3.73 ulimit:控制shell程式的資源 400
8.3.74 unalias:刪除別名 401
8.3.75 unset:刪除變數或函式 402
8.3.76 up2date:軟體包升級工具 402
8.3.77 uptime:告知系統運行了多長
8.3.77 時間 403
8.3.78 mousconfig:設定滑鼠相關參數 403
8.3.79 bind:顯示或設定鍵盤按鍵與其
8.3.79 相關的功能 404
8.3.80 kbdconfig:設定鍵盤類型 405
8.3.81 snapscreenshot:命令行截圖 405
8.3.82 mt:磁帶機控制 405
8.3.83 cdrecord:刻錄工具 406
8.3.84 dvdrecord:DVD刻錄工具 407
8.3.85 lspci:查看硬體插槽 407
8.3.86 sane-find-scanner:掃瞄器搜尋 408
8.3.87 scanimage:檢測掃瞄器型號 409
8.3.88 mtools:命令集 409
8.3.89 whereis:查找檔案 410
8.3.90 ytalk:與其他用戶交談 411
8.4 Linux系統性能監控 411
8.4.1 性能監控的重要性和方法 411
8.4.2 系統負載監測 413
8.4.3 Linux進程運行的監測 415
8.4.4 記憶體使用情況監測 416
8.4.5 中央處理器使用情況監測 418
8.4.6 使用iostat監測I/O性能 420
8.4.7 網路性能的監測 422
8.4.8 使用sar工具 424
8.4.9 使用nmon工具 428
8.4.10 Linux記憶體泄漏及其回收 434
第9章 LINUX伺服器管理命令 437
9.1 Linux伺服器市場近況 437
9.2 apache伺服器套用命令 440
9.2.1 apache伺服器管理命令 440
9.2.2 Apache伺服器日誌管理命令 450
9.2.3 Apache日誌管理命令 453
9.3 dns伺服器管理命令 459
9.3.1 dns伺服器啟動、停止、重新啟動
9.3.1 命令 459
9.3.2 Bind DNS伺服器管理、檢查查詢
9.3.2 命令 461
9.3.3 Bind DNS伺服器輔助工具dlint
9.3.3 和dnstop 475
9.4 NFS伺服器管理命令 478
9.4.1 nfsd:NFS伺服器啟動?停止命令 478
9.4.2 portmap:portmap守護程式將
9.4.2 RPC程式號轉換成網際網路連線埠號 478
9.4.3 rpcinfo:報告遠程過程調用
9.4.3 (RPC)伺服器的狀態 479
9.4.4 showmount:顯示遠程已安裝檔案
9.4.4 系統的所有客戶機的列表 480
9.4.5 umount:刪除當前已掛載的遠程
9.4.5 檔案系統 481
9.4.6 mount:mount命令將已命名的
9.4.6 檔案系統(本地或遠程)連線到
9.4.6 指定的掛載點 481
9.4.7 automount:安裝自動安裝點 482
9.4.8 mountall:掛載一組檔案系統 482
9.4.9 exportfs:重新分享/etc/exports
9.4.9 變更的目錄資源 483
9.5 samba伺服器管理命令 483
9.5.1 啟動samba伺服器 483
9.5.2 testparm:檢查smb.conf配置
9.5.2 檔案的內部正確性 484
9.5.3 smbd(samba daemon):samba
9.5.3 伺服器程式 485
9.5.4 smbclient:類似FTP操作方式
9.5.4 的訪問smb/cifs伺服器資源的
9.5.4 客戶端 485
9.5.5 smbstatus:報告當前samba的
9.5.5 連線狀態 487
9.5.6 smbmount:裝載一個smbfs檔案
9.5.6 系統 488
9.5.7 smbpasswd:設定用戶的SMB
9.5.7 密碼 489
9.6 SSH伺服器管理命令 490
9.6.1 SSH伺服器啟動停止命令 490
9.6.2 SSH客戶端命令 494
9.7 squid伺服器管理命令 498
9.7.1 squid:代理伺服器squid守護
9.7.1 進程 498
9.8 DHCP伺服器管理命令 500
9.8.1 dhcpd:DHCP伺服器守護進程 500
9.8.2 dhclient:DHCPv6客戶端守護
9.8.2 進程 501
9.8.3 dhcp6c:DHCPv6客戶端守護
9.8.3 進程 501
9.9 FTP伺服器管理命令 501
9.9.1 FTP伺服器管理命令 501
9.9.2 FTP客戶端命令 504
9.10 E-mail伺服器管理命令 507
9.10.1 sendmail:為本地或網路交付
9.10.1 傳送郵件 507
9.10.2 mail:E-mail管理程式 509
9.10.3 mailq:顯示待寄郵件的清單 510
9.10.4 mailstats:顯示關於郵件流量的
9.10.4 統計信息 511
9.10.5 mutt:E-mail管理程式 512
9.10.6 Sendmail郵件伺服器性能控制 513
9.11 Linux防火牆管理工具iptables 515
9.11.1 iptables:Linux防火牆管理工具 515
9.11.2 ip6tables:ipv6版本的iptables
9.11.2 工具 521
9.11.3 iptables-save:iptables列表存儲 521
9.11.4 iptables-restore:裝載由iptables-
9.11.4 save保存的規則集 521
9.11.5 iptables配置企業套用 522
9.12 xinetd和Linux伺服器工作方式
9.12 的關係 524
9.12.1 什麼是xinetd 524
9.12.2 xinetd的特色 524
9.12.3 使用xinetd啟動守護進程 525
9.12.4 解讀/etc/xinetd.conf和/etc/
9.12.4 xinetd.d/* 526
9.12.5 配置xinetd 527
9.12.6 Linux下伺服器運行的兩種模式 532
9.12.7 xinetd防止拒絕服務攻擊
9.12.7 (Denial of Services)的原因 533
第10章 LINUX列印系統及其相關命令 535
10.1 Linux列印系統發展路線圖 535
10.1.1 PostScript語言 535
10.1.2 BSD LPD列印系統 537
10.1.3 LPRng列印系統 538
10.1.4 通用UNIX列印系統(CUPS) 538
10.1.5 Linux列印過程 540
10.2 配置CUPS列印系統 541
10.2.1 印表機驅動程式查詢和安裝 541
10.2.2 配置CUPS列印系統 542
10.2.3 使用Red Hat Linux列印配置
10.2.3 管理工具 545
10.2.4 重要資料 550
10.3 Linux列印系統相關命令 551
10.3.1 redhat-config-printer-tui:
10.3.1 印表機配置字元界面工具 551
10.3.2 cupsd:通用列印程式守護進程 552
10.3.3 lpadmin:配置LP列印服務 553
10.3.4 lp:列印 554
10.3.5 lpstat:顯示行式印表機狀態
10.3.5 信息 555
10.3.6 lpr:排隊列印作業 556
10.3.7 lprm:列印佇列刪除任務 556
10.3.8 Lpc:控制印表機 557
10.3.9 lpq:檢查假脫機佇列 558
10.3.10 lpinfo:顯示驅動和設備 558
10.4 Linux列印技巧 559
10.4.1 為Linux添加虛擬PDF印表機 559
10.4.2 Linux下套用Windows印表機 561
10.4.3 Linux列印故障排除 563
10.5 總結 563
第3部分 Linux開發編程中
需要使用的命令
第11章 LINUX庫套用及其相關命令 564
11.1 Linux庫簡介 564
11.1.1 Linux庫的定義 564
11.1.2 Linux庫的種類 564
11.1.3 Linux庫的命名和編號 566
11.1.4 常用的Linux庫 567
11.1.5 目標檔案和庫 568
11.2 Linux庫命令 569
11.2.1 ldconfig:配置查找共享庫 569
11.2.2 nm:列舉目標檔案中的符號名 571
11.2.3 ar:建立修改檔案或從檔案中
11.2.3 抽取成員 572
11.2.4 strip:去除目標檔案中的無用
11.2.4 信息 574
11.2.5 objdump:展開目標檔案、
11.2.5 靜態庫和共享庫中的信息 575
11.2.6 ldd:顯示共享庫的依賴情況 576
12.2.7 diff:找出兩個檔案的不同點 577
11.2.8 patch:修補檔案 579
11.3 Linux庫編程套用 580
11.3.1 構建共享庫 580
11.3.2 安裝共享庫 581
11.3.3 套用實例 582
11.3.4 新安裝一個庫後如何讓系統
11.3.4 找到 583
11.3.5 可執行程式在執行的時候如何
11.3.5 定位共享庫檔案 583
11.3.6 深入了解共享庫 583
11.3.7 保持庫兼容的建議 583
11.3.8 在共享庫中載入函式 584
11.4 Linux庫升級 585
11.4.1 為什麼要升級庫 585
11.4.2 gcc庫升級過程 586
第12章 LINUX開發常用命令GCC和
第12章 MAKE 589
12.1 gcc基礎 589
12.1.1 gcc簡介 589
12.1.2 gcc支持的基本語言 590
12.1.3 gcc支持平台 592
12.1.4 gcc安裝 592
12.1.5 gcc基本套用 594
12.1.6 運行gcc時調用的程式和命令 596
12.2 gcc套用進階 597
12.2.1 使用gcc處理多個檔案 597
12.2.2 gcc命令詳解 598
12.2.3 gcc函式館和包含檔案 600
12.2.4 gcc警告提示功能 601
12.2.5 gcc的錯誤類型總結 603
12.3 gcc進階套用 604
12.3.1 gcc調試選項 604
12.3.2 使用gcc編譯Fortran程式 605
12.3.3 使用gcc編譯Java檔案 613
12.3.4 使用gdb 618
12.3.5 gcc最佳化 623
12.3.6 gcc環境變數 625
12.4 gnu make命令簡介 627
12.4.1 make基礎入門 628
12.4.2 make命令參數、調試、錯誤
12.4.2 機制 636
12.5 make的高級工具automake、
12.5 autoconf和libtool 642
12.5.1 automake、autoconf和libtool
12.5.1 定義 643
12.5.2 使用automake、libtool和
12.5.2 autoconf製作makefile檔案 644
12.5.3 套用實例 647
12.6 本章參考資料 649
第13章 LINUX編輯器VI和EMACS 650
13.1 vi編輯器 650
13.1.1 Linux命令行編輯器簡介 650
13.1.2 vi編輯器簡介 654
13.1.3 vi編輯器的模式 654
13.1.4 vi三種模式的切換 655
13.1.5 vi編輯器基本操作 656
13.1.6 在vi編輯器移動游標 657
13.1.7 在檔案中搜尋、修改和刪除
13.1.7 文本 659
13.1.8 vi進階套用 660
13.1.9 vi總結 664
13.2 Emacs編輯器簡介 664
13.2.1 GNU Emacs是什麼 664
13.2.2 Emacs安裝 665
13.2.3 Emacs的啟動和退出 665
13.2.4 Emacs螢幕的結構 666
13.2.5 了解Emacs的鍵綁定 668
13.2.6 退出Emacs 670
13.3 使用Emacs進行編輯 670
13.3.1 移動游標 670
13.3.2 剪下和貼上 671
13.3.3 複製文本 671
13.3.4 搜尋和替換文本 671
13.3.5 Buffer緩衝區操作 672
13.3.6 視窗操作 673
13.3.7 獲取幫助 673
13.3.8 其他功能鍵 673
13.3.9 Emacs中的滑鼠操作 674
13.3.10 保存文檔 674
13.3.11 Emacs的下編譯 675
13.3.12 Emacs中的網際網路操作 677
13.3.13 Emacs鍵綁定常用列表 678
第14章 使用SHELL 680
14.1 Shell簡介 680
14.1.1 什麼是Shell 680
14.1.2 Shell類型 681
14.1.3 Shell與Linux核心的互動作用 683
14.2 Linux Shell的功能 683
14.2.1 通配符 683
14.2.2 重定向 684
14.2.3 管道 685
14.2.4 別名 686
14.2.5 命令行補全 686
14.2.6 命令替換 687
14.2.7 命令歷史 688
14.3 Linux Shell元字元 692
14.4 Shell變數和Shell環境 693
14.4.1 變數簡介 693
14.4.2 常見的預定義變數詳解 693
14.4.3 設定環境變數 697
14.5 Shell常用關鍵術語及套用技巧 699
14.5.1 Shell常用關鍵術語 699
14.5.2 Shell套用技巧 702
14.5.3 了解Shell的內置命令 704
第4部分 附錄
附錄A 解讀LSB標準 708
命令索引 722
命 令 索 引
A
ab:apache http伺服器性能測試工具 441
ADSL:數據機命令 164
alias:設定別名 361
apachectl:apache http伺服器控制接口 440
ApacheTop:Web日誌分析工具 454
apmd:高級電源管理 359
apmsleep:APM進入休眠狀態 360
apropos:查找使用手冊的名字和相關描述 360
apropos:搜尋關鍵字 43
apt:管理套件的工具 186
ar:建立、修改或從檔案檔案中提取檔案 291
ar:建立修改檔案或從檔案中抽取成員 572
arch:輸出主機的體系結構 360
arp:管理系統中的ARP高速快取 162
arpwatch:監聽ARP記錄 163
at:定時運行命令 135
authconfig:配置系統的認證信息 390
automount:安裝自動安裝點 482
B
badblock:檢查磁碟 85
basename:顯示檔案或者目錄的基本名稱 44
batch:執行批處理命令 361
bg:後台運行命令 136
bind:顯示或設定鍵盤按鍵與其相關的功能 404
bunzip2:解壓縮.bz2檔案 292
bzip2:解壓縮.bz2檔案 293
bzip2recover:損壞bz2檔案的修復 294
C
cal:顯示日曆 364
cat:顯示文本檔案內容 28
cd:切換目錄 362
cdrecord:刻錄工具 406
chage:密碼老化 246
chat:撥號命令 178
chattr:改變檔案的屬性 45
chfn:修改用戶信息 252
chgrp:改變檔案或者目錄所屬的群組 60
chkconfig:設定服務 362
chkconfig:設定系統的各種服務 145
chmod:設定檔案或者目錄的許可權 58
chown:改變檔案的擁有者或者群組 60
chroot:改變根目錄 364
chsh:設定shell 251
ckconfig:檢查FTP伺服器的設定是否正確 503
cksum:檔案的CRC校驗 46
clear:清除終端螢幕 363
clock:系統RTC時間設定 363
cmp:比較檔案差異 47
compress:壓縮、解壓檔案 295
cp:複製檔案 31
cpio(copy in/out):備份檔案 288
crontab:安裝、刪除或列出任務表 138
cupsd:通用列印程式守護進程 552
customlog:用來對伺服器的請求進行日誌記錄 451
D
date:顯示或設定系統時間 365
date:顯示日期和時間 41
dbmmanage:管理dbm格式的用戶認證檔案 447
dd:磁帶驅動操作 71
declare:顯示或者設定shell變數 392
depmod:分析模組 367
df:磁碟信息 69
dhclient:DHCPv6客戶端守護進程 501
dhcp6c:DHCPv6客戶端守護進程 501
dhcpd:DHCP伺服器守護進程 500
diff:比較兩個檔案 37
diff:找出兩個檔案的不同點 577
diffstat命令:diff結果的統計信息 39
dig:傳送域名查詢信息包到域名伺服器 463
dircolors:設定ls命令在顯示目錄或檔案時所用
色彩 367
dirname:顯示檔案除名字外的路徑 48
dmesg:顯示開機信息 366
dnssec dnssec-signkey:DNSSEC密鑰集簽名
工具 472
dnssec-keygen:dnssec密鑰生成工具 471
dnssec-makekeyset:DNSSEC區域簽名工具 473
dnssec-signzone:DNSSEC區域簽名工具 473
du:顯示目錄或者檔案所占的磁碟空間 70
dump:備份檔案系統 287
dump:備份檔案系統 83
dvdrecord:DVD刻錄工具 407
E
e2label:設定卷標 85
echo:顯示文本 40
echo:顯示文本行 367
eject:彈出介質 369
enable:關閉shell命令 369
enable:可用的shell內置命令 393
errorlog:指定了當伺服器遇到錯誤時記錄錯誤
日誌的檔案名稱 452
exec:執行完命令後,交出控制權 368
exit:退出shell 368
export:設定或者顯示環境變數 393
exportfs:重新分享/etc/exports變更的目錄資源 483
F
fdisk:磁碟分區 74
fg:掛起程式 136
fgconsole:顯示虛擬終端的數目 370
file:測試檔案內容 39
find:查找目錄或者檔案 48
findfs:通過列表或用戶ID查找檔案系統 49
finger:查找並顯示用戶信息 179
free:顯示記憶體信息 370
fsck.ext2:檢查檔案系統 80
fsck:檢查檔案系統 79
FTP:FTP客戶端工具在本地主機和遠程主機
之間傳送檔案 504
ftpcount:連線數統計命令 503
ftprestart:重新啟動ftp伺服器 504
ftpshut:FTP關閉檔案生成命令 503
ftpwho:線上用戶查看命令 503
fuser:使用檔案或檔案結構識別進程 370
G
gdialog:從shell顯示文本信息 372
getty:設定終端機模式 371
git:檔案管理員 372
gpasswd:添加組 248
grep:查找字元串 33
groupadd:添加組 246
groupdel:刪除組賬戶 247
groupmod:修改組 247
groups:顯示組 248
grpck:檢測用戶組賬號信息完整性 251
gzexe:壓縮執行檔案 296
gzip:壓縮檔案 294
H
halt:關閉系統 372
hdparm:設定磁碟參數 81
head:顯示檔案頭部 35
history:顯示歷史命令 373
host:使用域名伺服器查詢主機名字 468
hostid:列印出當前主機的標識 394
hostname:顯示主機名 169
htcacheclean:清理磁碟緩衝區 449
htdigest:管理用於摘要認證的用戶檔案 448
htpasswd:管理用於基本認證的用戶檔案 445
httpd:apache超文本傳輸協定伺服器 444
hwclock:顯示與設定硬體時鐘 374
I
id:顯示用戶信息 250
ifconfig:設定網路接口 164
ifdown:禁用網路設備 170
ifup:激活設備 170
init:進程處理初始化 374
insmod:載入模組 394
ip:網路集成命令工具 181
ip6tables:ipv6版本的iptables工具 521
iptables:Linux防火牆管理工具 515
iptables-restore:裝載由iptables-save保存的
規則集 521
iptables-save:iptables列表存儲 521
iwconfig:設定無線網卡 165
jobs:顯示後台程式 137
K
kbdconfig:設定鍵盤類型 405
kill:終止進程 137
L
last:顯示登錄用戶信息 375
ldconfig:配置查找共享庫 569
ldd:顯示共享庫的依賴情況 576
less:分屏顯示檔案 30
lftp:FTP客戶端 506
lha:壓縮或解壓縮檔案 296
lilo:引導管理器 376
ln:連結檔案或目錄 50
lndir:連結目錄內容 51
local:顯示本地支持的語言系統信息 377
locate:搜尋檔案 43
logformat:用於定義訪問日誌的記錄格式 451
login:登錄系統 376
loglevel:調整錯誤日誌中信息的詳細程度 453
logname:顯示登錄賬號的信息 377
logout:退出系統 378
logresolve:解析Apache日誌中的IP位址為
lp:列印 554
lpadmin:配置LP列印服務 553
Lpc:控制印表機 557
lpinfo:顯示驅動和設備 558
lpq:檢查假脫機佇列 558
lpr:排隊列印作業 556
lprm:列印佇列刪除任務 556
lpstat:顯示行式印表機狀態信息 555
ls:顯示檔案名稱 26
lsattr:顯示檔案在Linux第二擴展檔案系統上的
特有屬性 378
lsattr:顯示檔案屬性 51
lsmod:顯示Linux核心的模組信息 378
lspci:查看硬體插槽 407
M
mail:E-mail管理程式 509
mailq:顯示待寄郵件的清單 510
mailstats:顯示關於郵件流量的統計信息 511
mdadm:RAID工具 88
mii-tool:調整網卡模式 171
minicom:設定數據機 175
mkbootdisk:建立啟動盤 79
mkfs.ext2:建立一個ext2/ext3檔案系統 78
mkfs:建立各種檔案系統 77
mkswap:建立交換分區 82
modinfo:顯示核心信息 379
modprobe:自動處理可載入模組 379
mount:mount命令將已命名的檔案系統(本地或
遠程)連線到指定的掛載點 481
mount:載入檔案系統 75
mountall:掛載一組檔案系統 482
mousconfig:設定滑鼠相關參數 403
mt:磁帶機控制 405
mtools:命令集 409
mutt:E-mail管理程式 512
mv:更改檔案名稱 33
N
named:域名伺服器管理命令 459
named-checkconf:檢查DNS配置 462
named-checkzone:named-checkzone:檢查區域檔案
的合法性 462
netstat:查看網路連線 173
newgrp:轉換組 248
nfsd:NFS伺服器啟動?停止命令 478
nice:改變許可權優先權 143
nm:列舉目標檔案中的符號名 571
nohup:用戶退出系統之後繼續工作 144
nslookup:互動式查詢名稱伺服器 467
ntsysv:設定系統的各種服務 380
O
objdump:展開目標檔案、靜態庫和共享庫中的
信息 575
od:輸出檔案內容 52
P
parted:磁碟分區工具 90
passwd:設定密碼 245
paste:合併檔案的列 53
patch:修補檔案 579
pgrep:查找當前進程並列出匹配給定條件的
進程pid 144
ping:檢測網卡接口 174
pmap:顯示程式的記憶體信息 380
portmap:portmap守護程式將RPC程式號轉換成
網際網路連線埠號 478
pppd:建立ppp連線 176
pppstats:顯示ppp連線狀態 177
procinfo:顯示系統狀態 381
ProFTP:伺服器管理命令 502
ps:查看許可權 139
pstree:列出當前進程的樹狀結構 141
pwck:檢測賬戶 251
pwd:顯示工作目錄 382
Q
quota:顯示磁碟已使用的空間與限制 85
quotacheck:檢查磁碟的使用空間與限制 86
quotaoff:關閉磁碟空間限制 86
quotaon:開啟磁碟空間限制 87
quotastats:顯示磁碟空間的限制 87
R
rcp:遠程複製 179
rdate:顯示其他主機的日期與時間 394
reboot:重新啟動系統 382
redhat-config-printer-tui:印表機配置字元界面
工具 551
renice:修改優先權 143
repquota:檢查磁碟空間限制的狀態 87
restore:還原備份下來的檔案或整個檔案系統
(一個分區) 290
restore:還原檔案 84
rlogin:遠程登錄 383
rm:刪除檔案 30
rmdir:刪除目錄 44
rmmod:刪除模組 383
rndc:DNS伺服器控制 461
rotatelogs:滾動Apache日誌的管道日誌程式 453
route:設定路由表 172
rpcinfo:報告遠程過程調用(RPC)伺服器的
狀態 479
rpm:軟體包管理 384
runlevel:顯示執行等級 395
S
sane-find-scanner:掃瞄器搜尋 408
scanimage:檢測掃瞄器型號 409
scp:檔案拷貝到遠程主機本地主機 497
script:記錄Linux會話信息 42
sendmail:為本地或網路交付傳送郵件 507
Sendmail郵件伺服器性能控制 513
set:設定shell 395
setconsole:設定系統終端 396
setenv:查詢或顯示環境變數 397
setserial:設定或顯示串口的相關信息 397
setup:設定公用程式 397
sftp:安全互動FTP 496
showmount:顯示遠程已安裝檔案系統的所有
客戶機的列表 480
shutdown:系統關機命令 388
sleep:延遲指定數量的時間 388
sleep:暫停進程 144
smbclient:類似FTP操作方式的訪問smb/cifs
伺服器資源的客戶端 485
smbd(samba daemon):samba伺服器程式 485
smbmount:裝載一個smbfs檔案系統 488
smbpasswd:設定用戶的SMB密碼 489
smbstatus:報告當前samba的連線狀態 487
snapscreenshot:命令行截圖 405
sort:按順序顯示檔案內容 36
split:分割檔案 47
squid:代理伺服器squid守護進程 498
ssh:SSH命令行登錄工具 494
sshd:OpenSSH守護進程 490
ssh-keygen:生成、管理和轉換認證密鑰 491
startx:啟動X Window 398
stat:顯示inode內容 53
strip:去除目標檔案中的無用信息 574
su:切換身份 250
suexec:在執行外部程式之前切換用戶 449
suspend:暫停執行shell 389
swatch:系統監控程式 389
sync:將記憶體緩衝區內的數據寫入磁碟 398
sync:寫入磁碟 84
sysctl:設定系統核心參數 399
T
tail:顯示檔案尾部 35
tar:備份檔案 285
tcpdump:網路數據分析器 180
tee:讀取標準輸入到標準輸出並可保存為檔案 54
testparm:檢查smb.conf配置檔案的內部正確性 484
tfpd:傳輸檔案 506
timeconfig:設定時區 399
tload:顯示系統負載 389
tmpwatch:刪除臨時檔案 54
top:顯示進程 141
touch:更新檔案或目錄時間 54
traceroute:顯示數據包到主機間的路徑 178
tree:以樹狀圖顯示目錄內容 55
U
ulimit:控制shell程式的資源 400
umask:指定在建立檔案時預設的許可權掩碼 56
umount:刪除當前已掛載的遠程檔案系統 481
umount:卸載檔案系統 77
unalias:刪除別名 401
uname:顯示系統信息 390
unarj:解壓縮檔案 297
uniq:忽略檔案中的重複行 37
unset:刪除變數或函式 402
unzip:解壓縮zip檔案 293
up2date:軟體包升級工具 402
uptime:告知系統運行了多長時間 403
useradd:建立用戶 243
userdel:刪除用戶 244
usermod:修改已有用戶信息 244
V
vigr:編輯/etc/group檔案 248
vipw:編輯/etc/passwd檔案 247
vsftpd:vsftpd守護進程 501
W
Webalizer:Web伺服器日誌分析程式工具 457
whereis:查找檔案 410
who:顯示登錄用戶 249
whoami:顯示當前用戶名稱 249
Wu-FTP:Wu-FTP控制守護進程 502
ytalk:與其他用戶交談 411
yum:軟體包管理 182
Z
zip:壓縮檔案 297
zipinfo:顯示壓縮檔案的信息 298

相關詞條

熱門詞條

聯絡我們