内容简介 · · · · · ·
本书是一本针对Linux运维新手的入门书,通俗易懂地介绍入职Linux运维岗位需要掌握的各种知识与技能,全书共29章:第1章~第3章介绍Linux系统的安装、Linux的命令以及Linux编辑器Vim的使用;第4章~第11章介绍Linux系统管理的基本内容,包括用户与用户组的管理、权限管理、文件归档、磁盘空间管理、RAID磁盘阵列的搭建、LVM存储空间的管理、Linux网络协议及进程管理、软件包的管理与安装;第12章~第23章介绍各类服务的搭建和应用,包括Samba服务、FTP服务、NFS服务、NTP服务、DNS域名系统、DHCP服务、企业级Nginx服务、Tomcat服务、Cobbler服务、Jenkins服务、防火墙的配置、LAMP架构搭建、Zabbix监控系统的搭建;第24章~第29章介绍自动化运维工具Ansible的配置及应用、shell及其...
本书是一本针对Linux运维新手的入门书,通俗易懂地介绍入职Linux运维岗位需要掌握的各种知识与技能,全书共29章:第1章~第3章介绍Linux系统的安装、Linux的命令以及Linux编辑器Vim的使用;第4章~第11章介绍Linux系统管理的基本内容,包括用户与用户组的管理、权限管理、文件归档、磁盘空间管理、RAID磁盘阵列的搭建、LVM存储空间的管理、Linux网络协议及进程管理、软件包的管理与安装;第12章~第23章介绍各类服务的搭建和应用,包括Samba服务、FTP服务、NFS服务、NTP服务、DNS域名系统、DHCP服务、企业级Nginx服务、Tomcat服务、Cobbler服务、Jenkins服务、防火墙的配置、LAMP架构搭建、Zabbix监控系统的搭建;第24章~第29章介绍自动化运维工具Ansible的配置及应用、shell及其命令的使用。 本书涵盖了Linux运维的大部分常见场景和诸多案例,适合Linux新手和Linux运维工程师使用,也可作为培训机构或大专院校的教学用书。
作者简介 · · · · · ·
吴永袁,毕业于湖南大学信息科学与工程学院软件工程专业,多年IT互联网行业经验,资深Linux技术专家和数字化转型专家,前开课吧高级培训师,曾任职多家教育机构Python讲师和Linux运维讲师,并受邀为多所高校讲授Linux运维课程。
王 霄,从事计算机相关工作十余年,主要深耕运维领域。历任58同城、宝驾、天鹅到家等公司运维负责人,推动各公司从传统运维到现代智能运维模式的转化,对运维自动化有深刻了解。现为阿里云MVP、华为云MVP成员、ITCLUB会员、ITECH演讲嘉宾、中国商业联合会智库成员等。
目录 · · · · · ·
1.1 Linux的历史和特点 1
1.1.1 Linux的前世今生 1
1.1.2 Linux系统的特点 2
1.1.3 Linux发行版CentOS 3
1.2 虚拟机平台安装配置 4
· · · · · · (更多)
1.1 Linux的历史和特点 1
1.1.1 Linux的前世今生 1
1.1.2 Linux系统的特点 2
1.1.3 Linux发行版CentOS 3
1.2 虚拟机平台安装配置 4
1.2.1 虚拟机平台的搭建 4
1.2.2 在虚拟机上安装CentOS 10
1.2.3 使用VMWare备份操作系统 15
1.3 Linux系统的文件 16
1.3.1 文件系统的基本组成 16
1.3.2 文件系统的目录结构 17
1.4 Linux系统的命令 19
1.4.1 认识系统终端 19
1.4.2 Linux命令的基本格式 19
1.4.3 Linux命令的使用 20
第2章 Linux命令进阶 28
2.1 命令的类型与执行过程 28
2.1.1 命令的类型 28
2.1.2 命令的执行过程 30
2.2 常用命令 30
2.2.1 df命令 30
2.2.2 free命令 31
2.2.3 head命令 31
2.2.4 tail命令 32
2.2.5 less命令 32
2.2.6 wc命令 33
2.2.7 date命令 33
2.2.8 cal命令 34
2.2.9 clear/Ctrl+L命令 35
2.2.10 管道 35
2.3 高级命令 36
2.3.1 hostname命令 36
2.3.2 id命令 36
2.3.3 ps -ef命令 37
2.3.4 top命令 38
2.3.5 du -sh命令 39
2.3.6 find命令 40
2.3.7 systemctl命令 40
2.3.8 kill命令 41
2.3.9 ip addr命令 42
2.3.10 reboot命令 43
2.3.11 shutdown命令 43
2.3.12 uptime命令 43
2.3.13 uname命令 44
2.3.14 netstat-tnlp命令 45
2.3.15 man命令 45
2.3.16 别名机制 45
2.3.17 ping命令 46
2.4 执行计划任务的命令 46
2.4.1 at命令的使用 47
2.4.2 crontab命令的使用 48
第3章 编辑器之神——vim 51
3.1 vi/vim编辑器概述 51
3.2 vim的三种模式 52
3.2.1 命令模式 52
3.2.2 末行模式 54
3.2.3 编辑模式 57
3.3 vim的应用扩展 57
3.3.1 vim的配置 58
3.3.2 vim的异常退出 59
3.3.3 vim的退出方式 60
3.3.4 vim实用小技巧 60
第4章 用户与用户组管理 61
4.1 用户与用户组管理 61
4.1.1 系统用户的分类 61
4.1.2 用户和组的关系 62
4.2 系统用户管理 63
4.2.1 添加用户 63
4.2.2 添加登录用户 64
4.2.3 修改用户 65
4.2.4 设置密码 66
4.2.5 用户密码管理 67
4.2.6 删除用户 67
4.3 用户组管理 68
4.3.1 用户组添加 69
4.3.2 用户组编辑 69
4.3.3 用户组删除 70
4.4 系统网络设置 70
4.4.1 网卡配置文件 70
4.4.2 Linux自有服务——SSH服务 72
4.4.3 远程终端应用 72
4.4.4 Filezilla工具 74
第5章 权限管理 77
5.1 概述 77
5.1.1 用户权限介绍 77
5.1.2 用户身份介绍 77
5.1.3 Linux的权限介绍 78
5.2 权限的设置 81
5.2.1 字母形式的权限 81
5.2.2 数字形式 83
5.3 属主与属组设置 84
5.3.1 chown命令应用 84
5.3.2 chgrp命令应用 85
5.4 文件的特殊权限 86
5.4.1 suid(set uid,设置用户ID)权限应用 86
5.4.2 sgid权限应用 87
5.4.3 案例:文件扩展权限acl 88
5.5 实战sudo命令 89
第6章 文件归档 92
6.1 文件的类型 92
6.1.1 目录文件 92
6.1.2 普通文件 93
6.1.3 链接文件 94
6.2 文件归档和归档技术 95
6.2.1 用tar命令归档文件 95
6.2.2 解压tar格式归档文件 96
6.2.3 压缩/解压缩多种格式文件 97
第7章 磁盘空间管理 99
7.1 磁盘分区的概念 99
7.1.1 硬盘的物理结构 99
7.1.2 分区的基本组成方式 100
7.1.3 磁盘分区的命名规则 101
7.2 使用fdisk管理分区 101
7.2.1 获取磁盘分区信息 101
7.2.2 创建磁盘分区 104
7.2.3 分区卸载报错解决方案 105
7.2.4 利用/etc/fstab文件挂载分区 106
7.3 gdisk磁盘分区工具 108
第8章 RAID磁盘阵列的搭建 110
8.1 RAID概述 110
8.2 常见的RAID类型 111
8.2.1 RAID0 111
8.2.2 RAID1 111
8.2.3 RAID10和RAID01 112
8.2.4 RAID3 112
8.2.5 RAID5或RAID6 112
8.3 案例:华为2U机架式服务器RAID5配置 113
第9章 LVM存储空间的管理 116
9.1 LVM概述 116
9.1.1 LVM的原理 116
9.1.2 LVM常用术语 117
9.1.3 LVM的优点 117
9.2 创建LVM的基本步骤 118
9.2.1 LVM的创建 118
9.2.2 LVM管理常用命令 121
9.2.3 逻辑卷的挂载 121
9.3 LVM的日常维护 123
9.3.1 LV存储空间扩容 123
9.3.2 VG存储空间扩容 124
9.3.3 LVM删除操作 124
第10章 Linux网络协议及进程管理 126
10.1 OSI和TCP/IP的模型结构 126
10.1.1 OSI模型 127
10.1.2 TCP/IP模型 127
10.2 计算机的网络类型、协议及IP地址 128
10.2.1 网络类型 128
10.2.2 常见网络协议 129
10.2.3 IP地址分类 130
10.3 TCP与UDP协议 131
10.3.1 TCP的概念 131
10.3.2 TCP三次握手 131
10.3.3 TCP四次挥手 132
10.3.4 TCP与UDP协议 132
10.3.5 基于VMWare的网络模式 133
10.4 网络相关调试工具 134
10.4.1 修改网卡IP地址 134
10.4.2 新增网卡设备 135
10.4.3 自动获取IP地址 136
10.4.4 配置静态IP地址 137
10.4.5 案例:设置临时IP地址 138
10.4.6 端口的监听状态 138
10.5 系统进程管理 139
10.5.1 进程的概念 139
10.5.2 进程的属性 140
10.5.3 进程的优先级 140
10.5.4 查看进程的命令ps与lsof 141
10.5.5 pstree工具的使用 144
第11章 软件包的管理与安装 145
11.1 RPM管理软件包 145
11.1.1 RPM的使用 145
11.1.2 安装RPM软件 147
11.1.3 RPM查询功能 148
11.1.4 RPM包卸载和升级 149
11.1.5 解决Redis依赖关系问题 149
11.2 搭建YUM服务 151
11.2.1 配置YUM服务的源 152
11.2.2 YUM源的使用 153
11.2.3 YUM服务常用命令 155
11.2.4 YUM服务的其他应用 156
第12章 Samba服务的搭建与应用 158
12.1 Samba简介 158
12.2 软件开发架构概述 159
12.2.1 C/S架构 159
12.2.2 B/S架构 159
12.3 Samba通信协议与服务搭建 160
12.3.1 Samba通信协议 160
12.3.2 搭建Samba服务 161
12.4 基于Windows的客户端应用 163
12.4.1 Windows客户端配置 163
12.4.2 基于samba-swat的工具应用 165
第13章 FTP服务的搭建与应用 167
13.1 FTP服务简介 167
13.1.1 FTP服务模型 167
13.1.2 FTP的工作模式 168
13.2 FTP基础环境搭建 169
13.2.1 安装VSFTP软件 169
13.2.2 基于VSFTP的配置文件 170
13.3 VSFTP配置应用 171
13.3.1 实战一:创建匿名用户 171
13.3.2 实战二:虚拟用户应用 172
13.4 FTP维护术语与响应码 174
13.4.1 FTP常用术语 175
13.4.2 FTP响应码 175
第14章 NFS服务的搭建与应用 178
14.1 NFS简介 178
14.1.1 NFS服务的基本概念 178
14.1.2 安装NFS组件 179
14.1.3 NFS进程管理 179
14.2 NFS服务的配置与挂载 180
14.2.1 NFS服务的配置 180
14.2.2 开机自动挂载 182
第15章 NTP服务的搭建与应用 183
15.1 NTP服务器的搭建 183
15.1.1 NTP的基本概念 183
15.1.2 NTP的工作原理 184
15.1.3 安装NTP服务组件 184
15.2 NTP服务配置 185
15.2.1 NTP配置文件 185
15.2.2 NTP获取可靠时间源 187
15.2.3 NTP服务器时区设置 188
15.3 基于NTP的时间同步配置 189
15.3.1 Linux系统时间同步 189
15.3.2 案例:同步阿里云时间服务器 190
第16章 DNS域名系统的搭建与应用 191
16.1 DNS概述 191
16.1.1 DNS的基本概念 191
16.1.2 域和域名 192
16.2 DNS基础环境搭建 193
16.2.1 DNS的工作原理 193
16.2.2 域名解析的方式 194
16.2.3 DNS服务组件的安装与进程管理 195
16.3 域名系统的基本应用 197
16.3.1 正/反向解析 197
16.3.2 DNS资源记录 198
16.3.3 域名系统服务配置 199
第17章 DHCP服务的搭建与应用 208
17.1 DHCP概述 208
17.1.1 什么是DHCP 208
17.1.2 DHCP服务的IP地址分配 209
17.1.3 DHCP的特殊地址段 209
17.2 DHCP服务环境搭建 210
17.2.1 DHCP服务组件安装 210
17.2.2 DHCP服务运行原理 211
17.2.3 DHCP配置文件 212
17.3 案例:DHCP环境的搭建与测试 214
第18章 防火墙的概念及配置 216
18.1 防火墙概述 216
18.1.1 防火墙的概念 216
18.1.2 firewalld和iplables防火墙 217
18.2 防火墙的表概念 218
18.2.1 iptables中的三张表和五个链 218
18.2.2 iptables的过滤封包流程 219
18.2.3 iptables的语法 220
18.2.4 匹配应用举例 223
18.3 firewalld的域和服务 225
18.3.1 什么是域 225
18.3.2 服务的概念 226
18.4 firewalld常用命令及配置文件 227
18.4.1 基本命令及应用 227
18.4.2 配置文件及应用 229
第19章 企业级Nginx服务的搭建与应用案例 232
19.1 Nginx概述 232
19.1.1 Nginx是什么 232
19.1.2 Nginx的作用 232
19.1.3 Nginx的特点和应用领域 233
19.1.4 正/反向代理的概念 233
19.2 Nginx服务的安装配置 234
19.2.1 Nginx基础环境搭建 234
19.2.2 服务进程启动设置 236
19.2.3 主配置文件介绍 237
19.3 案例:Nginx在企业中的几种常见应用 240
19.3.1 搭建基于域名/IP的虚拟机 240
19.3.2 配置基于端口的虚拟机 241
19.3.3 基于Nginx的负载均衡配置 242
第20章 LAMP架构的搭建与应用案例 244
20.1 LAMP概述 244
20.1.1 什么是LAMP 244
20.1.2 Apache的基本模型 244
20.1.3 LAMP相关网站 245
20.1.4 搭建LAMP需要的组件 245
20.2 构建LAMP源码编译基础环境 246
20.3 虚拟主机配置 249
20.3.1 基于端口号的虚拟主机 249
20.3.2 基于域名创建虚拟主机 250
20.4 企业MySQL数据库环境搭建 251
20.4.1 MySQL概述 251
20.4.2 安装MySQL软件包 251
20.4.3 配置MySQL数据库 254
20.5 企业级源码编译安装PHP 256
20.6 案例:游戏部署及网站搭建 258
20.6.1 部署游戏上线 258
20.6.2 部署上线静态网站 259
20.6.3 一键搭建LAMP架构环境 260
第21章 Tomcat服务的搭建与应用案例 263
21.1 Tomcat的基本概念 263
21.1.1 Tomcat基本架构模型 263
21.1.2 Tomcat软件安装 263
21.2 Tomcat的基本结构 266
21.2.1 Tomcat目录 266
21.2.2 Tomcat日志文件 266
21.2.3 Tomcat主配置文件 267
21.2.4 Tomcat的三个端口 269
21.3 案例:基于Tomcat的应用部署 270
21.3.1 Tomcat多应用部署 270
21.3.2 Tomcat的集群搭建 272
21.3.3 Tomcat上线JPress系统 273
第22章 Cobbler服务的搭建与应用案例 276
22.1 Cobbler简介 276
22.1.1 Cobbler的基本概念 276
22.1.2 Cobbler的相关服务 277
22.1.3 Cobbler的工作过程 277
22.2 Cobbler的系统配置与环境搭建 278
22.2.1 系统配置 278
22.2.2 环境搭建 279
22.3 配置相关服务 280
22.4 案例:Cobbler自动化安装测试 285
第23章 Jenkins服务的搭建与应用 309
24.1 Jenkins简介 309
24.1.1 Jenkins的基本概念 309
24.1.2 持续集成的概念 310
24.2 Jenkins基础环境搭建 310
24.2.1 Jenkins分布式架构原理 311
24.2.2 安装Jenkins的Java环境 311
24.2.3 安装Jenkins服务组件 312
24.3 基于Web的Jenkins维护 315
24.3.1 Jenkins凭据应用管理 315
24.3.2 更新Jenkins插件版本 317
24.3.3 新建任务演示 318
24.4 Pipeline的基本应用 321
24.4.1 Pipeline的基本概念 321
24.4.2 Pipeline的结构 321
24.4.3 新建Pipeline任务 323
第24章 Zabbix监控系统的搭建与应用 326
25.1 Zabbix概述 326
25.1.1 Zabbix介绍 326
25.1.2 Zabbix组件结构 326
25.2 Zabbix服务搭建 327
25.2.1 安装Zabbix服务组件 327
25.2.2 启动Zabbix的服务进程 328
25.2.3 安装MariaDB数据库 328
25.3 Zabbix系统应用配置 329
25.3.1 为Zabbix前端配置PHP并更改时区 329
25.3.2 Zabbix监控配置 330
第26章 Ansible工具的配置与应用 337
26.1 搭建Ansible基础环境 337
26.1.1 Ansible的基本概念 337
26.1.2 安装Ansible软件 338
26.2 Ansible插件的基本配置 339
26.2.1 安装Ansible的插件 339
26.2.2 基于Python的环境配置 340
26.3 进入Ansible虚拟环境 342
26.3.1 创建playbook的目录结构 343
26.3.2 使用默认的调用入口文件 344
26.3.3 自定义调用入口文件 344
第27章 shell及其常用命令 346
27.1 shell概述 346
27.1.1 什么是shell 346
27.1.2 shell的工作原理 347
27.2 shell的常用命令 348
27.2.1 grep命令 348
27.2.2 cat命令 349
27.2.3 sort命令 350
27.2.4 uniq命令 351
27.2.5 tee命令 351
27.2.6 tr命令 352
27.3 变量的基本概念 353
27.3.1 变量的概念 353
27.3.2 变量的定义与引用 353
27.3.3 变量的其他用法 356
27.4 变量的类型 358
27.4.1 环境变量 358
27.4.2 局部变量 359
27.4.3 特殊变量 360
27.4.4 系统内置变量 360
27.5 变量的其他定义方式 362
27.6 shell的脚本编程 363
27.6.1 什么是shell脚本 363
27.6.2 shell中的通配符 364
27.6.3 shell中的引号 365
第28章 shell编程的流程控制 367
28.1 选择结构shell脚本 367
28.1.1 流程选择控制 367
28.1.2 案例解析 369
28.2 shell脚本的运算符 370
28.2.1 算术运算符 371
28.2.2 关系运算符 373
28.2.3 逻辑运算符 374
28.2.4 字符串运算符 375
28.2.5 文件测试运算符 376
28.3 脚本中的参数传递 378
28.4 循环语句 380
28.4.1 for循环语句 380
28.4.2 until循环语句 383
28.4.3 while循环语句 384
28.4.4 循环语句实例—随机数应用 384
28.4.5 嵌套循环语句 386
第29章 case语句、函数与正则表达式 388
29.1 case语句 388
29.2 函数及应用 390
29.2.1 函数的基本概念 390
29.2.2 函数的调用方式 391
29.3 正则表达式 393
29.3.1 正则表达式简述 393
29.3.2 正则表达式所解决的问题 393
29.3.3 正则表达式的元字符和应用 394
第30章 shell编程常用工具 398
30.1 sed工具及其应用 398
30.1.1 sed的工作流程 398
30.1.2 sed的语法格式 399
30.1.3 sed命令的基本应用 399
30.1.4 sed的综合运用 403
30.2 awk工具及其应用 404
30.2.1 awk的基本使用 404
30.2.2 awk的脚本编程 409
30.3 提取网卡的IP地址 411
· · · · · · (收起)
0 有用 Gavin 2024-07-13 16:39:30 北京
最近学习运维,把书籍看了一遍感觉非常通俗易懂适合像我这样的0基础人员一步一步学习。由浅入深后面还有实战案例,简直了。
0 有用 Gavin 2024-07-13 16:39:30 北京
最近学习运维,把书籍看了一遍感觉非常通俗易懂适合像我这样的0基础人员一步一步学习。由浅入深后面还有实战案例,简直了。