第1篇 Red Hat Linux基础篇 2
第1章 Linux操作系统简介 2
1.1 网络操作系统 2
1.1.1 UNIX操作系统 2
1.1.2 NetWare局域网操作系统 3
1.1.3 Windows NT类网络操作系统 4
1.2 Linux的发展历史 5
1.2.1 了解GNU 5
1.2.2 Linux的发展 5
1.3 Linux的主要特点 6
1.3.1 开放性 6
1.3.2 多用户多任务环境 6
1.3.3 良好的用户界面 7
1.3.4 设备独立性 7
1.3.5 丰富的网络功能 7
1.4 Linux的内核 8
1.4.1 Linux内核的发展史 8
1.4.2 Linux内核的功能 8
1.4.3 认识Linux内核的版本 9
1.5 Linux发行版本 11
1.5.1 Linux常见发行版本 11
1.5.2 Red Hat Enterprise Linux 14
1.6 本章小结 15
第2章 Red Hat Enterprise Linux 5的安装 16
2.1 安装前的准备 16
2.1.1 检查硬件兼容性 16
2.1.2 分区规划 16
2.1.3 检查磁盘空间 17
2.1.4 存储设备的表示 17
2.1.5 RHEL安装方式 18
2.2 安装RHEL 18
2.2.1 进入安装程序 18
2.2.2 选择语言 20
2.2.3 硬盘分区 22
2.2.4 系统参数配置 24
2.2.5 选择安装组件 26
2.2.6 安装最后的设置 28
2.3 其他安装方式安装 33
2.3.1 硬盘安装 33
2.3.2 网络安装 36
2.4 本章小结 40
第3章 Linux基础使用 41
3.1 Linux的启动和关闭 41
3.1.1 启动Linux 41
3.1.2 关闭Linux 42
3.2 命令界面 44
3.2.1 切换到字符界面 44
3.2.2 使用终端窗口 45
3.2.3 使用第3方终端软件 45
3.3 图形界面GNOME 46
3.3.1 认识GNOME 46
3.3.2 桌面组成 46
3.3.3 系统设置 48
3.3.4 浏览计算机 50
3.3.5 多媒体应用 52
3.3.6 网络应用 54
3.3.7 办公软件 56
3.4 Linux的运行级 59
3.4.1 了解init进程 59
3.4.2 运行级 61
3.5 本章小结 62
第4章 Linux常用操作命令 63
4.1 Linux Shell简介 63
4.1.1 了解Shell 63
4.1.2 Shell命令规则 63
4.2 常用目录和文件操作命令 66
4.2.1 路径的概念 66
4.2.2 常用目录操作命令 67
4.2.3 常用文件操作命令 71
4.2.4 使用通配符 77
4.2.5 查找文件 78
4.2.6 文件压缩和打包管理 83
4.2.7 其他常用命令 89
4.3 文本编辑命令 93
4.3.1 查看文件 93
4.3.2 文本编辑器vi入门 96
4.4 系统运行状况分析命令 99
4.4.1 硬件信息 100
4.4.2 引导信息 101
4.4.3 运行日志 102
4.5 本章小结 104
第5章 Linux文件系统 105
5.1 认识Linux文件系统 105
5.1.1 目录结构 105
5.1.2 Linux文件 106
5.1.3 常见文件系统类型 108
5.2 Linux文件权限 109
5.2.1 文件权限概述 109
5.2.2 权限位 109
5.2.3 setuid和setgid位 111
5.2.4 修改文件权限 111
5.2.5 修改所有者 113
5.2.6 设置默认权限 113
5.3 使用硬盘 114
5.3.1 查看硬盘分区表 114
5.3.2 硬盘分区 115
5.3.3 格式化分区 121
5.4 挂载文件系统 122
5.4.1 mount命令 122
5.4.2 挂载硬盘分区 123
5.4.3 挂载光驱 124
5.4.4 挂载U盘 125
5.4.5 自动挂载文件系统 126
5.5 本章小结 127
第6章 Linux管理入门 128
6.1 管理用户和组 128
6.1.1 保存用户和组信息的文件 128
6.1.2 管理用户和组 131
6.1.3 口令维护 133
6.1.4 查看用户 134
6.1.5 用户管理器 134
6.2 管理进程 136
6.2.1 了解进程 136
6.2.2 启动进程 136
6.2.3 查看进程状态 137
6.2.4 终止进程 140
6.3 管理软件包 141
6.3.1 RPM介绍 141
6.3.2 使用RPM 141
6.3.3 从源代码安装软件 143
6.4 配置网络 145
6.4.1 设置主机名 146
6.4.2 设置IP地址 146
6.4.3 修改IP地址和网关 148
6.4.4 设置DNS服务器 148
6.4.5 xinetd 149
6.5 本章小结 152
第7章 Shell编程入门 153
7.1 Shell编程过程 153
7.1.1 创建Shell程序 153
7.1.2 设置执行权限 154
7.1.3 执行Shell程序 154
7.2 Shell的语法介绍 155
7.2.1 使用变量 155
7.2.2 输入/输出内部命令 157
7.2.3 条件测试 158
7.2.4 流程控制语句 160
7.2.5 函数 165
7.2.6 处理参数 166
7.3 调试Shell程序 168
7.3.1 一般错误 168
7.3.2 调试跟踪 168
7.4 Shell程序设计实例 170
7.5 本章小结 171
第2篇 基础网络应用篇 174
第8章 远程登录管理 174
8.1 使用telnet服务 174
8.1.1 安装telnet服务器程序 174
8.1.2 配置telnet服务器 175
8.1.3 使用telnet 177
8.1.4 telnet的安全风险 178
8.2 使用openssh 178
8.2.1 安装和配置openssh 178
8.2.2 openssh密钥管理 181
8.2.3 使用SSH客户端 182
8.2.4 openssh常用命令 183
8.3 使用VNC 185
8.3.1 VNC简介 185
8.3.2 安装VNC服务器程序 186
8.3.3 启动和配置VNC服务器程序 186
8.3.4 使用Windows VNC客户端 188
8.3.5 Linux VNC客户端 189
8.3.6 VNC Web客户端 191
8.4 本章小结 192
第9章 DHCP服务器 193
9.1 认识DHCP协议 193
9.1.1 DHCP简介 193
9.1.2 DHCP工作流程 194
9.2 安装DHCP服务器 195
9.2.1 安装DHCP服务器程序 195
9.2.2 启动DHCP服务器程序 195
9.2.3 停止DHCP服务器程序 196
9.2.4 查看DHCP状态 197
9.3 配置DHCP服务器 197
9.3.1 了解配置文件 197
9.3.2 配置文件的声明、参数和选项 198
9.3.3 配置示例 200
9.3.4 建立客户租约文件 201
9.4 配置DHCP客户端 202
9.4.1 配置Linux的DHCP客户端 202
9.4.2 配置Windows的DHCP客户端 203
9.5 本章小结 205
第10章 DNS服务器 206
10.1 DNS简介 206
10.1.1 域名空间 206
10.1.2 DNS服务器类型 208
10.1.3 DNS解析的过程 209
10.2 安装DNS服务器 210
10.2.1 安装DNS服务器程序 210
10.2.2 启动和关闭DNS服务器程序 211
10.3 DNS的配置选项 212
10.3.1 了解配置文件 212
10.3.2 主配置文件named.conf 213
10.3.3 区文件和资源记录 215
10.3.4 了解记录类型 216
10.4 DNS服务器配置实例 218
10.4.1 DNS服务的测试 218
10.4.2 主DNS服务器 220
10.4.3 辅助DNS服务器 223
10.4.4 简单DNS负载均衡 225
10.4.5 DNS转发 227
10.5 本章小结 227
第11章 时间服务器 228
11.1 时间协议NTP简介 228
11.1.1 NTP工作过程 228
11.1.2 NTP的工作模式 229
11.1.3 选择NTP服务器 229
11.2 安装和启动NTP服务器 230
11.2.1 安装NTP程序 230
11.2.2 启动和停止NTP服务器 230
11.3 NTP服务器的配置 231
11.3.1 了解配置文件 231
11.3.2 常用配置选项 231
11.3.3 ntp.conf配置实例 232
11.3.4 监控NTP服务器 233
11.4 NTP客户端的使用方法 234
11.4.1 在Linux中进行时间同步 234
11.4.2 在Windows中进行时间同步 235
11.5 本章小结 236
第3篇 高级网络应用篇 238
第12章 MySQL操作入门 238
12.1 MySQL简介 238
12.2 安装MySQL 239
12.2.1 基于RPM包的MySQL安装 239
12.2.2 安装源代码MySQL 242
12.3 启动MySQL 245
12.3.1 设置用户和权限 245
12.3.2 启动和停止MySQL 245
12.4 MySQL基础操作 247
12.4.1 设置数据库管理员密码 247
12.4.2 连接MySQL服务器 248
12.4.3 新增账户 249
12.4.4 操作数据库 250
12.4.5 操作表 253
12.4.6 操作记录 256
12.4.7 MySQL数据导入和导出 257
12.5 SQL语言基础 259
12.5.1 了解SQL语言 260
12.5.2 SQL的数据类型 260
12.5.3 数据库和表的定义 262
12.5.4 数据查询功能 264
12.5.5 数据操纵语句 266
12.6 本章小结 267
第13章 即时通信服务器 268
13.1 安装jabberd2 268
13.1.1 安装前的准备 268
13.1.2 编译安装jabberd2 269
13.2 配置jabberd2 271
13.2.1 创建MySQL数据 271
13.2.2 修改配置文件 273
13.2.3 启动jabberd2服务器程序 275
13.3 jabber客户端 276
13.3.1 安装Windows版pidgin程序 276
13.3.2 安装Linux版pidgin程序 277
13.3.3 使用pidgin 279
13.4 本章小结 281
第14章 目录服务器 283
14.1 了解LDAP协议 283
14.1.1 LDAP协议 283
14.1.2 LDAP的基本模型 284
14.1.3 LDAP的功能 285
14.1.4 LDAP协议的特点 285
14.2 安装OpenLDAP 285
14.2.1 安装OpenLDAP服务器程序 285
14.2.2 测试安装正确性 287
14.3 配置OpenLDAP 288
14.3.1 slapd.conf 288
14.3.2 了解schema 290
14.4 管理OpenLDAP 290
14.4.1 向目录数据库中添加数据 290
14.4.2 查询 295
14.4.3 修改条目 296
14.4.4 删除条目 298
14.4.5 数据导出 299
14.5 设置主从LDAP服务器 300
14.5.1 多台LDAP服务器工作过程 300
14.5.2 设置主服务器 301
14.5.3 设置从服务器 302
14.5.4 复制数据库 303
14.5.5 测试主从LDAP服务器 304
14.6 OpenLDAP在用户认证的应用 306
14.6.1 用户认证用到的ojbectClass 306
14.6.2 使用迁移工具 306
14.6.3 设置客户端登录 309
14.7 本章小结 310
第15章 WWW服务器 311
15.1 HTTP协议介绍 311
15.1.1 HTTP协议简介 311
15.1.2 HTTP工作方式 312
15.2 安装Apache 312
15.2.1 Apache服务器简介 312
15.2.2 安装Apache服务器程序 313
15.2.3 启动和停止Apache服务器 314
15.2.4 测试WWW服务 314
15.3 配置Apache 315
15.3.1 了解配置文件 316
15.3.2 了解Apache的模块 316
15.3.3 常用配置指令 317
15.4 虚拟主机 319
15.4.1 基于主机名的虚拟主机 319
15.4.2 基于IP地址的虚拟主机 321
15.5 文件系统映射 323
15.5.1 基本文件映射 323
15.5.2 使用别名映射 324
15.5.3 URL重定向 324
15.6 本章小结 325
第16章 邮件服务器 326
16.1 了解电子邮件系统 326
16.1.1 邮件的代理制度 326
16.1.2 了解邮件相关协议 327
16.2 安装邮件服务器 328
16.2.1 使用到的软件包 328
16.2.2 安装postfix 329
16.2.3 安装Courier-Authlib 334
16.2.4 安装Maildrop 335
16.2.5 安装ExtMail和ExtMan 336
16.2.6 安装Courier-IMAP 337
16.3 配置邮件服务器 338
16.3.1 配置域名系统 338
16.3.2 配置postfix 339
16.3.3 初始化数据库 342
16.3.4 配置WWW服务器 345
16.3.5 配置Courier-Authlib 346
16.3.6 配置Cyrus-SASL认证 347
16.4 测试邮件服务器 347
16.4.1 启动各软件包 347
16.4.2 命令方式下测试邮件收发 349
16.4.3 登录ExtMail 351
16.4.4 测试ExtMail 352
16.4.5 配置SMTP/POP邮件客户端 353
16.5 本章小结 356
第17章 FTP服务器 357
17.1 FTP基础 357
17.1.1 FTP工作原理 357
17.1.2 FTP协议 358
17.1.3 FTP传输文件方式 359
17.1.4 使用FTP 360
17.1.5 vsftp介绍 363
17.2 安装vsftpd服务器 364
17.2.1 使用RPM包安装 364
17.2.2 使用源码安装 365
17.2.3 卸载vsftpd 367
17.3 配置vsftpd工作环境 367
17.3.1 配置用户和目录 368
17.3.2 启动vsftpd 369
17.3.3 检查是否启动vsftpd 371
17.4 vsftpd常用配置 371
17.4.1 匿名用户配置 372
17.4.2 本地用户配置 375
17.4.3 网络和连接参数配置 378
17.4.4 日志功能配置 380
17.4.5 其他常用选项设置 381
17.5 vsftpd高级配置 381
17.5.1 配置虚拟用户使用vsftpd 382
17.5.2 配置虚拟FTP服务器 386
17.6 本章小结 387
第18章 Samba服务器 388
18.1 了解Samba 388
18.1.1 SMB协议 388
18.1.2 Samba及其功能 388
18.2 安装Samba服务器 389
18.2.1 安装Samba 389
18.2.2 启动Samba 390
18.3 配置Samba 391
18.3.1 全局选项 391
18.3.2 共享选项 393
18.3.3 特殊设置选项 393
18.3.4 添加Samba用户 394
18.4 Samba应用实例 395
18.4.1 匿名Samba服务器 395
18.4.2 需登录Samba服务器 398
18.5 使用SWAT管理Samba服务器 402
18.5.1 配置SWAT服务 402
18.5.2 配置SWAT服务 403
18.6 访问Windows系统 404
18.6.1 挂载到Linux文件系统 405
18.6.2 使用smbclient软件 405
18.7 本章小结 407
第19章 CUPS打印服务器 409
19.1 了解Linux的打印系统 409
19.1.1 Linux打印技术 409
19.1.2 查找打印驱动程序 410
19.2 安装和配置CUPS服务器 411
19.2.1 安装启动CUPS 411
19.2.2 配置CUPS打印系统 412
19.3 共享打印机 417
19.3.1 Windows客户端 417
19.3.2 Linux客户端 418
19.4 本章小结 418
第20章 新闻组服务器 420
20.1 了解新闻组 420
20.1.1 新闻组的概念 420
20.1.2 新闻组的分类 421
20.2 安装inn 421
20.2.1 使用inn前的准备 421
20.2.2 安装inn软件包 422
20.3 配置inn 423
20.3.1 主配置文件inn.conf 423
20.3.2 存储方式配置文件storage.conf 423
20.3.3 过期设置文件expire.ctl 424
20.3.4 权限配置文件readers.conf 425
20.3.5 初始设置 426
20.4 访问新闻组服务器 429
20.4.1 使用新闻组服务器 429
20.4.2 使用自定义新闻组服务器 431
20.5 管理新闻组 432
20.5.1 添加新闻组 432
20.5.2 删除帖子 433
20.5.3 删除新闻组 434
20.6 本章小结 435
第21章 流媒体服务器 436
21.1 流媒体简介 436
21.1.1 了解流式传输 436
21.1.2 常见媒体系统 437
21.2 安装Helix Server 437
21.2.1 获取软件 437
21.2.2 安装Helix Server 438
21.2.3 启动和停止Helix Server 441
21.3 管理Helix Server 443
21.3.1 打开Web管理界面 443
21.3.2 服务器设置 444
21.3.3 测试流媒体服务器 447
21.4 本章小结 448
第4篇 Linux网站开发环境 450
第22章 安装PHP 450
22.1 PHP简介 450
22.1.1 PHP发展 450
22.1.2 PHP特点 450
22.2 安装PHP软件包 451
22.2.1 添加/删除软件 451
22.2.2 使用RPM安装 454
22.2.3 使用源代码进行编译安装 455
22.3 配置PHP 457
22.3.1 PHP配置文件php.ini 457
22.3.2 修改Apache配置文件 458
22.4 测试PHP 459
22.4.1 创建测试PHP文件 459
22.4.2 打开测试PHP文件 460
22.5 本章小结 462
第23章 PHP基础 463
23.1 PHP语法基础 463
23.1.1 语法格式 463
23.1.2 变量 464
23.1.3 字符串 465
23.1.4 运算符 466
23.1.5 数组 468
23.2 PHP的流程控制 469
23.2.1 分支语句 469
23.2.2 循环语句 471
23.3 PHP的函数 475
23.3.1 字符串函数 475
23.3.2 数值函数 477
23.3.3 日期时间函数 478
23.3.4 数组函数 480
23.3.5 自定义函数 481
23.4 PHP处理表单 483
23.4.1 表单提交方式 483
23.4.2 PHP接收表单数据的方式 484
23.5 PHP操作MySQL数据库 485
23.5.1 连接和选择数据库 485
23.5.2 操作数据库中的数据 486
23.6 本章小结 487
第24章 PHP实例——简易留言本 488
24.1 系统设计 488
24.1.1 功能设计 488
24.1.2 数据库设计 489
24.1.3 Web环境配置 489
24.2 代码设计 490
24.2.1 数据库连接代码 490
24.2.2 设计主页(查看留言) 490
24.2.3 发表留言 492
24.2.4 编辑留言 495
24.2.5 删除留言 498
24.3 本章小结 499