內容簡介
本書講解瞭Linux操作係統的工作機製以及運行Linux係統所需的常用工具和命令。根據係統啓動的大體順序,本書更深入地介紹從設備管理到網絡配置的各個部分,最後演示瞭係統各部分的運行方式,並介紹瞭一些基本技巧和開發人員常用的工具。
Linux不像其他操作,會對用戶隱藏很多重要的東西。相反,Linux會讓用戶掌控一切。而要掌控一切,就必須理解這個操作係統的工作機製,包括如何啓動、如何連網,以及Linux內核如何工作。本書是暢銷書的新版本,作者擁有多年的實踐經驗,內容通俗易懂。通過這本書,讀者可以迅速從Linux新手變成老鳥,把作者豐富的經驗裝進自己的知識庫。
作者簡介
Brian Ward畢業於芝加哥大學,獲計算機科學博士學位。1993年開始接觸Linux,研究並教授Linux二十餘年。除瞭這本深受讀者喜愛的書,Brian還著有Linux Kernel-HOWTO(No Starch Press)、The Linux Problem Solver(No Starch Press)等暢銷著作。現居舊金山,身兼計算機高級顧問與高級講師等數職。
內頁插圖
目錄
第1 章 概述 1
1.1 Linux 操作係統中的抽象級彆和層次 2
1.2 硬件係統:理解主內存 3
1.3 內核 3
1.3.1 進程管理 4
1.3.2 內存管理 5
1.3.3 設備驅動程序和設備管理 5
1.3.4 係統調用和係統支持 5
1.4 用戶空間 6
1.5 用戶 7
1.6 前瞻 8
第2 章 基礎命令和目錄結構 9
2.1 Bourne shell: /bin/sh 9
2.2 shell 的使用 10
2.2.1 shell 窗口 10
2.2.2 cat 命令 11
2.2.3 標準輸入輸齣 11
2.3 基礎命令 11
2.3.1 ls 命令 12
2.3.2 cp 命令 12
2.3.3 mv 命令 12
2.3.4 touch 命令 13
2.3.5 rm 命令 13
2.3.6 echo 命令 13
2.4 瀏覽目錄 13
2.4.1 cd 命令 14
2.4.2 mkdir 命令 14
2.4.3 rmdir 命令 14
2.4.4 shell 通配符 14
2.5 中間命令 15
2.5.1 grep 命令 15
2.5.2 less 命令 16
2.5.3 pwd 命令 16
2.5.4 diff 命令 16
2.5.5 file 命令 17
2.5.6 find 和locate 命令 17
2.5.7 head 和tail 命令 17
2.5.8 sort 命令 17
2.6 更改密碼和shell 18
2.7 dot 文件 18
2.8 環境變量和shell 變量 18
2.9 命令路徑 19
2.10 特殊字符 19
2.11 命令行編輯 20
2.12 文本編輯器 21
2.13 獲取在綫幫助 21
2.14 shell 輸入輸齣 23
2.14.1 標準錯誤輸齣 23
2.14.2 標準輸入重定嚮 24
2.15 理解錯誤信息 24
2.15.1 解析Unix 的錯誤信息 24
2.15.2 常見錯誤 25
2.16 查看和操縱進程 26
2.16.1 命令選項 26
2.16.2 終止進程 27
2.16.3 任務控製 27
2.16.4 後颱進程 28
2.17 文件模式和權限 28
2.17.1 更改文件權限 29
2.17.2 符號鏈接 30
2.17.3 創建符號鏈接 30
2.18 歸檔和壓縮文件 31
2.18.1 gzip 命令 31
2.18.2 tar 命令 31
2.18.3 壓縮歸檔文件(.tar.gz) 32
2.18.4 zcat 命令 32
2.18.5 其他的壓縮命令 33
2.19 Linux 目錄結構基礎 33
2.19.1 root 目錄下的其他目錄 34
2.19.2 /usr 目錄 35
2.19.3 內核位置 35
2.20 以超級用戶的身份運行命令 35
2.20.1 sudo 命令 35
2.20.2 /etc/sudoers 35
2.21 前瞻 36
第3 章 設備管理 37
3.1 設備文件 37
3.2 sysfs 設備路徑 38
3.3 dd 命令和設備 39
3.4 設備名總結 40
3.4.1 硬盤:/dev/sd* 40
3.4.2 CD 和DVD:/dev/sr* 41
3.4.3 PATA 硬盤:/dev/hd* 41
3.4.4 終端設備/dev/tty/*、/dev/pts/*和/dev/tty 41
3.4.5 串行端口:/dev/ttyS* 42
3.4.6 並行端口:/dev/lp0 和/dev/lp1 42
3.4.7 音頻設備:/dev/snd/*、/dev/dsp、/dev/audio 和其他 43
3.4.8 創建設備文件 43
3.5 udev 44
3.5.1 devtmpfs 44
3.5.2 udevd 的操作和配置 44
3.5.3 udevadm 46
3.5.4 設備監控 47
3.6 詳解SCSI 和Linux 內核 47
3.6.1 USB 存儲設備和SCSI 50
3.6.2 SCSI 和ATA 50
3.6.3 通用SCSI 設備 51
3.6.4 訪問設備的多種方法 51
第4 章 硬盤和文件係統 53
4.1 為磁盤設備分區 55
4.1.1查看分區錶 55
4.1.2 更改分區錶 56
4.1.3 磁盤和分區的構造 57
4.1.4 固態硬盤 58
4.2 文件係統 59
4.2.1 文件係統類型 59
4.2.2 創建文件係統 60
4.2.3 掛載文件係統 60
4.2.4 文件係統UUID 62
4.2.5 磁盤緩衝、緩存和文件係統 62
4.2.6 文件係統掛載選項 63
4.2.7 重新掛載文件係統 64
4.2.8 /etc/fstab 文件係統錶 64
4.2.9 /etc/fstab 的替代者 65
4.2.10 文件係統容量 65
4.2.11 檢查和修復文件係統 66
4.2.12 特殊用途的文件係統 68
4.3 交換空間 68
4.3.1 使用磁盤分區作為交換空間 69
4.3.2 使用文件作為交換空間 69
4.3.3 你需要多大的交換空間 69
4.4 前瞻:磁盤和用戶空間 70
4.5 深入傳統文件係統 70
4.5.1 查看inode 細節 72
4.5.2 在用戶空間中使用文件係統 73
4.5.3 文件係統的演進 73
第5 章 Linux 內核的啓動 75
5.1 啓動消息 75
5.2 內核初始化和啓動選項 76
5.3 內核參數 77
5.4 引導裝載程序 78
5.4.1 引導裝載程序任務 78
5.4.2 引導裝載程序概述 79
5.5 GRUB 簡介 79
5.5.1 使用GRUB 命令行瀏覽設備和分區 81
5.5.2 GRUB 配置信息 83
5.5.3 安裝GRUB 84
5.6 UEFI 安全啓動的問題 86
5.7 鏈式加載其他操作係統 86
5.8 引導裝載程序細節 86
5.8.1 MBR 啓動 87
5.8.2 UEFI 啓動 87
5.8.3 GRUB 工作原理 87
第6 章 用戶空間的啓動 89
6.1 init 介紹 89
6.2 System V 運行級彆 90
6.3 識彆你的init 91
6.4 systemd 91
6.4.1 單元和單元類型 91
6.4.2 systemd 中的依賴關係 92
6.4.3 systemd 配置 94
6.4.4 systemd 操作 96
6.4.5 在systemd 中添加單元 98
6.4.6 systemd 進程跟蹤和同步 99
6.4.7 systemd 的按需和資源並行啓動 99
6.4.8 systemd 的System V 兼容性 103
6.4.9 systemd 輔助程序 103
6.5 Upstart 104
6.5.1 Upstart 初始化過程 104
6.5.2 Upstart 任務 105
6.5.3 Upstart 配置 107
6.5.4 Upstart 操作 110
6.5.5 Upstart 日誌 111
6.5.6 Upstart 運行級彆和System V兼容性 111
6.6 System V init 112
6.6.1 System V init 啓動命令順序 113
6.6.2 System V init 鏈接池 114
6.6.3 run-parts 115
6.6.4 System V init 控製 115
6.7 關閉係統 116
6.8 initramfs 117
6.9 緊急啓動和單用戶模式 118
第7 章 係統配置:日誌、係統時間、批處理任務和用戶 119
7.1 /etc 目錄結構 119
7.2 係統日誌 120
7.2.1 係統日誌 120
7.2.2 配置文件 120
7.3 用戶管理文件 122
7.3.1 /etc/passwd 文件 122
7.3.2 特殊用戶 123
7.3.3 /etc/shadow 文件 124
7.3.4 用戶和密碼管理 124
7.3.5 用戶組 124
7.4 getty 和login 125
7.5 設置時間 125
7.5.1 內核時間和時區 126
7.5.2 網絡時間 127
7.6 使用cron 來調度日常任務 127
7.6.1 安裝crontab 文件 128
7.6.2 係統crontab 文件 128
7.6.3 cron 的未來 129
7.7 使用at 進行一次性任務調度 129
精彩書摘
2.5.2 less命令
當要查看的文件過大或者內容多得需要滾動屏幕的時候,可以使用less命令。如要查看像/usr/share/dict/words這樣的大文件,可以使用less /usr/share/dict/words命令。less命令可以將內容分屏顯示,按空格鍵可查看下一屏,B鍵查看上一屏,Q鍵退齣。
你可以在less命令的輸齣結果中進行搜索。例如:使用/word從當前位置嚮前搜索word這個詞,使用?word從當前位置嚮後搜索。當找到一個匹配的時候,按N鍵可以跳到下一個匹配。
你可以將幾乎所有進程的輸齣作為另一個進程的輸入,我們將在2.14節詳細介紹。當你執行的命令涉及很多輸齣,或者你想使用less來查看輸齣結果的時候,這個方法非常管用,比如下例所示:
你可以自己親身實踐一下這個命令。類似這樣的less代碼你會常用到。
2.5.3 pwd命令
pwd命令僅輸齣當前的工作目錄名。這個命令看上去不是那麼有用,其實不然,它有以下兩個用處。
首先,並不是所有的提示符都顯示當前目錄名,甚至有時候你需要擺脫它,因為它占用很大空間,這時候就需要使用pwd來解決。
其次,使用符號鏈接(我們將在2.17.2節介紹)的時候通常很難獲知當前目錄信息,這時我們可以使用pwd—P來查看。
……
前言/序言
精通Linux(第2版) epub pdf mobi txt 電子書 下載 2024
精通Linux(第2版) 下載 epub mobi pdf txt 電子書