图书目录

目录

第1章搭建与测试Linux服务器1

1.1认识Linux操作系统1

1.1.1Linux系统的历史1

1.1.2Linux的版权问题2

1.1.3理解Linux体系结构2

1.1.4认识Linux的版本3

1.1.5Red Hat Enterprise Linux 84

1.2使用VM虚拟机安装RHEL 85

1.2.1安装配置VM虚拟机5

1.2.2安装配置RHEL 8操作系统12

1.3重置root管理员密码21

1.4systemd初始化进程22

1.5启动Shell24

1.6配置常规网络25

1.6.1使用nmtui修改主机名25

1.6.2使用系统菜单配置网络26

1.6.3使用图形界面配置网络28

1.6.4使用nmcli命令配置网络31

1.7项目实录: Linux系统安装与基本配置34

1.8练习题35

第2章使用常用的Linux命令37

2.1Linux命令基础37

2.1.1了解Linux命令特点37

2.1.2后台运行程序38

2.2熟练使用文件目录类命令38

2.2.1熟练使用浏览目录类命令38

2.2.2熟练使用浏览文件类命令39

2.2.3熟练使用目录操作类命令41

2.2.4熟练使用cp命令42

2.2.5熟练使用文件操作类命令44

2.3熟练使用系统信息类命令52

2.4熟练使用进程管理类命令54Linux系统管理(RHEL 8 /CentOS 8)(微课版)目录2.5熟练使用其他常用命令58

2.6项目实录: 使用Linux基本命令61

2.7练习题62

第3章安装与管理软件包64

3.1软件包相关知识概述64

3.1.1开放源代码、编译器与可执行文件64

3.1.2make与configure65

3.1.3Tarball软件 66

3.1.4安装与升级软件66

3.1.5RPM 与 DPKG67

3.1.6RPM与SRPM 67

3.1.7i386、i586、i686、noarch和x86_64 68

3.2使用RPM 软件管理程序70

3.2.1安装软件70

3.2.2RPM 升级、更新与查询 (upgrade/freshen/query) 73

3.2.3RPM实践练习77

3.2.4RPM反安装与重建数据库(erase/rebuilddb) 78

3.3使用yum和dnf79

3.3.1yum软件仓库79

3.3.2BaseOS和AppStream 80

3.3.3修改容器产生的问题与解决方法82

3.3.4利用dnf进行查询、安装、升级与移除82

3.4管理Tarball86

3.4.1使用源代码管理软件所需要的基础软件87

3.4.2Tarball安装的基本步骤87

3.4.3Tarball软件安装的建议事项(如何删除与升级)88

3.4.4实例90

3.5项目实录: 安装和管理软件包92

3.6练习题92

第4章Shell与vim编辑器94

4.1Shell94

4.1.1Shell概述94

4.1.2Shell环境变量96

4.1.3正则表达式99

4.1.4输入/输出重定向与管道101

4.1.5Shell脚本104

4.2vim编辑器107

4.3项目实录114

项目实录一: Shell编程114

项目实录二: vim编辑器114

4.4练习题115

第5章用户和组管理117

5.1理解用户账户和组117

5.2理解用户账户文件和组文件118

5.2.1理解用户账户文件118

5.2.2理解组文件120

5.3管理用户账户121

5.3.1新建用户121

5.3.2设置用户账户口令122

5.3.3维护用户账户123

5.4管理组126

5.4.1维护组账户126

5.4.2为组添加用户126

5.5使用su命令127

5.6使用常用的账户管理命令128

5.7企业实战与应用——账户管理实例129

5.8项目实录: 管理用户和组130

5.9练习题130

第6章文件系统和磁盘管理133

6.1了解文件系统133

6.1.1认识文件系统133

6.1.2理解Linux文件系统目录结构134

6.1.3理解绝对路径与相对路径136

6.1.4Linux文件权限管理136

6.2管理磁盘141

6.2.1MBR硬盘与GPT硬盘141

6.2.2物理设备的命名规则142

6.2.3硬盘分区143

6.2.4为虚拟机添加需要的硬盘144

6.2.5硬盘的使用规划146

6.2.6使用硬盘管理工具fdisk146

6.2.7使用其他硬盘管理工具150

6.3在Linux中配置软RAID154

6.3.1常用的RAID154

6.3.2实现RAID的典型案例156

6.4LVM逻辑卷管理器159

6.4.1LVM概述159

6.4.2实现LVM的典型案例160

6.5硬盘配额配置企业案例(XFS文件系统)164

6.5.1环境需求164

6.5.2解决方案165

6.6项目实录168

项目实录一: 文件权限管理168

项目实录二: 文件系统管理169

项目实录三: LVM逻辑卷管理器169

项目实录四: 动态磁盘管理170

6.7练习题170

第7章配置防火墙和SELinux173

7.1防火墙概述173

7.1.1防火墙的特点173

7.1.2iptables与firewalld174

7.1.3NAT基础知识174

7.1.4SELinux176

7.2案例设计及准备177

7.3使用firewalld服务177

7.3.1使用终端管理工具178

7.3.2使用图形管理工具182

7.4管理SELinux185

7.4.1设置SELinux的模式185

7.4.2设置SELinux安全上下文186

7.4.3管理布尔值187

7.5NAT(SNAT和DNAT)企业实战案例189

7.5.1企业环境和需求189

7.5.2解决方案190

7.6项目实录: 配置与管理firewalld防火墙194

7.7练习题195

第8章配置与管理代理服务器197

8.1代理服务器概述197

8.1.1代理服务器的工作原理197

8.1.2代理服务器的作用198

8.2案例设计与准备198

8.2.1案例设计198

8.2.2项目准备199

8.3安装与配置squid服务器199

8.3.1安装、启动、停止与随系统启动squid服务199

8.3.2配置squid服务器200

8.4企业实战与应用203

8.4.1企业环境和需求203

8.4.2手动设置代理服务器解决方案204

8.4.3客户端不需要配置代理服务器的解决方案206

8.4.4反向代理的解决方案208

8.4.5几种错误的解决方案208

8.5项目实录210

8.6练习题210

8.7综合案例分析211

第9章Linux系统监视与进程管理212

9.1知识准备212

9.1.1进程212

9.1.2子进程与父进程214

9.1.3系统或网络服务: 常驻在内存的进程215

9.1.4Linux 的多用户、多任务环境215

9.1.5什么是作业管理216

9.2使用系统监视217

9.2.1w命令217

9.2.2who命令 217

9.2.3系统监控命令top 218

9.3作业管理223

9.3.1作业的后台管理223

9.3.2脱机管理226

9.4进程管理227

9.4.1进程的查看227

9.4.2进程的管理231

9.4.3管理进程优先级233

9.5查看系统资源235

9.6项目实录240

9.7练习题241

第10章使用gcc和make调试程序242

10.1了解程序的调试242

10.1.1编译时错误 242

10.1.2运行时错误242

10.1.3逻辑错误和语义错误243

10.2使用传统程序语言进行编译243

10.2.1安装gcc243

10.2.2单一程序: 打印 Hello World 245

10.2.3主程序、子程序链接、子程序的编译 246

10.2.4调用外部函数库: 加入链接的函数库 248

10.2.5gcc的简易用法(编译、参数与链接)249

10.3使用make进行宏编译250

10.3.1为什么要用make250

10.3.2了解makefile的基本语法与变量 253

10.4练习题255

参考文献256