本書基于CentOS 7.6系統(tǒng)編寫,由淺入深地介紹了Linux系統(tǒng)管理、服務管理和自動化運維管理三個方面的內(nèi)容,突出實踐,用案例、實例講解每個知識點。
全書共17章,分為三個部分,第一部分是Linux操作系統(tǒng)的基本使用,包含第1~5章,主要包括Linux系統(tǒng)概述、安裝Linux系統(tǒng)、用戶接口與文本編輯器、Linux文件系統(tǒng)及Linux系統(tǒng)管理;第二部分是常用服務配置管理,包含第6~12章,主要包括網(wǎng)絡配置與管理、網(wǎng)絡安全與防火墻、DHCP服務器、FTP服務器、Apache服務器、DNS服務器、Squid代理服務器的配置與管理;第三部分是自動化運維技術,包含第13~17章,主要包括Shell編程、正則表達式與文本處理、無人值守安裝系統(tǒng)、自動化配置管理平臺及企業(yè)監(jiān)控系統(tǒng)。
本書從一個新手的角度出發(fā),循序漸進帶領讀者全面學習Linux操作系統(tǒng),是一本綜合類書籍。本書可作為高等院校計算機相關專業(yè)的教材和參考書,也可以供廣大的Linux愛好者、Linux系統(tǒng)維護人員及計算機培訓機構(gòu)的教師等參考使用。
1、采用Linux操作系統(tǒng)最新穩(wěn)定平臺
CentOS7.5是國外官網(wǎng)最新穩(wěn)定版(目前國外最高版本是CentOS8),本書采用最新環(huán)境平臺CentOS7.5平臺為藍本,反映自動化運維領域國內(nèi)的最新技術和理念。
2、實用性教材,涵蓋主流運維工具和方法
本書第三篇自動化運維篇,介紹企業(yè)常用且適用的批量運維工具,如PXE Kickstart無人值守安裝服務;自動化配置工具Ansible;系統(tǒng)監(jiān)控工具Zabbix等技術。在講解上,理論聯(lián)系實際,配備相應實際案例,圖解步驟,形象直觀,強化動手能力培養(yǎng)。適合普通高校學生掌握自動化的安裝、部署、升級的基本應用技術。
3、涵蓋系統(tǒng)管理、服務管理與自動化運維三合一教術
從目前來看,包含系統(tǒng)管理、服務管理、自動化運維三個方面的綜合類應用教材、參考書籍幾乎沒有。涵蓋服務管理、自動化運維方面的書籍目前也沒有。本書涵蓋系統(tǒng)管理、服務管理與自動化運維三方面內(nèi)容,是一本綜合類教材,具有創(chuàng)新價值。
劉春,教授,現(xiàn)任大慶師范學院網(wǎng)絡工程系主任,研究方向主要為云計算與大數(shù)據(jù)、網(wǎng)絡工程,擔任Linux系統(tǒng)管理、Linux服務管理、Linux自動化運維、云服務與虛擬化技術、Oracle數(shù)據(jù)庫、軟件工程等課程的教學工作,曾在企業(yè)從事軟件開發(fā)、網(wǎng)絡工程工作近10年,有著豐富的企業(yè)實踐經(jīng)驗,主持及參與國家級、省級各級課題9項,其中主持新一代信息技術項目1項、黑龍江省自然科學資金項目1項,黑龍江省教育科學規(guī)劃重點課題1項,黑龍江省教育廳項目1項,發(fā)表各級論文26篇,以第一發(fā)明人獲得2項實用新型專利,撰寫專著1部。2002年獲黑龍江省企業(yè)管理現(xiàn)代化成果貳等獎。2009年獲ORACLE全球認證OCP證書,2012年獲高等學校雙師型教師。
第 1章 Linux系統(tǒng)概述
1.1 Linux操作系統(tǒng)簡介
1.1.1 Linux系統(tǒng)歷史背景
1.1.2 Linux系統(tǒng)主要特點
1.1.3 Linux系統(tǒng)結(jié)構(gòu)
1.2 Linux系統(tǒng)版本介紹
1.2.1 Linux內(nèi)核版本
1.2.2 Linux發(fā)布版本類型
1.3 Linux的發(fā)展方向
1.4 本章小結(jié)
1.5 習題
第 2章 安裝Linux系統(tǒng)
2.1虛擬機介紹
2.1.1虛擬機技術
2.1.2 Linux虛擬機
2.2 Linux系統(tǒng)的安裝準備
2.2.1安裝Linux系統(tǒng)的最低硬件要求
2.2.2 CentOS 7安裝程序的獲取
2.2.3硬盤分區(qū)與掛載
2.2.4創(chuàng)建VM虛擬機的步驟
2.3 Linux系統(tǒng)的安裝
2.4 Linux系統(tǒng)啟動與關閉
2.4.1 Linux系統(tǒng)的啟動引導步驟
2.4.2 Linux系統(tǒng)登錄
2.4.3 Linux系統(tǒng)重啟與關閉
2.5 本章小結(jié)
2.6 習題
第3章 用戶接口與文本編輯器
3.1 Shell命令的操作基礎
3.1.1 Shell命令格式
3.1.2 在Linux獲取幫助
3.2 Shell命令的實用功能
3.2.1 History 命令
3.2.2 管道命令
3.2.3 重定向
3.2.4 通配符與特殊符號
3.3 vi編輯器
3.3.1 vi的三種工作模式和轉(zhuǎn)換
3.3.2 vi的啟動、保存、退出
3.3.3 命令模式下的操作
3.3.4 底行模式下的操作
3.3.5使用vi編輯文件案例
3.4 本章小結(jié)
3.5 習題
第4章 Linux文件系統(tǒng)
4.1 Linux系統(tǒng)的文件及其類型
4.1.1 Linux系統(tǒng)的目錄結(jié)構(gòu)
4.1.2 Linux系統(tǒng)的文件類型
4.2 Linux系統(tǒng)的文件操作命令
4.2.1 切換、創(chuàng)建和刪除目錄
4.2.2 ls命令
4.2.3 拷貝、移動、刪除和創(chuàng)建文件
4.2.4文件信息顯示命令
4.2.5文件檢索、排序、查找命令
4.2.6文件的鏈接
4.3文件的權(quán)限
4.3.1文件屬主和屬組
4.3.2文件的訪問權(quán)限
4.4 本章小結(jié)
4.5 習題
第5章 Linux系統(tǒng)管理
5.1 用戶和組的管理
5.1.1 用戶賬戶管理
5.1.2用戶組的管理
5.1.3 用戶查詢命令
5.1.4 用戶賬號相關的系統(tǒng)文件
5.2軟件包管理
5.2.1 RPM軟件包管理
5.2.2 YUM軟件包管理
5.3進程管理和任務計劃
5.3.1系統(tǒng)監(jiān)視和進程管理
5.3.2進程的優(yōu)先級
5.3.3任務計劃
5.4 磁盤管理
5.4.1 Linux磁盤分區(qū)和格式化的概念
5.4.2硬盤設備的添加和分區(qū)格式化
5.4.3 磁盤文件系統(tǒng)掛載與卸載
5.4.4 開機自動掛載文件系統(tǒng)
5.4.5磁盤配額
5.5 本章小結(jié)
5.6 習題
第6章 網(wǎng)絡配置與管理
6.1 網(wǎng)絡協(xié)議與體系結(jié)構(gòu)
6.1.1 TCP/IP協(xié)議
6.1.2 Linux的協(xié)議棧層次
6.2 IP地址、端口號與網(wǎng)絡接口
6.2.1 IP地址
6.2.2 端口號
6.2.3 網(wǎng)絡接口
6.2.4 查看和管理網(wǎng)絡接口的命令
6.3 網(wǎng)絡配置文件
6.3.1 網(wǎng)絡接口配置文件
6.3.2 主機名稱配置文件
6.3.3 地址解析配置文件
6.4 網(wǎng)絡配置參數(shù)
6.4.1 網(wǎng)絡配置概述
6.4.2 網(wǎng)絡模式概述
6.4.3 網(wǎng)絡配置的方法
6.4.4 配置主機名
6.4.5 配置DNS服務器
6.5 網(wǎng)絡管理命令
6.5.1 網(wǎng)絡測試命令
6.5.2 網(wǎng)絡性能監(jiān)測命令
6.6 本章小結(jié)
6.7 習題
第7章 網(wǎng)絡安全與防火墻
7.1 網(wǎng)絡安全概述
7.1.1 網(wǎng)絡安全簡介
7.1.2 網(wǎng)絡安全的防御措施
7.2 訪問控制機制
7.2.1 訪問控制機制
7.2.2 訪問控制策略
7.2.3 Linux安全模型
7.3 防火墻
7.3.1 防火墻簡介
7.3.2 防火墻的分類
7.3.3 防火墻技術
7.4 Firewalld使用
7.4.1 Firewalld 介紹
7.4.2 終端管理工具
7.4.3 圖形管理工具
7.5 本章小結(jié)
7.6 習題
第8章 DHCP服務器
8.1 DHCP基礎
8.1.1 什么是DHCP
8.1.2 DHCP常用術語
8.1.3 DHCP客戶機首次申請IP 地址
8.1.4 DHCP客戶機重新登陸
8.1.5 更新IP地址租約
8.2 DHCP的安裝與配置
8.2.1 DHCP服務器的安裝
8.2.2 DHCP服務器的啟動與關閉
8.2.3 DHCP服務器的卸載
8.2.4 DHCP服務器的主配置文件
8.2.5 如何編寫DHCP服務器的主配置文件
8.2.6 案例:DHCP服務器的安裝與配置
8.3 DHCP 中繼代理
8.3.1 DHCP中繼代理簡介
8.3.2 案例:跨網(wǎng)段的DHCP中繼代理
8.4 本章小結(jié)
8.5 習題
第9章 FTP服務器
9.1 FTP 簡介
9.1.1 FTP協(xié)議
9.1.2 FTP工作模式
9.2 使用Vsftp服務器
9.2.1 Vsftp服務器的安裝與啟動
9.2.2 FTP服務器的用戶類型
9.2.3 Vsftp服務器的測試
9.2.4 FTP 常用命令
9.2.5 Vsftp服務器的配置文件
9.3 深入使用Vsftp服務器
9.3.1 匿名用戶訪問Vsftp 服務器
9.3.2 本名用戶訪問Vsftp 服務器
9.3.3 虛擬用戶訪問Vsftp 服務器
9.3.4 禁止指定用戶登錄FTP服務器
9.4 本章小 結(jié)
9.5 習題
第 10章 Apache服務器
10.1 WWW 服務概述
10.1.1 WWW簡介
10.1.2 相關術語
10.1.3 WWW工作原理
10.2 Apache服務器的安裝和基本配置
10.2.1 Apache的產(chǎn)生
10.2.2 Apache的特點
10.2.2 安裝Apache服務器軟件包
10.2.3 Apache服務器的啟動和停止
10.2.4 測試Apache服務器
10.2.5 Apache服務器的配置文件
10.2.6 Apache服務器的主配置文件選項
10.2.7 日志記錄
10.3 目錄的訪問限制
10.3.1 定義目錄的訪問限制
10.3.2 案例:實現(xiàn)訪問控制和認證
10.4 虛擬主機的配置和管理
10.4.1 基于IP 地址的虛擬主機
10.4.2 基于域名的虛擬主機
10.4.3 基于端口的虛擬主機
10.5 本章小結(jié)
10.6 習題
第 11章 DNS服務器
11.1 DNS概述
11.1.1 hosts文件
11.1.2 DNS域名空間的分層結(jié)構(gòu)
11.1.3 域名服務器類型
11.1.4 DNS 解析原理
11.2 DNS服務器配置基礎
11.2.1 配置DNS服務器
11.2.2 BIND配置文件詳解
11.3 部署主從DNS 服務器
11.3.1 部署主從DNS服務器
11.3.2 DNS服務器委派與轉(zhuǎn)發(fā)
11.4 本章小結(jié)
11.5 習題
第 12章 Squid代理服務器的配置與管理
12.1 代理服務器概述
12.1.1 代理服務器的工作機制
12.1.2 代理服務器的分類
12.2 Squid服務器的基礎設定
12.2.1 安裝Squid服務器
12.2.2 啟動與關閉Squid服務器
12.2.3 配置文件及目錄
12.3 配置Squid 代理服務器的訪問控制
12.4 案例:部署Squid代理服務器的正向代理
12.5 案例:部署Squid代理服務器的反向代理
12.6 本章小結(jié)
12.7 習 題
第 13章 Shell編程
13.1 Shell概述
13.1.1 什么是Shell
13.1.2 Shell的分類
13.1.3 Shell的語法介紹
13.1.4 Shell腳本的創(chuàng)建與執(zhí)行過程
13.1.5 Shell腳本的調(diào)試
13.1.6 Shell腳本的退出
13.2 Shell變量
13.2.1 環(huán)境變量
13.2.2 用戶自定義變量
13.2.3 預定義變量
13.2.4 位置變量
13.3 變量的輸入與輸出
13.3.1 使用 read命令實現(xiàn)輸入
13.3.2 使用 echo、printf命令實現(xiàn)輸出
13.4 數(shù)值計算
13.4.1 算術運算符及運算命令
13.4.2 expr命令
13.4.3 使用(())雙括號運算符
13.4.4 使用中括號
13.4.5 使用let命令
13.4.6 使用declare命令
13.5 條件測試
13.5.1 條件測試方法概述
13.5.2 字符串比較
13.5.3 整數(shù)測試表達式
13.5.4 邏輯操作符
13.5.5 文件操作
13.5.5 測試表達式test、[]、[[]]、(()) 的總結(jié)
13.6 條件判斷控制語句
13.6.1 if條件語句
13.6.2 case條件語句
13.7 循環(huán)控制語句
13.7.1 for循環(huán)語句
13.7.2 while循環(huán)語句
13.7.3 until循環(huán)語句
13.7.4 循環(huán)控制語句
13.8 腳本運維實例
13.7.1 系統(tǒng)初始化腳本
13.7.2 模擬登錄FTP 服務器下載文件
13.7.3 批量創(chuàng)建用戶
13.9 本章小結(jié)
13.10 習題
第 14章 正則表達式與文本處理
14.1 正則表達式
14.1.1 什么是正則表達式
14.1.2 正則表達式的類型
14.1.3 基本正則表達式元字符
14.1.4 擴展正則表達式元字符
14.2 sed編輯器
14.2.1 sed命令格式
14.2.2 sed的緩沖區(qū)
14.2.3 sed命令的基礎用法
14.2.4 運用sed編寫Shell腳本
14.3 awk
14.3.1 awk命令格式
14.3.2 BEGIN模式和END模式
14.3.3 awk的運算符
14.3.4 運用awk編寫Shell腳本
14.5 本章小結(jié)
14.6 習題
第 15章 無人值守安裝系統(tǒng)
15.1 無人值守安裝系統(tǒng)
15.1.1 PXE 簡介
15.1.2 TFTP 簡介
15.1.3 Kickstart 簡介
15.1.4 無人值守安裝系統(tǒng)的工作流程
15.2 部署無人值守服務器
15.2.1 安裝配置DHCP服務器、TFTP服務器、FTP服務器
15.2.2 配置啟動文件和Linux系統(tǒng)安裝文件
15.2.3 配置自動應答文件
15.2.4 客戶端主機配置
15.3 本章小結(jié)
15.4 習題
第 16章 自動化配置管理平臺
16.1 Ansible概述
16.1.1 Ansible 簡介
16.1.2 Ansible 的架構(gòu)
16.1.3 Ansible 的工作過程
16.1.4 YAML簡介
16.2 Ansible安裝配置
16.2.1 Ansible 的安裝
16.2.2 設置SSH通信
16.2.3 配置主機清單
16.3 Ansible命令基礎
16.3.1 Ansible 的目錄結(jié)構(gòu)
16.3.2 Ansible 的配置文件
16.3.3 Ansible 的命令集
16.3.3 Ad-hoc 命令
16.4 Ansible的常用模塊
16.4.1 什么是Ansible模塊
16.4.2 Ansible的常用模塊
16.5 Playbook基礎
16.5.1 Playbook的核心元素
16.5.2 Playbook的基本語法
16.5.3 Role
16.5 Playbook案例應用
16.6 本章小結(jié)
16.7 習題
第 17章 企業(yè)監(jiān)控系統(tǒng)
17.1 監(jiān)控軟件概述
17.1.1 監(jiān)控系統(tǒng)的功能
17.1.2 監(jiān)控軟件簡介
17.2 Zabbix 的安裝
17.2.1 Zabbix 的安裝
17.2.2 初始化Zabbix的Web界面
17.3 Zabbix Agent安裝配置
17.3.1 Zabbix Server 端自我監(jiān)控
17.3.2 Zabbix Agent安裝配置
17.4 Zabbix基本使用
17.4.1 添加一個用戶
17.4.2 添加監(jiān)控Host
17.4.3 添加Item
17.4.4 模板Template
17.4.5 創(chuàng)建Trigger
17.4.6 設置Action
17.5 案例:自定義郵件報警
17.6 數(shù)據(jù)可視化
17.6.1 簡單的圖形
17.6.2 圖表的使用
17.7.3 自定義圖表
17.7 本章小結(jié)
17.8 習題