Linux操作系統基礎及實驗指導教程
-
【作 者】主編 黃衛東 張岳 史士英
【I S B N 】978-7-5170-6535-7
【責任編輯】封裕
【適用讀者群】本專通用
【出版時間】2018-06-01
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】288
【千字數】440
【印 張】18
【定 價】¥38
【叢 書】普通高等教育網絡工程專業教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書采用Ubuntu-16.10為講解平臺,列舉大量實例,提供大量實驗指導,內容簡潔緊湊,循序漸進地向讀者介紹了Linux的基礎應用、系統管理、網絡應用、服務器配置和程序開發等。
本書分為兩大部分:基礎知識部分和實驗部分。基礎知識部分分為19章:Linux概述、Linux系統安裝與啟動、Linux的桌面管理、Linux常用命令、Linux文件系統管理、系統用戶賬號管理、Linux磁盤管理、Linux進程管理、文本編輯工具、文件的壓縮/解壓縮與打包、軟件包管理、Shell編程、Linux網絡基礎、NFS服務配置、Samba服務器配置、FTP服務器配置、DNS服務器配置、Apache的安裝與配置、Linux下的C語言編程;實驗部分編寫了15個實驗方案。
本書可供高等院校學生、廣大Linux入門愛好者及中級用戶閱讀和使用。
科學系統講授—— 采用Ubuntu-16.10 為講解平臺,循序漸進地講授基礎知識。
精編實用案例——針對講授內容列舉大量實例、提供大量實驗指導。
資深教學團隊——Linux 系統一線教師傾情教授。
簡捷而高效地學到Linux的入門知識是我編寫這本教材的主要目的。
Linux操作系統,對了解它的人來說十分熟悉,不了解它的人卻一臉茫然。人們大都知道中國的超級計算機在世界500強中獨領風騷,卻不知道2017年的世界Top 500超級計算機中有498臺都在運行Linux。人們都在享受云計算與大數據帶來的搜索、購物、數據存儲等好處,卻少有人知道大多數數據中心都是由Linux操作系統支撐的,如谷歌、Facebook、亞馬遜、中國的BAT等互聯網企業。還有很多人使用的Android手機,多數人只知道它的操作系統叫Android,卻不知道Android的底層核心是Linux。
促使我編寫這本教材的另一個原因是,我給學生講授Linux操作系統的應用已有十余年,教材也已更換了五六本,但總感覺這些教材沒能達到我期望的標準:簡潔易懂、注重操作、結構緊湊。我對教材的要求基于以下原因:
(1)現在學習計算機專業的學生,絕大多數熟悉的是Windows系統,對Linux系統多以命令操作的形式不感興趣,因此Linux應用教材更應簡潔易懂,減少理論敘述;以常用命令為主,注重操作;多舉實例,引導入門。
(2)學生精力有限、學時有限,因此教材結構要緊湊,內容要瘦身;簡單的留給學生自學,復雜的留給有能力的學生去拓展。
基于我對Linux教學的理解,我將本教材分為兩大部分:基礎知識部分和實驗部分。基礎知識部分分為19章,實驗部分編寫了15個實驗方案。
第1章主要介紹Linux的發展歷史、Linux與UNIX的關系及GNU計劃、Linux的結構和特點。
第2章介紹虛擬機技術及虛擬機軟件的安裝。
第3章主要介紹什么是X Window System(窗口系統),并以Ubuntu默認安裝的Unity為例講解了它的主要使用功能。
第4章是學習Linux最為重要的章節之一,選取了常用的文件、目錄操作命令進行講解。
第5章講解Linux文件系統的類型和特點、權限和權限設置命令、改變擁有者和組的命令。
第6章主要講解如何生成用戶、刪除用戶,如何管理用戶密碼,如何管理用戶組以及與用戶相關的幾個文件(如/etc/passwd、/etc/shadow等)。
第7章講解Linux磁盤管理常用命令(包括fdisk、mkfs、df、du等)、掛載的理念,以及如何掛載不同的存儲對象。
第8章簡單介紹進程的相關知識,包括創建進程、查看進程的運行狀態、終止進程的一系列命令,以及如何使用crontab命令安排周期性任務。
第9章主要講解vi編輯器的使用方法。
第10章舉例講解gzip和bzip2壓縮與解壓縮命令、tar與gzip的聯合使用。
第11章通過舉例詳細講解APT、Yum、RPM軟件包管理工具在安裝、刪除等方面的操作。
第12章主要講述Shell的常用變量、賦值和訪問,以及三種語句結構。
第13章講解Linux網絡的相關知識和網絡管理的常用命令。
第14章講解NFS服務器的設置過程及客戶端的掛載使用。
第15章主要講解Samba服務器的設置過程、客戶端如何使用服務器提供的資源。
第16章講解FTP服務器的設置過程、客戶端如何訪問FTP服務器,以及上傳和下載的相關命令。
第17章主要講解DNS服務器的設置,并在虛擬機上進行測試。
第18章講解Web服務器基礎知識,介紹了幾種常見的Web服務器,重點放在Apache Web服務器的安裝過程和如何高效配置上。
第19章重點講解如何使用GCC編譯器和如何編寫makefile文件。
本書主要由黃衛東主筆,在編寫過程中得到了各方的大力幫助,山東交通學院信電學院院長張廣淵教授給予了政策支持,張岳副教授編寫了第1章,史士英教授編寫了第2章并審讀全書,劉麗教授編寫了第3章,亓江濤老師編寫了第19章;出版社也多次提出寶貴的修改意見;還有劉宇、楊士圖、劉玉穎、趙俊等同志也提供了協助,在此一并表示感謝。
由于編者水平有限,加之時間倉促,書中疏漏甚至錯誤之處在所難免,懇請讀者批評指正。
第1章 Linux概述 1
1.1 Linux的起源和發展 2
1.2 Linux的結構與特點 2
1.2.1 Linux的結構 2
1.2.2 Linux的一些重要特點 3
1.3 Linux的版本類別 4
1.3.1 Red Hat Enterprise Linux 5
1.3.2 CentOS 5
1.3.3 Ubuntu 5
1.3.4 SUSE Linux Enterprise Desktop 6
1.3.5 Back Track 6
1.4 Linux的應用和發展方向 7
本章小結 7
習題 8
第2章 Linux系統安裝與啟動 9
2.1 Windows下VMware的安裝 9
2.2 在VMware Workstation 12 Pro虛擬主機
上安裝Ubuntu 13
2.2.1 VMware Workstation 12 Pro創建
虛擬機 13
2.2.2 安裝Ubuntu操作系統 16
2.3 啟動系統 21
本章小結 22
習題 22
第3章 Linux的桌面管理 23
3.1 窗口系統 23
3.2 面板和桌面 25
3.3 主程序面板 26
3.4 文件管理器 26
3.5 系統設置 27
3.6 終端 28
3.7 軟件中心 29
3.8 gedit文本編輯器 30
3.9 GNOME與KDE簡介 31
本章小結 31
習題 32
第4章 Linux常用命令 33
4.1 Linux的終端與工作區 33
4.2 用戶登錄與身份切換 33
4.3 文件、目錄操作命令 35
4.3.1 顯示當前目錄的完整路徑命令pwd 35
4.3.2 改變當前路徑命令cd 36
4.3.3 建立目錄命令mkdir 36
4.3.4 刪除目錄命令rmdir 37
4.3.5 列出當前目錄的內容命令ls 37
4.3.6 復制文件或目錄命令cp 38
4.3.7 刪除文件或目錄命令rm 39
4.3.8 移動文件或將文件改名命令mv 39
4.3.9 查看文件內容、創建文件、文件
合并命令cat 40
4.3.10 顯示文件內容或輸出查看
命令more 41
4.3.11 查看文件內容命令less 42
4.3.12 顯示文件內容的前幾行命令head 43
4.3.13 顯示文件內容的最后幾行命令tail 44
4.3.14 建立一個空文件命令touch 44
4.3.15 建立鏈接文件命令ln 44
4.4 信息顯示命令 45
4.4.1 查找文件內容命令grep 45
4.4.2 顯示文件的類型信息命令file 46
4.4.3 定位文件命令locate 46
4.4.4 查找目錄命令find 47
4.5 Shell語言解釋器 48
4.5.1 什么是Shell 48
4.5.2 Bash的幾種特性 49
本章小結 53
習題 54
第5章 Linux文件系統管理 55
5.1 文件系統 55
5.1.1 Linux文件系統的類型及特點 55
5.1.2 Linux文件系統的結構 58
5.1.3 Linux系統目錄介紹 58
5.2 Linux文件及目錄的訪問權限設置 59
5.2.1 一般權限 60
5.2.2 字符權限與數字權限的轉換 61
5.2.3 特殊權限 61
5.2.4 改變訪問權限——chmod命令 63
5.2.5 改變文件/目錄的擁有者—
chown命令 65
5.3 文件管理器改變文件/目錄的權限 66
本章小結 67
習題 68
第6章 系統用戶賬戶管理 69
6.1 root賬戶管理 69
6.2 普通用戶賬戶管理 71
6.2.1 添加新用戶賬戶 71
6.2.2 刪除用戶賬戶 74
6.2.3 修改用戶賬戶 75
6.2.4 用戶口令管理 76
6.3 用戶組管理 76
6.3.1 用戶組的添加命令groupadd 76
6.3.2 用戶組的刪除命令groupdel 77
6.3.3 用戶組的修改命令groupmod 77
6.4 與賬戶相關的系統文件 77
6.4.1 /etc/passwd文件 77
6.4.2 /etc/shadow文件 79
6.5 用戶管理器 80
本章小結 80
習題 81
第7章 Linux磁盤管理 82
7.1 Linux磁盤管理常用命令 83
7.1.1 Linux磁盤管理命令fdisk 83
7.1.2 Linux磁盤格式化命令mkfs 87
7.1.3 Linux磁盤檢驗命令fsck、df和du 91
7.2 Linux 的磁盤掛載與卸載 92
本章小結 98
習題 98
第8章 Linux進程管理 99
8.1 Linux系統進程概述 99
8.2 Linux進程管理命令 100
8.2.1 創建進程 100
8.2.2 查看進程的運行狀態 101
8.2.3 終止進程 105
8.3 守護進程 107
8.3.1 xinetd簡介 107
8.3.2 守護進程管理 107
8.4 安排周期性任務 110
8.4.1 crond守護進程 110
8.4.2 系統任務調度和用戶任務調度 110
8.4.3 crontab文件的含義 111
8.4.4 crontab的使用格式 111
8.4.5 crontab文件舉例 112
8.5 cron服務的啟動與停止 112
本章小結 113
習題 113
第9章 文本編輯工具 114
9.1 vim編輯器的執行與退出 116
9.2 vim編輯器的操作模式 116
9.3 Command Mode命令 117
9.4 Last Line Mode命令 121
本章小結 122
習題 122
第10章 文件的壓縮、解壓縮與打包 123
10.1 Linux文件壓縮簡介 123
10.2 gzip壓縮與解壓縮命令 124
10.3 bzip2壓縮與解壓縮命令 125
10.4 tar打包命令 126
本章小結 128
習題 128
第11章 軟件包管理 129
11.1 RPM基本概念 130
11.2 RPM的使用 130
11.2.1 安裝 132
11.2.2 刪除安裝 132
11.2.3 升級 133
11.2.4 查詢 133
11.3 YUM軟件包管理工具 134
11.4 APT工作原理 139
11.5 dpkg軟件包管理 143
本章小結 144
習題 144
第12章 Shell編程 145
12.1 Shell基本概念 145
12.2 Shell功能介紹 145
12.3 Shell變量 146
12.3.1 變量賦值 146
12.3.2 變量訪問 148
12.3.3 變量輸出 148
12.4 Shell腳本參數 150
12.5 條件語句 151
12.5.1 if語句 151
12.5.2 case語句 154
12.6 循環語句 155
12.6.1 固定循環語句for 155
12.6.2 不定循環語句 156
12.7 創建和執行Shell程序 157
本章小結 158
習題 159
第13章 Linux網絡基礎 160
13.1 TCP/IP基礎 160
13.2 TCP/IP配置文件 161
13.2.1 /etc/hosts文件 162
13.2.2 /etc/services文件 163
13.2.3 /etc/hostname文件 164
13.2.4 /etc/network/interfaces和
/etc/resolv.conf文件 164
13.3 常用網絡管理命令 166
13.3.1 ifconfig命令 166
13.3.2 route命令 168
13.3.3 netstat命令 169
13.3.4 ping命令 170
13.3.5 traceroute命令 171
13.4 Telnet遠程登錄 172
13.5 SSH遠程登錄 173
13.5.1 安裝OpenSSH 173
13.5.2 Windows客戶端登錄 174
本章小結 175
習題 176
第14章 NFS服務器配置 177
14.1 NFS的功能 177
14.2 安裝和啟動NFS服務器 178
14.2.1 確認NFS已經安裝 178
14.2.2 啟動NFS服務器 178
14.3 設置NFS服務器 179
14.3.1 設置共享目錄 179
14.3.2 設置共享目錄實例講解 180
14.4 客戶端掛載NFS目錄 182
14.4.1 查看NFS服務器共享的目錄 182
14.4.2 掛載共享目錄到本機文件系統 182
本章小結 183
習題 183
第15章 Samba服務器配置 184
15.1 Samba簡介 184
15.2 安裝與啟動Samba 185
15.3 Samba服務器的配置文件 186
15.3.1 全局選項 187
15.3.2 共享選項 188
15.3.3 Samba設置舉例 189
15.4 Samba的相關命令 190
15.4.1 檢查配置文件正確性命令
testparm 190
15.4.2 查看服務器共享目錄命令
smbclient 190
15.4.3 在Linux客戶端掛載共享目錄 191
15.5 Windows客戶端訪問共享目錄 191
15.6 圖形界面配置Samba 192
15.6.1 啟動配置Samba的圖形配置工具 192
15.6.2 設置全局參數 192
15.6.3 添加Samba用戶 193
15.6.4 添加共享目錄 193
15.6.5 添加允許訪問的用戶 194
本章小結 194
習題 194
第16章 FTP服務器配置 195
16.1 FTP概述 195
16.2 安裝與啟動FTP 196
16.3 FTP相關配置文件 196
16.3.1 /etc/vsftpd.conf 197
16.3.2 /etc/ftpusers 197
16.3.3 /etc/user_list 198
16.4 匿名賬戶服務器配置 198
16.5 真實賬戶服務器配置 200
16.5.1 Linux客戶端訪問FTP服務器 200
16.5.2 Windows客戶端訪問FTP服務器 201
16.6 主要命令介紹 204
本章小結 204
習題 204
第17章 DNS服務器配置 205
17.1 DNS簡介 205
17.2 BIND的安裝與啟動 206
17.3 DNS服務器配置舉例 208
17.3.1 配置文件/etc/named.conf.local 208
17.3.2 配置正向解析文件
/etc/bind/db.example.com 209
17.3.3 配置反向解析文件
/etc/bind/db.192.168.1 209
17.3.4 啟動DNS服務 209
17.4 客戶端測試 209
17.4.1 本機測試 209
17.4.2 Red Hat客戶端測試 210
17.4.3 在Windows客戶端測試 210
本章小結 210
習題 210
第18章 Apache的安裝與配置 211
18.1 Web簡介 211
18.2 Ubuntu安裝和配置Apache 212
本章小結 214
習題 214
第19章 Linux下的C語言編程 215
19.1 GCC編譯器 215
19.2 GNU make 218
19.2.1 GNU make簡介 218
19.2.2 makefile基本結構 218
19.2.3 運行makefile 219
19.3 創建一個C程序實例 219
19.4 調試工具GDB 221
19.4.1 啟動GDB 221
19.4.2 GDB基本命令 221
本章小結 224
習題 225
第二部分 實驗
實驗1 Linux操作系統的安裝 226
實驗2 Linux基本命令 228
實驗3 文件權限管理 230
實驗4 用戶和組的管理 234
實驗5 磁盤管理 238
實驗6 進程管理命令 244
實驗7 vim編輯器 246
實驗8 文件的壓縮與打包 248
實驗9 Shell編程 252
實驗10 Linux網絡配置 254
實驗11 NFS的配置 258
實驗12 Samba的配置 260
實驗13 FTP的配置 263
實驗14 DNS的配置 268
實驗15 Linux下的C語言編程 271
附錄 277
參考文獻 278