描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302498599
《Ubuntu Linux系统管理实战》全面介绍了Linux的基础知识、Ubuntu 17的安装方法、桌面环境、文件系统、文件管理、用户管理、服务管理、文件系统管理以及网络管理等技术。在介绍每部分内容时,都给出了大量具体的实例,使得读者能够深入了解、快速掌握相关系统操作。掌握本书所有内容,读者能够初步胜任Linux的日常管理和维护工作。
Linux是目前使用非常广泛的操作系统,而Ubuntu是众多Linux发行版中的佼佼者。本书由浅入深、循序渐进,使零基础的读者也能够熟练掌握如何管理和维护Ubuntu系统。
《Ubuntu Linux系统管理实战》分为三部分,第(一)部分是Ubuntu入门,包括Linux基础知识、Ubuntu 17的安装和配置、桌面环境、文件系统基础知识、文件和目录管理以及用户和权限管理等。第二部分是进阶篇,包括Ubuntu系统的启动和关闭、服务和进程管理、软件包管理、磁盘和文件系统管理以及网络管理等。第三部分是精通Linux,包括Shell编程、网络服务管理以及虚拟化和云计算等。
《Ubuntu Linux系统管理实战》内容精练、重点突出、实例丰富,是广大Linux维护和开发人员、网络管理维护人员的参考书,同时非常适合大中专院校师生学习阅读,也可作为高等院校计算机及相关专业当教材使用。
目 录
篇 Ubuntu入门
第1章 了解Ubuntu 3
1.1 什么是Linux 3
1.2 Linux发行版 5
1.2.1 Debian 6
1.2.2 Ubuntu 6
1.2.3 Arch Linux 7
1.2.4 Fedora 8
1.2.5 OpenSUSE 8
1.2.6 CentOS 9
1.2.7 Red Hat Enterprise Linux 10
1.3 Ubuntu概述 10
1.3.1 什么是Ubuntu 10
1.3.2 Ubuntu的版本 11
1.3.3 Ubuntu的特点 12
1.3.4 如何获得Ubuntu 13
1.4 GNU GPL和POSIX介绍 14
1.4.1 什么是GNU GPL 14
1.4.2 GNU GPL发展历史 14
1.4.3 如何正确理解GNU GPL 15
1.4.4 了解POSIX标准 15
1.5 学习Ubuntu的方法 15
第2章 安装Ubuntu 17
2.1 准备安装Ubuntu 17
2.1.1 获得安装介质 17
2.1.2 Ubuntu的硬件要求 19
2.1.3 Ubuntu的安装方式 20
2.2 虚拟机软件 20
2.2.1 常见虚拟机软件 20
2.2.2 选择虚拟机软件 21
2.2.3 安装Oracle VM VirtualBox 21
2.3 安装Ubuntu的方式 26
2.3.1 下载ISO镜像文件 26
2.3.2 创建虚拟机 26
2.3.3 安装Ubuntu过程 29
2.4 通过网络安装Ubuntu 35
2.4.1 下载网络安装器 35
2.4.2 通过网络安装Ubuntu步骤 35
2.5 将Ubuntu安装到U盘中 41
2.5.1 Rufus工具 42
2.5.2 制作LiveUSB Ubuntu系统 42
2.6 安装过程中的常见问题 44
2.6.1 选择32位还是64位的Ubuntu 44
2.6.2 应该选择哪种语言 45
2.6.3 Ubuntu中的磁盘分区与Windows中的磁盘分区 45
第3章 桌面环境 46
3.1 常见的桌面环境 46
3.1.1 KDE 46
3.1.2 GNOME 48
3.1.3 Xfce 50
3.1.4 Unity 51
3.2 使用Unity 52
3.2.1 菜单栏 52
3.2.2 启动器 54
3.2.3 Dash 55
3.2.4 工作区 56
3.2.5 管理窗口 58
3.2.6 文件管理器 59
3.2.7 搜索文件和文件夹 61
3.2.8 定制桌面 63
3.3 使用GNOME 65
3.3.1 桌面布局 65
3.3.2 活动按钮 66
3.3.3 工作区 66
3.3.4 浮动面板 67
3.3.5 显示应用程序 68
3.3.6 锁定、关闭或者重启电脑 69
第4章 文件系统基础知识 70
4.1 文件系统的层次结构 70
4.1.1 树形层次结构 70
4.1.2 路径名 72
4.1.3 Linux目录结构 74
4.2 文件类型 75
4.2.1 普通文件 75
4.2.2 目录文件 78
4.2.3 字符设备文件 79
4.2.4 块设备文件 80
4.2.5 管道 81
4.2.6 套接字 84
4.2.7 文件链接 84
4.3 文件权限 87
4.3.1 文件权限概述 88
4.3.2 显示文件权限 89
4.3.3 修改文件权限 91
4.3.4 更改文件所有权 94
4.3.5 文件特殊权限 95
第5章 文件和目录管理 98
5.1 创建文件 98
5.1.1 使用touch命令创建文件 99
5.1.2 使用重定向创建文件 99
5.1.3 使用vi命令创建文件 101
5.2 显示文件列表 103
5.2.1 使用ls命令显示文件列表 103
5.2.2 显示隐藏文件 106
5.2.3 递归显示目录内容 107
5.3 显示文件内容 108
5.3.1 拼接文件内容:cat命令 108
5.3.2 分屏显示:more命令 111
5.3.3 前后翻页分屏显示:less命令 113
5.3.4 查看前几行内容:head命令 113
5.3.5 查看后几行内容:tail命令 114
5.4 文件的常用操作 116
5.4.1 复制文件 116
5.4.2 移动文件 118
5.4.3 删除文件 119
5.4.4 比较文件 120
5.4.5 重命名文件 122
5.5 搜索文件 122
5.5.1 快速搜索文件:locate命令 122
5.5.2 按类型搜索:whereis命令 125
5.5.3 搜索二进制文件:which命令 125
5.5.4 全功能搜索:find命令 126
5.6 文本内容筛选 127
5.6.1 使用grep命令检索文本内容 128
5.6.2 筛选其他命令的输出结果 129
5.6.3 在grep命令中使用正则表达式 130
5.7 文本排序 132
5.7.1 使用sort命令文本排序 133
5.7.2 合并有序文件 134
5.8 文件的压缩和解压 135
5.8.1 压缩文件 135
5.8.2 解压文件 138
5.9 目录管理 139
5.9.1 显示当前工作目录 139
5.9.2 改变目录 139
5.9.3 创建目录 140
5.9.4 移动目录 141
5.9.5 复制目录 141
5.9.6 删除目录 141
第6章 用户和权限管理 142
6.1 用户和用户组基础 142
6.1.1 用户和用户标识号 142
6.1.2 用户组和组标识号 143
6.1.3 /etc/passwd文件 144
6.1.4 /etc/shadow文件 145
6.1.5 /etc/group文件 146
6.2 用户管理 147
6.2.1 添加用户:useradd命令 147
6.2.2 添加用户:adduser命令 148
6.2.3 修改用户:usermod命令 150
6.2.4 删除用户:userdel命令 151
6.2.5 修改用户密码:passwd命令 152
6.2.6 显示用户信息:id命令 153
6.2.7 用户间切换:su命令 154
6.2.8 受限的特权:sudo命令 154
6.3 用户组管理 157
6.3.1 添加用户组:groupadd命令 157
6.3.2 添加用户组:addgroup命令 157
6.3.3 修改用户组:groupmod命令 157
6.3.4 删除用户组:groupdel命令 158
6.4 权限管理 158
6.4.1 权限概述 158
6.4.2 改变文件所有者:chown命令 160
6.4.3 改变文件所属组:chgrp命令 161
6.4.4 设置权限掩码:umask命令 162
6.4.5 修改文件访问权限:chmod命令 163
6.4.6 修改文件ACL:setfacl命令 165
6.4.7 查询文件ACL:getfacl命令 166
第二篇 进阶篇
第7章 系统启动和关闭 169
7.1 Ubuntu启动过程 169
7.1.1 BIOS阶段 169
7.1.2 引导程序阶段 170
7.1.3 内核阶段 173
7.1.4 进入系统 174
7.2 引导相关组件 174
7.2.1 主引导记录 174
7.2.2 GRUB启动程序 175
7.3 登录 181
7.3.1 login进程 181
7.3.2 选择Shell 183
7.3.3 用户初始化文件 185
7.4 关闭系统 187
7.4.1 shutdown命令 187
7.4.2 init命令 188
7.4.3 其他命令 188
第8章 服务和进程管理 189
8.1 初始化程序概述 189
8.1.1 初始化程序 190
8.1.2 systemd 196
8.1.3 systemd基本配置文件 197
8.2 systemd单元 198
8.2.1 单元类型 198
8.2.2 列出单元 200
8.2.3 查看单元状态 203
8.2.4 单元依赖 205
8.2.5 单元配置文件 207
8.3 systemd单元管理 209
8.3.1 启动服务 210
8.3.2 停止服务 210
8.3.3 重启服务 210
8.3.4 重新加载服务配置文件 211
8.3.5 查看服务状态 211
8.3.6 配置服务自动启动 212
8.3.7 禁止服务自动启动 213
8.3.8 重新加载单元配置文件 214
8.3.9 显示服务属性 214
8.3.10 设置服务属性 216
8.4 常用systemd命令 216
8.4.1 systemd-analyze命令分析系统启动时的性能 216
8.4.2 hostnamectl命令 219
8.4.3 localectl命令 220
8.4.4 timedatectl命令 220
8.4.5 loginctl命令 221
8.5 目标 222
8.5.1 理解目标 222
8.5.2 切换目标 225
8.5.3 默认目标 226
8.6 日志管理 226
8.6.1 读取日志 226
8.6.2 过滤输出 227
8.6.3 日志大小限制 229
8.6.4 手动清理日志 230
8.7 进程管理 231
8.7.1 查询进程及其状态 231
8.7.2 监控进程及系统资源 233
8.7.3 终止进程 238
8.7.4 调整进程优先级 239
第9章 软件包管理 241
9.1 软件包管理概述 241
9.1.1 软件包管理基本概念 241
9.1.2 软件包管理工具 243
9.2 apt-get命令 245
9.2.1 搜索软件包 245
9.2.2 apt-get命令基本语法 247
9.2.3 安装软件包 248
9.2.4 重新安装软件包 249
9.2.5 删除软件包 250
9.2.6 更新和升级软件包 251
9.3 apt命令 253
9.3.1 apt命令基本语法 253
9.3.2 搜索软件包 253
9.3.3 安装软件包 254
9.3.4 删除软件包 254
9.3.5 更新和升级软件包 255
9.4 aptitude命令 255
9.4.1 aptitude命令基本语法 255
9.4.2 搜索软件包 257
9.4.3 安装软件包 259
9.4.4 删除软件包 259
9.4.5 更新和升级软件包 260
9.4.6 图形化界面 260
9.5 synaptic软件管理工具 261
9.5.1 安装软件包 261
9.5.2 删除软件包 264
9.5.3 更新和升级软件包 265
第10章 磁盘和文件系统管理 266
10.1 磁盘管理基础 266
10.1.1 磁头 266
10.1.2 磁道 267
10.1.3 柱面 267
10.1.4 扇区 267
10.1.5 磁盘分区 268
10.2 文件系统基础知识 268
10.2.1 常见文件系统 269
10.2.2 块 271
10.2.3 引导块 272
10.2.4 超级块 272
10.2.5 索引节点 272
10.3 创建文件系统 273
10.3.1 创建分区 273
10.3.2 mkfs命令 278
10.3.3 创建ext2/ext3/ext4文件系统 281
10.3.4 创建NTFS文件系统 282
10.3.5 创建FAT文件系统 282
10.3.6 调整文件系统 284
10.4 挂载与卸载文件系统 285
10.4.1 挂载点 285
10.4.2 mount和findmnt命令 286
10.4.3 /etc/fstab文件 289
10.4.4 手工挂载文件系统 290
10.4.5 自动挂载文件系统 291
10.4.6 卸载文件系统 291
10.5 检查与修复文件系统 292
10.5.1 fsck和e2fsck命令 293
10.5.2 交互式检查与修复文件系统 294
10.5.3 自动检查与修复文件系统 294
10.5.4 恢复严重受损的超级块 295
10.6 磁盘阵列 296
10.6.1 磁盘阵列概述 296
10.6.2 磁盘阵列级别 296
10.6.3 创建磁盘阵列 299
10.7 逻辑卷管理 305
10.7.1 逻辑卷管理基本概念 305
10.7.2 安装LVM 306
10.7.3 创建物理卷 306
10.7.4 创建卷组 309
10.7.5 创建逻辑卷 310
10.7.6 扩展逻辑卷 311
10.7.7 压缩逻辑卷 312
第11章 网络管理 314
11.1 网络接口 314
11.1.1 查看网络接口 314
11.1.2 网络接口命名 319
11.1.3 配置网络接口IP地址 319
11.1.4 域名解析 323
11.2 常用网络配置命令 324
11.2.1 ifconfig命令 324
11.2.2 ip命令 326
11.2.3 route命令 333
11.2.4 netstat命令 335
11.2.5 nslookup命令 338
11.2.6 ping命令 339
11.3 防火墙 340
11.3.1 ufw简介 340
11.3.2 ufw配置 340
11.3.3 ufw与应用系统的整合 342
11.3.4 ufw日志管理 344
第三篇 精通Linux
第12章 Shell编程 347
12.1 Shell编程基础 347
12.1.1 Shell 347
12.1.2 Shell脚本 348
12.1.3 Shell脚本的执行方法 349
12.1.4 位置参数 350
12.1.5 内部命令 351
12.2 变量 353
12.2.1 变量分类 353
12.2.2 变量声明 354
12.2.3 变量赋值 355
12.2.4 变量的引用和替换 355
12.2.5 变量的间接引用 356
12.2.6 特殊变量替换 357
12.2.7 单引号和双引号 358
12.2.8 命令替换 359
12.3 算术运算 359
12.3.1 let命令 360
12.3.2 expr命令 360
12.3.3 $(())表达式 361
12.3.4 $[]表达式 361
12.4 数组 361
12.4.1 定义数组 362
12.4.2 获取数组长度 363
12.4.3 遍历数组 363
12.4.4 删除元素 365
12.4.5 数组切片 365
12.4.6 数组替换 366
12.5 条件测试 366
12.5.1 条件测试语法 367
12.5.2 文件测试 367
12.5.3 字符串测试 370
12.5.4 整数值测试 371
12.5.5 逻辑运算符 372
12.6 条件语句 372
12.6.1 if语句 373
12.6.2 case语句 375
12.7 循环语句 377
12.7.1 for语句 377
12.7.2 while语句 379
12.7.3 until语句 381
12.7.4 select语句 382
12.7.5 嵌套循环 384
12.7.6 continue和break语句 384
12.8 信号的捕获与处理 387
12.8.1 信号 387
12.8.2 捕获信号 388
第13章 网络服务管理 391
13.1 SSH服务 391
13.1.1 SSH协议 391
13.1.2 配置SSH服务 392
13.1.3 管理SSH服务 395
13.1.4 使用账号密码登录SSH服务 396
13.1.5 使用密钥对登录SSH服务 397
13.2 FTP文件传输服务 402
13.2.1 FTP文件传输协议 402
13.2.2 安装vsftpd 402
13.2.3 vsftpd配置文件 403
13.2.4 管理FTP用户:匿名用户、本地用户、虚拟用户 406
13.2.5 演示:使用FTP传输文件 411
13.3 DNS域名服务 416
13.3.1 域名、IP地址、域名服务器 417
13.3.2 BIND以及组件 418
13.3.3 BIND配置文件 418
13.3.4 配置区域 424
13.3.5 资源记录 425
13.3.6 演示:DNS服务器配置实例 427
13.4 NFS服务 430
13.4.1 安装NFS服务 431
13.4.2 共享文件系统 431
13.4.3 挂载NFS文件系统 433
13.4.4 NFS文件系统权限 434
13.5 其他网络服务管理 437
13.5.1 Samba资源共享 437
13.5.2 Apache万维网服务 441
13.5.3 MySQL数据库服务 444
第14章 虚拟化和云计算 447
14.1 虚拟化基础知识 447
14.1.1 虚拟化技术 447
14.1.2 常用虚拟化方案 447
14.2 KVM 448
14.2.1 KVM及其相关组件 448
14.2.2 安装KVM 448
14.2.3 创建虚拟机 449
14.2.4 管理虚拟机 451
14.3 Docker 452
14.3.1 Docker以及基础知识 452
14.3.2 安装Docker 453
14.3.3 使用镜像 454
14.3.4 管理容器 456
14.3.5 使用网络:外部访问容器 459
14.3.6 使用网络:容器互联 461
14.4 LXC和LXD 461
14.4.1 LXC和LXD简介 462
14.4.2 安装LXD 462
14.4.3 创建容器 463
14.4.4 列出容器 464
14.4.5 查看容器 466
14.4.6 管理容器 466
14.4.7 与容器交互 467
14.4.8 管理镜像 469
14.5 OpenStack 471
14.5.1 OpenStack的核心组件 471
14.5.2 通过DevStack部署OpenStack 473
14.5.3 仪表盘 474
14.5.4 实例管理 478
14.5.5 镜像管理 486
14.5.6 卷管理 488
14.5.7 网络管理:网络拓扑 489
14.5.8 网络管理:网络的修改和删除 490
14.5.9 网络管理:路由 494
14.5.10 网络管理:安全组 496
第15章 系统和网络安全 499
15.1 用户管理安全 499
15.1.1 管理好root用户 499
15.1.2 用户资料安全 500
15.1.3 密码策略 501
15.2 防火墙 503
15.2.1 ufw 503
15.2.2 IP伪装 504
15.2.3 日志 504
15.3 AppArmor 505
15.3.1 安装AppArmor 505
15.3.2 使用AppArmor 505
15.3.3 AppArmor配置文件 507
15.4 数字证书 509
15.4.1 获取数字证书 509
15.4.2 生成密钥 509
15.4.3 生成证书签署请求 510
15.4.4 安装证书 511
15.5 弱点扫描 511
15.5.1 安装OpenVAS 512
15.5.2 OpenVAS仪表盘 514
15.5.3 扫描任务管理 514
15.5.4 扫描报表 516
15.6 入侵检测 518
15.6.1 安装Snort 518
15.6.2 Snort配置文件 519
15.6.3 Snort检测规则 519
15.6.4 测试Snort 521
前 言
自从1991年10月Linux诞生以来,一直受到广大IT界的关注。大批人士加入学习、研究、使用、开发以及交流Linux操作系统。尤其是20世纪90年代末,随着国际互联网的飞速发展,Linux系统更是得到了充足的发展,在互联网中扮演了一个极其重要的角色,成为目前运用领域广泛、使用人数多的操作系统。
正因为众多研究者和开发者的积极参与,使得Linux系统出现了流派纷呈的局面。不同的派别百花齐放、各具特色。目前已经有超过三百个发行版被积极地开发,普遍使用的发行版本大约有十几个。其中,比较有名的有Debian、Ubuntu、Fedora、CentOS、Slackware、RedHat和openSUSE等。在诸多的发行版当中,Ubuntu尤其引人注目,成为Linux发行版中的佼佼者。
尽管每个发行版各有不同,但是它们使用的却是同一个内核。因此,它的核心功能是相同的。从这个方面讲,学习任何一个发行版都是可行的。
为了方便广大读者学习,作者结合自己十多年的Linux维护、开发和培训经验编写了本书。本书全面地介绍了Linux的基础知识、Ubuntu 17的安装方法、桌面环境、文件系统、目录和文件管理、用户管理、服务管理、文件系统管理、网络管理、shell编程等技术。在介绍每部分内容时,都给出了大量具体的实例,使得读者能够深入了解,快速掌握Linux系统。学完本书之后,力求让读者能够胜任Linux的日常开发和维护。
本书的特点
1.内容丰富,知识全面
《Ubuntu Linux系统管理实战》共分3篇15章,采用从易到难、循序渐进的方式进行讲解。内容几乎涉及了Linux系统管理和开发的各个方面。
2.循序渐进,由浅入深
为了方便读者学习,本书首先让读者了解Linux的基础知识,并掌握Ubuntu 17的安装方法和桌面环境。读者在掌握这些入门知识的基础上,逐渐学习Ubuntu更深的知识,包括文件系统、文件和目录管理、用户管理以及网络管理等。后介绍更加高级的Shell编程、网络服务管理以及虚拟化和云计算。从而使读者可以边学习,边动手,更快地掌握Ubuntu的各种知识。
3.格式统一,讲解规范
书中的每个命令都给出了详细的语法,并结合具体的实例。这样使得读者可以很清晰地了解每个命令的功能和使用方法,从而提高学习效率。
4.重点突出,言简意赅
由于Linux的相关技术非常多,很多读者无所适从,无从下手。本书在介绍Ubuntu时,突出了日常维护所需要重点关注的知识点和技巧,避免了冗长的无关知识的介绍。使得读者能够抓住重点,节省时间。
5.案例精讲,深入剖析
根据作者本人多年的管理和开发经验,Ubuntu的管理万变不离其宗,一通百通。所以本书没有像其他书籍过多地举例,而是在每个知识点中选取了典型的几个例子,然后通过对其以及相关知识点进行详细讲解,使读者可以真正掌握Linux的精髓。
《Ubuntu Linux系统管理实战》的内容安排
《Ubuntu Linux系统管理实战》共分为3篇,共15章,主要章节规划如下所示。
篇(第1章~第6章)Ubuntu入门
讲述了Linux基础知识、Ubuntu 17的安装和配置、桌面环境、文件系统基础知识、文件和目录管理以及用户和权限管理等。
第二篇(第7章~第11章)进阶篇
讲述了Ubuntu系统的启动和关闭、服务和进程管理、软件包管理、磁盘和文件系统管理以及网络管理等。
第三篇(第12章~第15章)精通Linux
讲述了Shell编程、网络服务管理以及虚拟化和云计算系统网络安全等。
《Ubuntu Linux系统管理实战》由浅入深,由理论到实践,尤其适合初级读者逐步学习和完善自己的知识结构。
适合阅读本书的读者
● 希望进入Linux系统领域的新手
● Ubuntu学习人员
● Ubuntu入门者
● 从事Ubuntu管理和开发的人员
● 想在Ubuntu上开发网络应用的人员
● 网络管理员
● 大中专院校的学生
《Ubuntu Linux系统管理实战》由张春晓主编,其他参与本书创作的还有刘鑫、陈素清、张泽娜、常新峰,林龙、王亚飞、薛燚、王刚、吴贵文、李雷霆、王晓华,排名不分先后。
编者
2018年1月
评论
还没有评论。