本书详细讲解了Linux系统的特点和各个发行版本,并提供了学习建议内容,包括:使用虚拟机构建Linux学习环境、常用Linux工具软件的使用、无人值守安装及网络安装;Linux服务器在生产环境中的管理建议;Linux常用命令;文本编辑器Vim的使用与进阶技巧;Linux源码包与二进制包的安装、软件包部署的建议;Linux用户和用户组的管理命令;Linux的权限管理、访问控制列表、系统特殊权限和文件属性权限、管理员授权;Linux文件系统介绍、文件系统管理常用命令、系统分区规划与操作等。本书适合基于Linux平台进行服务部署、运维及开发的技术人员,以及大学计算机相关专业的学生使用,也可以作为学习云计算的入门书籍。
沈超尚硅谷IT教育Linux教学总监,资深Linux技术和虚拟化技术工程师,著名Linux培训专家,从事Linux培训工作十多年,在Linux系统管理、服务管理、性能调优、集群和虚拟化方面有深入研究。李明知名Linux技术专家,国内早期Linux从业者及教育工作者之一,曾出版《完美应用Ubuntu》《UNIX系统管理实用教程》等多本UNIX/Linux技术图书,国内多所大学外聘专家讲师。
第1章 知其然知其所以然:Linux系统简介 1
1.1 什么是操作系统 1
1.2 从UNIX到Linux 2
1.2.1 UNIX的坎坷历史 2
1.2.2 Linux的那些往事 3
1.2.3 UNIX与Linux的亲密关系 4
1.2.4 UNIX/Linux系统结构 5
1.3 详细了解Linux 6
1.3.1 天使与魔鬼 6
1.3.2 Linux的应用领域 7
1.3.3 Linux的发行版本 9
1.4 学习Linux的建议 11
本章小结 12
第2章 好的开始是成功的一半:Linux系统安装 13
2.1 虚拟机软件VMware的应用 13
2.2 Linux光盘安装及设置 21
2.2.1 CentOS 7.x版本的区别 21
2.2.2 光盘安装CentOS 7.x 21
2.3 Linux U盘安装 41
2.3.1 所需工具 42
2.3.2 安装步骤 42
2.4 Linux无人值守安装 48
2.4.1 概念和原理 48
2.4.2 无人值守安装的条件与步骤 49
2.4.3 无人值守安装试验 49
2.5 用dd命令复制安装Linux 59
2.5.1 dd命令是什么 59
2.5.2 dd配置步骤 60
2.6 远程管理工具 60
2.6.1 安全漂亮的Xshell 60
2.6.2 功能强大的SecureCRT 62
本章小结 63
第3章 新手宝典:给初学者的Linux服务器管理建议 64
3.1 学习Linux的注意事项 64
3.2 Linux服务器的管理和维护建议 65
本章小结 69
第4章 万丈高楼平地起:Linux常用命令 70
4.1 命令提示符和命令的基本格式 70
4.1.1 命令提示符 70
4.1.2 命令的基本格式 71
4.2 目录操作命令 72
4.2.1 ls命令 72
4.2.2 cd命令 74
4.2.3 mkdir命令 77
4.2.4 rmdir命令 77
4.2.5 tree命令 78
4.3 文件操作命令 79
4.3.1 touch命令 79
4.3.2 stat命令 80
4.3.3 cat命令 83
4.3.4 more命令 84
4.3.5 less命令 85
4.3.6 head命令 85
4.3.7 tail命令 85
4.3.8 ln命令 87
4.4 目录和文件都能操作的命令 94
4.4.1 rm命令 94
4.4.2 cp命令 95
4.4.3 mv命令 98
4.5 权限管理命令 99
4.5.1 权限介绍 99
4.5.2 基本权限的命令 101
4.5.3 基本权限的含义 103
4.5.4 所有者和所属组命令 108
4.5.5 umask默认权限 110
4.6 帮助命令 113
4.6.1 man命令 113
4.6.2 info命令 117
4.6.3 help命令 118
4.6.4 --help选项 119
4.7 搜索命令 119
4.7.1 whereis命令 119
4.7.2 which命令 120
4.7.3 locate命令 120
4.7.4 find命令 122
4.8 压缩和解压缩命令 130
4.8.1 压缩文件介绍 130
4.8.2 “.zip”格式 131
4.8.3 “.gz”格式 132
4.8.4 “.bz2”格式 134
4.8.5 “.tar”格式 136
4.8.6 “.tar.gz”和“.tar.bz2”格式 137
4.9 关机和重启命令 138
4.9.1 sync数据同步 138
4.9.2 shutdown命令 139
4.9.3 reboot命令 140
4.9.4 halt和poweroff命令 140
4.9.5 init命令 140
4.10 常用网络命令 140
4.10.1 配置Linux的IP地址 140
4.10.2 ip命令 143
4.10.3 ifconfig命令 144
4.10.4 ifup和ifdown命令 145
4.10.5 ping命令 145
4.10.6 ss命令 146
4.10.7 netstat命令 148
4.10.8 write命令 151
4.10.9 wall命令 151
4.10.10 mail命令 151
本章小结 153
第5章 简约而不简单的文本编辑器Vim 154
5.1 Vim的工作模式 154
5.2 进入Vim 155
5.2.1 使用Vim打开文件 155
5.2.2 直接进入指定位置 156
5.3 Vim的基本应用 156
5.3.1 插入命令 156
5.3.2 光标移动命令 157
5.3.3 使用Vim进行编辑 158
5.3.4 保存退出命令 162
5.4 Vim的进阶应用 162
5.4.1 Vim配置文件 162
5.4.2 多窗口编辑 164
5.4.3 区域复制 164
5.4.4 定义快捷键 165
5.4.5 在Vim中与Shell交互 166
5.4.6 文本格式转换 166
5.4.7 Vim的宏记录 167
5.4.8 ab命令的小技巧 168
本章小结 169
第6章 从小巧玲珑到羽翼渐丰:软件安装 170
6.1 软件包管理简介 170
6.1.1 软件包的分类 170
6.1.2 初识源码包 171
6.1.3 源码包的特点 172
6.1.4 二进制包的特点 173
6.2 RPM包管理——rpm命令管理 173
6.2.1 RPM包的命名规则 173
6.2.2 RPM包的依赖性 174
6.2.3 RPM包的安装与升级 176
6.2.4 RPM包查询 179
6.2.5 RPM包卸载 182
6.2.6 RPM包校验与数字证书 183
6.2.7 RPM包中的文件提取 186
6.2.8 SRPM包的使用 188
6.2.9 RPM包的深入应用 190
6.3 RPM包管理——yum在线管理 192
6.3.1 yum源搭建 192
6.3.2 常用yum命令 194
6.3.3 yum软件组管理 197
6.4 源码包管理 197
6.4.1 源码包的安装准备 197
6.4.2 安装源码包 198
6.4.3 源码包升级 200
6.4.4 卸载源码包 203
6.4.5 函数库管理 203
6.5 脚本程序包管理 205
6.5.1 脚本程序简介 205
6.5.2 安装Webmin 205
6.6 软件包的选择 208
本章小结 208
第7章 得人心者得天下:用户和用户组管理 209
7.1 用户配置文件和管理相关文件 209
7.1.1 用户信息文件/etc/passwd 209
7.1.2 影子文件/etc/shadow 212
7.1.3 组信息文件/etc/group 214
7.1.4 组密码文件/etc/gshadow 215
7.1.5 用户管理相关文件 215
7.2 用户管理命令 217
7.2.1 添加用户:useradd 217
7.2.2 修改用户密码:passwd 223
7.2.3 修改用户信息:usermod 225
7.2.4 修改用户密码状态:chage 227
7.2.5 删除用户:userdel 228
7.2.6 查看用户的UID和GID:id 229
7.2.7 切换用户身份:su 229
7.3 用户组管理命令 230
7.3.1 添加用户组:groupadd 230
7.3.2 修改用户组:groupmod 231
7.3.3 删除用户组:groupdel 231
7.3.4 把用户添加进组或从组中删除:gpasswd 231
7.3.5 改变有效组:newgrp 232
本章小结 233
第8章 坚如磐石的防护之道:权限管理 234
8.1 ACL权限 234
8.1.1 开启ACL权限 235
8.1.2 ACL权限设置 236
8.2 文件特殊权限——SetUID、SetGID、Sticky BIT 241
8.2.1 文件特殊权限之SetUID 241
8.2.2 文件特殊权限之SetGID 245
8.2.3 文件特殊权限之Sticky BIT 246
8.2.4 特殊权限设置 247
8.3 文件系统属性chattr权限 248
8.3.1 设定文件系统属性:chattr 248
8.3.2 查看文件系统属性:lsattr 250
8.4 系统命令sudo权限 250
8.4.1 sudo用法 250
8.4.2 sudo举例 251
本章小结 253
第9章 牵一发而动全身:文件系统管理 254
9.1 硬盘结构 254
9.1.1 机械硬盘(HDD) 255
9.1.2 固态硬盘(SSD) 258
9.2 Linux中常见的文件系统 259
9.2.1 文件系统的特性 259
9.2.2 Linux支持的常见文件系统 260
9.3 回顾硬盘分区 262
9.3.1 硬盘分区的类型 262
9.3.2 Linux中硬盘与分区的表示方式 262
9.4 文件系统常用命令 263
9.4.1 文件系统查看命令:df 263
9.4.2 统计目录或文件所占磁盘空间大小命令:du 264
9.4.3 挂载命令mount和卸载命令umount 265
9.4.4 文件系统检测与修复命令:xfs_repair 270
9.4.5 显示磁盘状态命令:xfs_info 271
9.4.6 显示分区信息:blkid 271
9.4.7 列出系统中所有磁盘:lsblk 271
9.5 fdisk命令分区 272
9.5.1 添加新硬盘 272
9.5.2 创建分区 275
9.5.3 格式化分区 281
9.5.4 建立挂载点并挂载 282
9.5.5 实现开机后自动挂载 283
9.6 /etc/fstab文件修复 284
9.7 gdisk命令分区 286
9.7.1 添加新硬盘 286
9.7.2 创建分区 286
9.7.3 格式化分区 289
9.7.4 建立挂载点并挂载 290
9.7.5 实现开机后自动挂载 290
9.8 parted命令分区 290
9.8.1 parted交互模式 290
9.8.2 parted命令的使用 292
9.9 分配swap分区 295
9.9.1 分区 295
9.9.2 格式化 297
9.9.3 挂载swap分区 297
本章小结 298