第1篇 基础篇 2
第1章 Linux系统简介 2
1.1 Linux系统的起源 2
1.2 Linux版本 3
1.2.1 Linux内核版本 3
1.2.2 Linux发行套件版本 3
1.3 Red Hat Enterprise Linux 5.2简介 5
第2章 Linux系统安装 7
2.1 安装前的准备 7
2.1.1 硬件配置与兼容要求 7
2.1.2 选择安装方式 7
2.2 通过光盘安装Linux 8
2.2.1 启动安装程序 8
2.2.2 进行语言和键盘设置 11
2.2.3 磁盘分区 13
2.2.4 引导装载程序 18
2.2.5 网络设置 19
2.2.6 时区配置 20
2.2.7 设置root用户口令 21
2.2.8 选择安装的软件包 22
2.2.9 准备安装 23
2.2.10 安装软件包 23
2.3 系统第一次启动 24
2.3.1 欢迎界面和许可协议 24
2.3.2 防火墙 24
2.3.3 配置SElinux访问控制 25
2.3.4 配置Kdump内核崩溃转存 25
2.3.5 设置日期和时间 26
2.3.6 设置软件更新 27
2.3.7 创建用户 27
2.3.8 设置声卡 28
2.3.9 附加光盘 29
2.3.10 登录系统 29
2.4 其他安装方式 30
2.4.1 制作安装引导光盘 30
2.4.2 硬盘安装方式 30
2.4.3 NFS安装方式 31
2.4.4 FTP安装方式 32
2.4.5 HTTP安装方式 33
2.5 升级和删除Linux 33
2.5.1 升级安装 34
2.5.2 删除Linux系统 35
2.6 使用虚拟机安装Linux 36
2.7 系统安装时的常见问题处理 41
2.7.1 无法使用图形安装方式 41
2.7.2 加载第三方的驱动程序 41
2.7.3 无法找到光驱 42
2.7.4 无法使用硬盘的所有剩余空间 42
2.7.5 分区后无法进入下一个安装界面 42
2.7.6 保存安装过程中的错误跟踪信息 43
第3章 图形桌面系统管理 44
3.1 桌面系统简介 44
3.1.1 X-Window系统简介 44
3.1.2 KDE和GNOME的简介 45
3.2 GNOME的使用 46
3.2.1 GNOME桌面 46
3.2.2 文件管理 48
3.2.3 GNOME面板 51
3.2.4 菜单 53
3.2.5 输入法 54
3.2.6 屏幕分辨率 54
3.2.7 屏幕保护程序 54
3.2.8 添加删除软件 55
3.2.9 搜索文件 56
3.2.10 设置系统字体与主题 57
3.2.11 日期时间 57
3.2.12 使用软盘、光盘和移动硬盘 57
3.2.13 更改GNOME语言环境 58
3.2.14 注销和关机 59
3.3 常用应用软件 60
3.3.1 Firefox浏览器 60
3.3.2 gThumb图像浏览器 60
3.3.3 gedit文本编辑器 61
3.3.4 Evince pdf文档查看器 62
3.3.5 远程访问 62
3.4 常见问题处理 66
3.4.1 无法挂载光盘和USB存储设备 66
3.4.2 无法注销系统 68
3.4.3 开机无法进入图形环境 68
第4章 命令行界面 70
4.1 命令行简介 70
4.1.1 为什么要使用命令行 70
4.1.2 Shell简介 71
4.2 命令行的使用 71
4.2.1 进入命令行 71
4.2.2 处理多个终端 72
4.2.3 终端配置文件 72
4.2.4 终端基本操作 73
4.3 常用的基本命令 77
4.3.1 man命令:查看帮助信息 77
4.3.2 date命令:显示时间 77
4.3.3 hostname命令:主机名 78
4.3.4 clear命令:清屏 78
4.3.5 exit命令:退出 79
4.3.6 history命令:历史命令 79
4.3.7 pwd命令:当前目录 79
4.3.8 cd命令:切换目录 79
4.3.9 ls命令:列出目录和文件 80
4.3.10 cat命令:显示文件内容 81
4.3.11 touch命令:创建文件 81
4.3.12 df命令:查看文件系统 81
4.3.13 alias和unalias命令:命令别名 82
4.3.14 echo命令:显示信息 83
4.3.15 export命令:输出变量 83
4.3.16 env命令:显示环境变量 83
4.3.17 ps命令:查看进程 84
4.3.18 whoami和who命令:查看用户 84
4.3.19 su命令:切换用户 84
4.3.20 grep命令:过滤信息 85
4.3.21 wc命令:统计 86
4.3.22 more命令:分页显示 86
4.3.23 管道 86
4.4 Ⅵ编辑器 87
4.4.1 3种运行模式 87
4.4.2 Ⅵ的使用 88
4.4.3 Ⅵ的常用命令 88
4.5 命令行环境常见问题处理 91
4.5.1 开机默认进入命令行环境 91
4.5.2 远程访问命令行环境 92
第2篇 系统管理篇 96
第5章 Linux系统启动过程 96
5.1 Linux系统启动过程简介 96
5.2 BIOS加电自检 97
5.3 引导加载程序 97
5.3.1 引导加载程序的启动 98
5.3.2 GRUB配置 98
5.4 内核映像 100
5.5 init进程 101
5.5.1 init进程简介 101
5.5.2 init进程的引导过程 102
5.5.3 配置自动运行服务 105
5.6 重启和关闭系统 108
5.6.1 shutdown命令:关闭或重启系统 108
5.6.2 halt命令:关闭系统 109
5.6.3 reboot命令:重启系统 110
5.6.4 init命令:改变运行级别 110
5.6.5 通过图形界面关闭系统 111
5.7 系统启动时常见的问题处理 111
5.7.1 进入Linux救援模式 111
5.7.2 GRUB被Windows覆盖 113
5.7.3 重新分区后GRUB引导失败 114
第6章 用户和用户组管理 116
6.1 用户管理概述 116
6.1.1 用户账号 116
6.1.2 用户账号文件:passwd和shadow 118
6.1.3 用户组 119
6.1.4 用户组文件:group和gshadow 121
6.2 普通用户管理 122
6.2.1 添加用户 123
6.2.2 更改用户口令 124
6.2.3 修改用户信息 126
6.2.4 删除用户 126
6.2.5 禁用用户 127
6.2.6 配置用户Shell环境 127
6.3 用户组管理 130
6.3.1 添加用户组 130
6.3.2 修改用户组 130
6.3.3 删除用户组 131
6.4 用户和用户组的图形化管理 132
6.4.1 查看用户 132
6.4.2 添加用户 133
6.4.3 修改用户 133
6.4.4 删除用户 133
6.4.5 查看用户组 134
6.4.6 添加用户组 134
6.4.7 修改用户组 135
6.4.8 删除用户组 135
6.5 用户管理的常见问题和常用命令 135
6.5.1 忘记root用户口令 135
6.5.2 误删用户账号 136
6.5.3 常用用户管理命令 138
6.6 常用管理脚本 139
6.6.1 批量添加用户 139
6.6.2 完整删除用户账号 140
第7章 磁盘分区管理 143
7.1 磁盘分区简介 143
7.1.1 Linux分区简介 143
7.1.2 磁盘设备管理 144
7.2 使用fdisk进行分区管理 145
7.2.1 fdisk简介 145
7.2.2 fdisk交互模式 146
7.2.3 分区管理 147
7.3 使用parted进行分区管理 150
7.3.1 parted简介 151
7.3.2 parted交互模式 151
7.3.3 分区管理 152
7.4 LVM——逻辑卷管理 155
7.4.1 LVM简介 155
7.4.2 物理卷管理 156
7.4.3 卷组管理 157
7.4.4 逻辑卷管理 159
7.5 磁盘分区管理的常见问题 160
7.5.1 添加新磁盘 160
7.5.2 删除分区后系统无法启动 163
7.5.3 误删Swap分区 163
第8章 文件系统管理 165
8.1 文件系统简介 165
8.1.1 Linux文件系统简介 165
8.1.2 Linux支持的文件系统类型 166
8.1.3 Linux的默认安装目录 167
8.2 文件系统的管理 168
8.2.1 创建文件系统 168
8.2.2 查看已挂载文件系统 170
8.2.3 使用fstab文件自动挂载文件系统 171
8.3 文件和目录管理 172
8.3.1 查看文件和目录属性 172
8.3.2 文件类型 173
8.3.3 链接文件 175
8.3.4 查看文件内容 176
8.3.5 删除文件和目录 177
8.3.6 更改当前目录 177
8.3.7 文件名通配符 178
8.3.8 查看目录空间大小 179
8.3.9 复制文件和目录 180
8.3.10 移动文件和目录 180
8.4 文件和目录权限管理 181
8.4.1 Linux文件和目录权限简介 181
8.4.2 更改文件和目录的所有者 182
8.4.3 更改文件和目录的权限 183
8.4.4 设置文件和目录的默认权限 184
8.5 文件系统管理的常见问题和常用命令 185
8.5.1 无法卸载文件系统 185
8.5.2 修复受损文件系统 185
8.5.3 修复文件系统超级块 187
8.5.4 使用Windows分区 188
8.6 常用管理脚本 188
8.6.1 自动挂载所有Windows分区的脚本 189
8.6.2 转换目录和文件名大小写的脚本 190
第9章 软件包管理 192
9.1 使用RPM软件包 192
9.1.1 RPM简介 192
9.1.2 RPM命令的使用方法 193
9.1.3 安装RPM软件包 194
9.1.4 查看RPM软件包 195
9.1.5 升级软件包 197
9.1.6 删除软件包 197
9.2 打包程序tar 198
9.2.1 tar简介 198
9.2.2 打包文件 199
9.2.3 查看归档文件的内容 199
9.2.4 还原归档文件 200
9.2.5 往归档文件中追加新文件 200
9.2.6 压缩归档文件 201
9.3 压缩和解压 201
9.3.1 使用gzip和gunzip进行压缩 202
9.3.2 使用zip和unzip进行压缩 203
9.3.3 使用bzip2和bunzip2进行压缩 205
9.3.4 使用compress和uncompress进行压缩 206
9.4 其他软件安装方式 206
9.4.1 源代码安装 207
9.4.2 源代码安装实例 208
9.4.3 .bin文件安装 209
9.5 常见问题处理 211
9.5.1 如何安装.src.rpm软件包 211
9.5.2 查看程序是由哪个RPM包安装 211
第10章 进程管理 213
10.1 进程简介 213
10.2 Linux进程管理 214
10.2.1 查看进程 214
10.2.2 启动进程 216
10.2.3 终止进程 218
10.2.4 更改进程优先级 219
10.2.5 进程挂起与恢复 220
10.3 定时任务 220
10.3.1 crontab设置定时任务 221
10.3.2 at命令:设置定时任务 222
10.4 进程管理的常见问题处理 223
10.4.1 如何杀掉所有进程 223
10.4.2 定时任务不生效 223
第11章 网络管理 225
11.1 TCP/IP网络 225
11.1.1 TCP/IP网络历史 225
11.1.2 OSI网络模型 226
11.1.3 TCP/IP网络模型 227
11.2 以太网配置 228
11.2.1 添加以太网连接 229
11.2.2 更改以太网设备 230
11.2.3 更改DNS和主机记录 231
11.3 网络配置文件 232
11.3.1 网络设备配置文件 232
11.3.2 使用resolve.conf文件配置DNS服务器 232
11.3.3 使用network文件配置主机名 233
11.3.4 使用hosts文件配置主机名和IP地址的映射关系 233
11.4 接入互联网 233
11.4.1 xDSL拨号上网 233
11.4.2 调整解调器拨号上网 234
11.4.3 ISDN拨号上网 236
11.4.4 无线连接 237
11.5 常用网络命令 239
11.5.1 使用ifconfig命令管理网络接口 240
11.5.2 使用hostname命令查看主机名 242
11.5.3 使用route命令管理路由 242
11.5.4 使用ping命令检测主机是否激活 244
11.5.5 使用netstat命令查看网络信息 245
11.5.6 使用nslookup命令进行解析 247
11.5.7 使用traceroute命令跟踪路由 248
11.5.8 使用telnet命令管理远程主机 249
11.6 常见问题处理 249
11.6.1 在网卡上绑定多个IP地址 249
11.6.2 Linux网络故障处理步骤 252
11.7 常用管理脚本 253
11.7.1 统计客户端的网络连接数 254
11.7.2 自动发送邮件的脚本 255
第12章 系统监控 256
12.1 系统性能监控 256
12.1.1 性能分析准则 256
12.1.2 内存监控 258
12.1.3 CPU监控 259
12.1.4 磁盘监控 261
12.1.5 网络监控 263
12.1.6 综合监控工具——top 264
12.2 syslog日志 267
12.2.1 syslog简介 267
12.2.2 syslog配置 268
12.2.3 配置实例 270
12.2.4 清空日志文件内容 270
12.2.5 图形化日志工具——系统日志查看器 270
12.3 其他日志 271
12.3.1 dmesg日志:记录内核日志信息 271
12.3.2 用户登录日志 272
12.3.3 用户操作记录 273
12.3.4 应用日志 274
12.4 系统监控常见问题处理 274
12.4.1 内存泄漏 274
12.4.2 定期清理日志文件 275
第13章 Shell编程 276
13.1 Shell编程简介 276
13.1.1 什么是Shell脚本 276
13.1.2 编写Shell脚本 277
13.2 条件测试 277
13.2.1 数值测试 277
13.2.2 字符串测试 278
13.2.3 文件状态测试 279
13.2.4 条件测试的逻辑操作符 279
13.3 控制结构 280
13.3.1 if-then-else分支结构 280
13.3.2 case分支结构 281
13.3.3 for循环结构 282
13.3.4 expr命令计数器 284
13.3.5 while循环结构 284
13.3.6 until循环结构 285
13.4 脚本参数与交互 286
13.4.1 向脚本传递参数 286
13.4.2 用户交互 287
13.4.3 特殊变量 289
13.5 Shell编程中的常见问题 289
13.5.1 如何屏蔽命令的输出结果 290
13.5.2 如何把一条命令分成多行编写 290
第14章 Linux系统安全 291
14.1 用户账号和密码安全 291
14.1.1 删除或禁用不必要的用户 291
14.1.2 使用强壮的用户密码 292
14.1.3 设置合适的密码策略 292
14.1.4 破解shadow口令文件 293
14.1.5 禁用静止用户 294
14.1.6 保证只有一个root用户 295
14.1.7 文件路径中的“.” 296
14.1.8 主机信任关系:host.equiv和.rhosts文件 297
14.2 网络安全 297
14.2.1 ping探测 297
14.2.2 服务端口 298
14.2.3 拒绝攻击 302
14.2.4 使用安全的网络服务 303
14.2.5 增强Xinetd的安全 304
14.3 文件系统安全 305
14.3.1 全球可读文件 305
14.3.2 全球可写文件 306
14.3.3 特殊的文件权限:setuid和setgid 306
14.3.4 没有所有者的文件 308
14.3.5 设备文件 308
14.3.6 磁盘分区 308
14.3.7 设置grub密码 309
14.3.8 限制su切换 310
14.3.9 使用合适的mount选项 310
14.4 备份与恢复 311
14.4.1 使用tar进行备份 311
14.4.2 专用的备份恢复工具:dump和restore 312
14.4.3 底层设备操作命令:dd 315
14.4.4 备份的物理安全 316
14.5 日志记录 316
14.5.1 查看当前登录用户 316
14.5.2 查看用户历史登录日志 317
14.5.3 secure日志中的安全信息 318
14.5.4 messages日志中的安全信息 318
14.5.5 cron日志中的安全信息 319
14.5.6 history日志中的安全信息 319
14.5.7 日志文件的保存 320
14.6 漏洞扫描——Nessus 321
14.6.1 如何获得Nessus安装包 321
14.6.2 安装Nessus服务器 321
14.6.3 启动和关闭Nessus 322
14.6.4 安装Nessus客户端 323
14.6.5 扫描安全漏洞 324
14.6.6 自定义扫描策略 327
14.6.7 Nessus命令行客户端 330
14.7 开源软件OpenSSH 332
14.7.1 SSH和OpenSSH简介 332
14.7.2 安装OpenSSH 332
14.7.3 启动和关闭OpenSSH 334
14.7.4 OpenSSH配置文件 336
14.7.5 OpenSSH服务器配置 336
14.7.6 OpenSSH客户端配置 339
14.7.7 使用SSH远程登录 340
14.7.8 使用sftp进行文件传输 344
14.7.9 使用scp进行远程文件复制 345
14.7.10 在Windows客户端使用SSH 347
14.8 Linux系统安全常见问题 349
14.8.1 Linux是否有病毒 349
14.8.2 系统文件损坏后的解决办法 350
第3篇 网络服务管理篇 352
第15章 FTP服务器配置和管理 352
15.1 FTP简介 352
15.1.1 FTP服务 352
15.1.2 常用的FTP服务器软件 353
15.2 vsftpd服务器的安装 353
15.2.1 如何获得vsftpd安装包 354
15.2.2 安装vsftpd 354
15.2.3 启动和关闭vsftpd 355
15.2.4 检测vsftpd服务 357
15.2.5 vsftpd自动运行 358
15.3 vsftpd服务器配置 360
15.3.1 vsftpd.conf配置文件 360
15.3.2 匿名FTP的基本配置 363
15.3.3 匿名FTP的其他设置 365
15.3.4 配置本地用户登录 367
15.3.5 配置虚拟用户登录 367
15.3.6 控制用户登录 369
15.3.7 设置欢迎信息 369
15.3.8 FTP日志 371
15.3.9 其他设置 373
15.4 FTP客户端 376
15.4.1 FTP命令:通用的FTP客户端程序 376
15.4.2 FTP客户端图形化工具 381
15.5 Ftp服务器配置常见问题 381
15.5.1 取消匿名FTP的口令输入 381
15.5.2 本地用户无法登录FTP服务器 382
第16章 Web服务器配置与管理 383
16.1 Web服务器简介 383
16.1.1 Web服务的历史和工作原理 383
16.1.2 Apache简介 384
16.1.3 Apache的模块 384
16.2 Apache服务器的安装 386
16.2.1 如何获取Apache软件 386
16.2.2 安装Apache服务器 387
16.2.3 启动和关闭Apache 389
16.2.4 检测Apache服务 389
16.2.5 让Apache自动运行 390
16.3 Apache服务器的基本配置和维护 392
16.3.1 查看Apache的相关信息 392
16.3.2 httpd.conf配置文件介绍 393
16.3.3 配置文件的修改 396
16.3.4 符号链接和虚拟目录 397
16.3.5 页面重定向 399
16.3.6 Apache日志文件 401
16.4 日志分析 403
16.4.1 安装Webalizer日志分析程序 403
16.4.2 配置Webalizer 403
16.4.3 使用Webalizer分析日志 404
16.5 Apache安全配置 406
16.5.1 访问控制 406
16.5.2 用户认证 408
16.5.3 分布式配置文件:.htaccess 410
16.6 虚拟主机 411
16.6.1 虚拟主机服务简介 411
16.6.2 基于IP的虚拟主机服务 411
16.6.3 基于主机名的虚拟主机服务 413
16.7 Apache服务器配置的常见问题 415
16.7.1 防止网站图片盗链 415
16.7.2 忽略某些访问日志的记录 416
16.7.3 Apache无法启动 416
第17章 动态Web服务器配置与管理 417
17.1 动态网页技术简介 417
17.1.1 动态网页技术的工作原理和简介 417
17.1.2 实现动态网页的常见技术 418
17.1.3 Tomcat简介 418
17.2 Tomcat服务器的安装 419
17.2.1 如何获取JDK 419
17.2.2 安装JDK 419
17.2.3 如何获取Tomcat 420
17.2.4 安装Tomcat 421
17.2.5 启动和关闭Tomcat 421
17.2.6 检测Tomcat服务 422
17.2.7 让Tomcat自动运行 423
17.3 整合Apache和Tomcat 424
17.3.1 为什么要进行整合 424
17.3.2 安装mod_jk模块 425
17.3.3 Apache和Tomcat的后续配置 426
17.4 Apache和其他动态Web的整合 429
17.4.1 整合CGI 429
17.4.2 整合基于Perl的CGI 431
17.4.3 整合PHP 434
17.5 动态Web服务器配置的常见问题 435
17.5.1 无法载入PHP模块 436
17.5.2 如何压缩PHP模块的容量 436
第18章 DNS服务器配置和管理 437
18.1 DNS简介 437
18.1.1 DNS域名结构 437
18.1.2 DNS工作原理 438
18.2 DNS服务器的安装 440
18.2.1 如何获得Bind安装包 440
18.2.2 安装Bind 440
18.2.3 启动和关闭Bind 441
18.2.4 开机自动运行 442
18.3 Bind服务器配置 444
18.3.1 named.conf配置文件 445
18.3.2 根区域文件named.root 450
18.3.3 正向解析区域文件 452
18.3.4 反向解析区域文件 454
18.4 配置实例 454
18.4.1 网络拓扑 454
18.4.2 配置named.conf 455
18.4.3 配置区域文件 457
18.4.4 测试结果 459
18.5 DNS常见问题及常用命令 460
18.5.1 因TTL值缺失导致的错误 460
18.5.2 dig命令:显示DNS解析结果以及配置信息 461
18.5.3 ping命令:解析域名 461
18.5.4 host命令:正向反向解析 462
18.5.5 named-checkconf命令:检查named.conf文件内容 462
18.5.6 named-checkzone命令:检查区域文件内容 462
第19章 邮件服务器配置和管理 463
19.1 电子邮件简介 463
19.1.1 电子邮件传输过程 463
19.1.2 邮件相关协议 465
19.1.3 Linux下常用的邮件服务器程序 465
19.2 安装邮件服务器 466
19.2.1 安装SASL 466
19.2.2 安装Postfix 468
19.2.3 启动和关闭邮件服务 471
19.2.4 配置saslauthd服务的自动运行 472
19.2.5 配置Postfix服务的自动运行 475
19.3 Postfix配置 477
19.4 POP和IMAP的实现 479
19.4.1 安装Dovecot 479
19.4.2 配置Dovecot 480
19.4.3 启动和关闭Dovecot 481
19.4.4 配置Dovecot服务的自动运行 482
19.5 电子邮件客户端配置 484
第20章 DHCP服务器配置和管理 487
20.1 DHCP简介 487
20.2 DHCP服务器的安装 489
20.2.1 如何获得DHCP安装包 489
20.2.2 安装DHCP 489
20.2.3 启动和关闭DHCP 490
20.2.4 DHCP服务开机自动运行 492
20.3 DHCP服务器配置 495
20.3.1 dhcpd.conf配置文件 495
20.3.2 dhcpd.conf文件的参数 496
20.3.3 dhcpd.conf文件的选项 497
20.3.4 使用dhcpd.leases文件查看已分配的IP地址 498
20.4 配置实例 499
20.4.1 网络拓扑 499
20.4.2 配置步骤 500
20.5 DHCP客户端配置 501
20.5.1 Linux客户端配置 501
20.5.2 Windows客户端配置 502
第21章 代理服务器配置和管理 504
21.1 代理服务器简介 504
21.2 代理服务器的安装 505
21.2.1 如何获得Squid安装包 506
21.2.2 安装Squid 506
21.2.3 启动和关闭Squid 508
21.2.4 Squid服务开机自动运行 510
21.3 Squid的配置 513
21.3.1 squid.conf配置文件 513
21.3.2 与配置文件相关的命令 517
21.3.3 设置Squid使用中文错误提示信息 518
21.3.4 配置透明代理 519
21.4 Squid安全 521
21.4.1 访问控制列表 521
21.4.2 使用http_access选项控制HTTP请求 522
21.4.3 身份认证 524
21.5 Squid日志管理 527
21.6 使用Web方式管理Squid 529
21.7 客户端配置 531
21.7.1 Linux客户端的配置 531
21.7.2 Windows客户端配置 532
21.8 Squid的常见问题处理 534
21.8.1 创建cache目录时出现权限不足的错误 534
21.8.2 启动Squid时提示地址已被占用的错误 534
21.8.3 启动Squid时提示DNS名称解析测试失败的错误 535
第22章 VPN服务器配置和管理 536
22.1 VPN简介 536
22.2 安装VPN服务器 537
22.2.1 如何获得安装包 537
22.2.2 安装dkms 537
22.2.3 安装ppp 538
22.2.4 安装pptpd 539
22.2.5 启动和关闭pptpd 540
22.2.6 pptpd开机自动运行 540
22.3 pptpd的配置 543
22.4 pptpd日志管理 545
22.5 配置VPN客户端 546
22.5.1 配置Linux VPN客户端 546
22.5.2 配置Windows客户端 547
第23章 NFS服务器配置和管理 550
23.1 NFS简介 550
23.2 NFS服务器安装 551
23.2.1 安装NFS 551
23.2.2 启动NFS 552
23.2.3 NFS服务检测 553
23.2.4 NFS服务开机自动启动 554
23.3 NFS服务器端配置 555
23.3.1 exports配置文件 555
23.3.2 NFS权限控制 557
23.3.3 exports命令:输出共享目录 559
23.4 NFS客户端配置 561
23.4.1 客户端安装 561
23.4.2 查看共享目录列表 562
23.4.3 创建挂载点并挂载共享目录 563
23.4.4 卸载NFS文件系统 565
23.4.5 开机自动挂载NFS共享目录 565
23.5 NFS配置实例 566
23.5.1 用户需求 566
23.5.2 exports文件配置 566
23.5.3 在服务器端创建目录 567
23.5.4 输出共享目录 568
23.5.5 人力部门客户端的配置 568
23.6 使用autofs按需挂载共享目录 569
23.6.1 安装autofs 569
23.6.2 启动autofs服务 569
23.6.3 配置autofs服务开机自动启动 569
23.6.4 修改autofs配置文件 570
23.6.5 配置实例 571
23.7 NFS图形化配置 571
23.7.1 配置工具的安装 572
23.7.2 NFS服务器配置方案工具的使用 572
23.8 NFS常见问题处理 573
23.8.1 无法卸载NFS共享目录并提示device is busy 574
23.8.2 挂载共享目录失败 574
23.8.3 NFS请求挂起 575
第24章 Samba服务器配置和管理 576
24.1 Samba简介 576
24.2 Samba服务器的安装 577
24.2.1 如何获得Samba安装包 577
24.2.2 安装Samba 578
24.2.3 启动和关闭Samba 579
24.2.4 开机自动运行Samba 580
24.3 Samba服务器的基本配置 584
24.3.1 smb.conf配置文件 584
24.3.2 全局设置选项 584
24.3.3 共享选项 587
24.3.4 配置文件的生效与验证 588
24.3.5 Samba用户管理 589
24.3.6 用户映射 591
24.4 Samba安全设置 591
24.4.1 安全级别 591
24.4.2 用户访问控制 593
24.5 日志设置 595
24.6 配置实例 596
24.6.1 应用案例 596
24.6.2 配置步骤 597
24.7 Linux客户端配置 599
24.7.1 类似于FTP的客户端程序smbclient 599
24.7.2 mount挂载共享目录 600
24.7.3 挂载Windows共享目录 601
24.7.4 使用图形界面访问共享资源 603
24.8 Windows客户端配置 603
24.9 Samba常见问题处理 605
24.9.1 共享目录无法写入 605
24.9.2 Windows不能在网上邻居中浏览到Samba服务器 605
第25章 NAT服务器配置和管理 606
25.1 NAT简介 606
25.1.1 NAT概述 606
25.1.2 NAT工作原理 606
25.2 NAT地址转换方式 608
25.2.1 NAT地址相关概念 608
25.2.2 静态地址转换NAT 608
25.2.3 动态地址转换NAT 609
25.2.4 网络地址端口转换NAT 610
25.3 NAT配置 611
25.4 配置实例 612
25.4.1 应用案例 613
25.4.2 NAT服务器配置步骤 613
25.4.3 编写NAT管理脚本 616
25.5 NAT客户端配置 617
25.5.1 Linux客户端配置 618
25.5.2 Windows客户端配置 618
第26章 MySQL数据库服务器配置和管理 620
26.1 数据库简介 620
26.1.1 数据库技术简介 620
26.1.2 MySQL简介 621
26.1.3 其他常见的数据库产品 622
26.2 MySQL数据库服务器的安装 622
26.2.1 如何获得MySQL安装包 622
26.2.2 安装MySQL 623
26.2.3 启动和关闭MySQL 626
26.2.4 开机自动运行MySQL服务 628
26.3 MySQL的基本配置 632
26.3.1 MySQL客户端程序 632
26.3.2 MySQL配置文件 633
26.3.3 更改管理员口令 635
26.3.4 MySQL服务器管理程序mysqladmin 635
26.4 数据库管理 637
26.4.1 查看数据库 637
26.4.2 选择数据库 637
26.4.3 创建数据库 638
26.4.4 删除数据库 638
26.5 数据表结构管理 639
26.5.1 数据表结构 639
26.5.2 字段类型 640
26.5.3 创建数据表 641
26.5.4 更改表结构 644
26.5.5 复制数据表 646
26.5.6 删除数据表 646
26.6 数据管理 647
26.6.1 查询数据 647
26.6.2 插入数据 648
26.6.3 更新数据 650
26.6.4 删除数据 651
26.7 索引管理 651
26.7.1 创建索引 651
26.7.2 删除索引 652
26.8 用户和权限管理 652
26.8.1 MySQL权限控制原理 652
26.8.2 用户管理 655
26.8.3 用户授权 656
26.8.4 回收权限 658
26.9 MySQL备份恢复 658
26.9.1 使用mysqldump备份和恢复 658
26.9.2 使用mysqlhotcopy备份和恢复 660
26.9.3 使用SQL语句备份和恢复 661
26.9.4 启用二进制日志 662
26.9.5 直接备份数据文件 663
26.10 MySQL图形化管理工具 663
26.10.1 获得phpMyAdmin安装包 663
26.10.2 安装phpMyAdmin 664
26.10.3 配置phpMyAdmin 664
26.10.4 登录phpMyAdmin 665
26.10.5 数据库管理 666
26.10.6 数据表管理 667
26.10.7 表记录管理 668
26.10.8 用户权限管理 670
26.11 MySQL常见问题处理 672
26.11.1 phpMyAdmin出现“配置文件现在需要绝密的短语密码”警告 672
26.11.2 查询时出现Out of memory错误 672
26.11.3 忘记root用户口令的解决方法 672
第27章 Webmin:Linux上的GUI管理工具 674
27.1 Webmin简介 674
27.2 Webmin的安装及使用 675
27.2.1 如何获得Webmin安装包 675
27.2.2 安装Webmin 676
27.2.3 启动和关闭Webmin 676
27.2.4 登录Webmin 678
27.2.5 更改Webmin的语言和主题 679
27.3 Webmin各功能模块介绍 680
27.3.1 Webmin类型模块 680
27.3.2 系统类型模块 680
27.3.3 服务器类型模块 681
27.3.4 网络类型模块 682
27.3.5 硬件类型模块 683
27.3.6 集群类型模块 684
27.3.7 其他类型模块 685
27.4 Webmin类型模块 685
27.4.1 Webmin用户管理 685
27.4.2 配置Webmin地址和端口 688
27.4.3 升级Webmin 688
27.5 系统类型模块 689
27.5.1 Cron任务调度 689
27.5.2 用户与组 690
27.5.3 更改口令 691
27.5.4 磁盘和网络文件系统 692
27.5.5 文件系统备份 693
27.6 服务器类型模块 694
27.6.1 Apache服务器 694
27.6.2 DHCP服务器 696
27.6.3 Postfix配置 696
27.6.4 Samba Windows文件共享 697
27.6.5 Squid代理服务器 697
27.7 网络类型模块 698
27.7.1 网络接口 698
27.7.2 路由和网关 699
27.7.3 NFS输出 699
27.8 硬件类型模块 700
27.8.1 GRUB开机加载程序 700
27.8.2 本地磁盘分区 701
27.8.3 系统时间 702
27.9 其他类型模块 703
第28章 Oracle服务器配置和管理 704
28.1 Oracle 11g简介 704
28.2 Oracle数据库服务器的安装 705
28.2.1 如何获得Oracle安装包 705
28.2.2 软、硬件要求 706
28.2.3 安装前的配置 708
28.2.4 安装Oracle 11g 710
28.2.5 配置网络监听程序 715
28.3 数据库管理 719
28.3.1 创建数据库 720
28.3.2 更改数据库 732
28.3.3 删除数据库 734
28.4 Oracle服务管理 735
28.4.1 手工启动和关闭Oracle服务 736
28.4.2 开机自动启动Oracle数据库服务 738
28.4.3 检测Oracle数据库状态 740
28.5 Oracle图形化管理工具——OEM 741
28.5.1 安装和使用OEM 741
28.5.2 数据库性能 744
28.5.3 用户与权限管理 745
28.5.4 数据表管理 747
28.6 Oracle常见问题处理 751
28.6.1 如何获得数据库创建过程中的详细信息 751
28.6.2 访问OEM出现“安全连接失败,使用了无效的安全证书”错误 752
28.6.3 忘记sys用户口令 752
第29章 Oracle RAC服务器配置和管理 753
29.1 Oracle RAC简介 753
29.2 Oracle Clusterware安装 754
29.2.1 如何获得Clusterware安装包 754
29.2.2 安装Clusterware的硬件环境要求 755
29.2.3 安装Clusterware的软件环境要求 755
29.2.4 网络配置 756
29.2.5 配置内核参数 757
29.2.6 创建oracle用户和用户组 757
29.2.7 配置ssh协议 758
29.2.8 配置用户环境 760
29.2.9 配置存储 760
29.2.10 安装Clusterware 762
29.2.11 CRS服务的检测与启动关闭 769
29.3 安装数据库软件 771
29.3.1 安装必须的软件包 771
29.3.2 安装Oracle 11g 772
29.4 创建RAC数据库 775
29.5 RAC数据库的管理 782
29.5.1 RAC数据库进程说明 783
29.5.2 启动和关闭RAC数据库 783
29.5.3 Oracle网络监听程序配置 784
29.5.4 故障切换 786
29.6 Oracle RAC常见问题 787
29.6.1 执行root.sh脚本出现载入共享库错误 788
29.6.2 执行root.sh脚本出现初始化ocrconfig失败的错误 788
29.6.3 执行root.sh脚本出现CRS-0215错误 789
附录:Linux指令速查索引 790