第1章 Linux概述 1
1.1 Unix、Linux和GNU简介 1
1.1.1 Unix 1
1.1.2 Linux 2
1.1.3 GNU 3
1.2 Linux的优点 4
1.3 Linux概述 7
1.3.1 内核编程接口 8
1.3.2 多用户 8
1.3.3 多任务 8
1.3.4 安全的分层文件系统 8
1.3.5 Shell 9
1.3.6 进程间的通信 10
1.3.7 大量的工具 11
1.3.8 系统管理 11
1.3.9 GUI 11
1.3.10 软件开发 12
1.3.11 网络工具 12
1.4 Linux发行版 12
小结 13
思考题 14
第2章 Red Hat Enterprise Linux 5的安装 15
2.1 Red Hat Enterprise Linux 5的新特性 15
2.1.1 安装性能的提高 15
2.1.2 系统管理性能的提高 15
2.1.3 其他新特性 16
2.2 Red Hat Enterprise Linux 5安装前的准备 17
2.2.1 安装前的准备 17
2.2.2 硬件要求 17
2.2.3 安装类型 18
2.2.4 安装方式 18
2.3 硬盘分区 19
2.3.1 分区命名 19
2.3.2 分区策略 20
2.3.3 分区类型 20
2.3.4 挂载点 21
2.4 文件系统 22
2.5 安装指南 25
2.6 第一次启动配置 38
小结 44
思考题 44
第3章 Linux操作基础 45
3.1 用户 45
3.1.1 用户的角色 45
3.1.2 用户和用户组 46
3.1.3 用户之间的切换 46
3.2 登录系统 47
3.2.1 终端登录 47
3.2.2 远程登录 48
3.2.3 虚拟控制台 48
3.3 关闭系统 49
3.3.1 退出系统 49
3.3.2 关机和重启 49
3.4 shell 50
3.4.1 重复/编辑命令行 50
3.4.2 语法格式 50
3.4.3 命令补齐 52
3.4.4 通配符 52
3.4.5 绝对路径与相对路径 53
3.4.6 命令行的处理过程 54
3.4.7 内置命令 55
3.5 运行级别 56
3.6 文档 57
3.6.1 --help 57
3.6.2 man 57
3.6.3 info 58
3.6.4 HOWTO文档 60
3.6.5 在线帮助 60
3.7 本章介绍到的命令 60
小结 61
思考题 61
第4章 vim编辑器 62
4.1 启动vi和vi的模式分类 62
4.1.1 启动vi 62
4.1.2 命令模式和输入模式 63
4.2 输入模式 64
4.2.1 插入/追加文本 64
4.2.2 打开空行 65
4.2.3 文本替换 65
4.3 命令模式下删除和修改文本 65
4.3.1 撤消修改 65
4.3.2 删除字符 65
4.3.3 删除文本 65
4.3.4 修改文本 66
4.3.5 替换文本 67
4.3.6 转换大小写 67
4.3.7 字符或行的交换 67
4.4 查找和替换 67
4.4.1 查找字符串 67
4.4.2 替换字符串 69
4.5 yank和put 70
4.5.1 yank 70
4.5.2 put 71
4.6 文件的读写 71
4.6.1 读文件 71
4.6.2 写文件 71
4.7 本章介绍到的命令 71
小结 73
思考题 73
第5章 文件和目录的管理 74
5.1 文件名 74
5.1.1 命名字符 74
5.1.2 文件的扩展名 74
5.1.3 隐藏文件 75
5.2 文件的操作 76
5.2.1 显示文件 76
5.2.2 查找文件 77
5.2.3 搜索文件的内容 78
5.2.4 显示文本文件的内容 79
5.2.5 复制文件 80
5.2.6 删除文件 81
5.2.7 重命名或移动文件 81
5.2.8 链接 82
5.3 目录操作 83
5.3.1 工作目录 84
5.3.2 用户主目录 84
5.3.3 系统目录 84
5.3.4 创建目录 85
5.3.5 删除目录 85
5.3.6 改变目录 86
5.3.7 显示当前目录 86
5.4 标准输入输出 86
5.4.1 重定向 87
5.4.2 管道 88
5.5 文件安全与权限 88
5.5.1 设置权限位 88
5.5.2 suid/guid 91
5.5.3 文件的所有者和关联组 92
5.5.4 umask 93
5.6 压缩和归档文件 94
5.6.1 gzip和gunzip 94
5.6.2 bzip2和bunzip2 95
5.6.3 tar 95
5.7 本章介绍到的命令 96
小结 97
思考题 97
第6章 用户和用户组的管理 98
6.1 相关的配置文件 98
6.1.1 /etc/passwd 98
6.1.2 /etc/shadow 99
6.1.3 /etc/group 100
6.1.4 /etc/gshadow 101
6.1.5 /etc/skel目录 102
6.1.6 /etc/sudoers 102
6.1.7 /etc/login.defs 103
6.1.8 /etc/default/useradd 103
6.2 用户的管理 104
6.2.1 添加用户 104
6.2.2 修改用户 105
6.2.3 删除用户 106
6.2.4 设置密码 106
6.2.5 设置用户信息 107
6.3 用户组的管理 107
6.3.1 添加用户组 107
6.3.2 修改用户组 108
6.3.3 删除用户组 108
6.3.4 用户组成员的维护 108
6.4 查看用户及用户组的信息 109
6.4 1 id 109
6.4.2 whoami 109
6.4.3 groups 109
6.5 本章介绍到的命令 109
小结 110
思考题 110
第7章 系统管理 111
7.1 进程管理 111
7.1.1 进程的分类 111
7.1.2 进程的属性 112
7.1.3 查看进程 112
7.1.4 动态显示进程 115
7.1.5 终止进程 117
7.2 作业控制 118
7.2.1 cron和crontab 118
7.2.2 at和batch 119
7.2.3 & 121
7.2.4 nohup 121
7.3 网络管理 122
7.3.1 ifconfig 122
7.3.2 hostname 124
7.3.3 ping 124
7.3.4 traceroute 125
7.3.5 nslookup 126
7.3.6 netstat 127
7.3.7 route 128
7.3.8 ip 129
7.3.9 相关配置文件 129
7.4 日志管理 131
7.4.1 日志文件 131
7.4.2 配置文件的种类和优先级 131
7.4.3 日志配置文件 132
7.5 关键字变量 133
7.5.1 HOME 133
7.5.2 PATH 134
7.5.3 提示符 134
7.6 查看登录用户 135
7.6.1 finger 136
7.6.2 w 136
7.6.3 who 137
7.7 其他 138
7.7.1 系统平均负载 138
7.7.2 系统日期 138
7.7.3 系统服务管理 140
7.7.4 挂载文件系统 141
7.8 本章介绍到的命令 143
小结 143
思考题 144
第8章 软件包的安装 145
8.1 软件包的类型和命名格式 145
8.1.1 软件包的类型 145
8.1.2 软件包的命名格式 145
8.1.3 软件包的安装方式 145
8.2 使用RPM软件包 146
8.2.1 rpm的设计目标 146
8.2.2 安装RPM软件包 147
8.2.3 卸载RPM软件包 147
8.2.4 升级RPM软件包 148
8.2.5 查询RPM软件包 148
8.2.6 验证RPM包 149
8.3 使用tar软件包 150
8.3.1 解压 150
8.3.2 查看并阅读文档 150
8.3.3 配置源代码 150
8.3.4 编译代码 151
8.3.5 安装应用软件 151
8.3.6 删除临时文件 152
8.3.7 卸载软件 152
8.4 其他 152
8.5 本章介绍到的命令 153
小结 153
思考题 153
第9章 Apache服务器的配置 154
9.1 Apache、MySQL和PHP简介 154
9.1.1 Apache简介 154
9.1.2 MySQL简介 154
9.1.3 PHP简介 155
9.2 Apache、MySQL和PHP的安装 157
9.2.1 Apache的安装 157
9.2.2 MySQL的安装 158
9.2.3 PHP的安装 160
9.3 Apache与PHP的连接 161
9.3.1 Apache与PHP的连接 161
9.3.2 PHP的测试 162
9.4 Apache的指令及配置语法 162
9.4.1 Apache的指令 163
9.4.2 配置语法 163
9.4.3 测试配置 164
9.5 指令的分类及介绍 164
9.5.1 服务器特征指令 164
9.5.2 服务器性能指令 165
9.5.3 目录指令 166
9.6 PHP配置 169
9.6.1 PHP配置的语法 169
9.6.2 常用配置语句 169
9.7 其他 171
9.7.1 Apache的身份验证 171
9.7.2 乱码问题 172
小结 172
思考题 172
第10章 Linux包过滤防火墙 173
10.1 Netfilter和iptables 173
10.1.1 Netfilter 173
10.1.2 iptables 175
10.1.3 Netfilter与iptables的关系 175
10.2 Netfilter的工作原理 176
10.2.1 包过滤的工作原理 176
10.2.2 NAT的工作原理 176
10.3 iptables的包过滤 177
10.3.1 iptables的安装 177
10.3.2 iptables的语法 178
10.3.3 对链的操作 179
10.3.4 对规则的操作 180
10.3.5 目标动作 180
10.4 iptables的基本命令 181
10.4.1 指定源或目的IP地址 181
10.4.2 反向指定 182
10.4.3 指定协议 182
10.4.4 指定接口 182
10.4.5 指定分片 182
10.5 iptables扩展 183
10.5.1 TCP扩展 183
10.5.2 UDP扩展 185
10.5.3 ICMP扩展 185
10.5.4 目标扩展 185
10.5.5 其他扩展 186
10.6 NAT 189
10.6.1 NAT的功能 190
10.6.2 NAT的使用范围 191
10.6.3 NAT的语法及使用规则 191
10.7 配置实例 192
小结 195
思考题 196
第11章 DNS服务器的配置 197
11.1 域名系统 197
11.1.1 概述 197
11.1.2 DNS的域名空间 197
11.1.3 DNS的工作原理 198
11.1.4 DNS服务器的安装 201
11.1.5 DNS术语 201
11.1.6 DNS服务器的配置 202
11.1.7 智能DNS及其配置 206
11.2 MySQL与DNS 208
11.2.1 BIND的MySQL模块安装 208
11.2.2 MySQL区域数据库的创建 209
11.2.3 named.conf的配置 210
11.2.4 双机热备份 210
11.3 DNS数据的管理 211
小结 212
思考题 212
参考文献 213