第1部分 快速入门 2
第1章 Red Hat Linux简介 2
1.1 UNIX与Linux 2
1.2 Linux的特点 3
1.3 Linux的结构 4
1.3.1 Linux内核 5
1.3.2 应用程序 5
1.4 Linux发行版本 6
1.5 RedHat Linux 9.0的新特性 7
1.6 Linux软件资源及发展方向 8
1.6.1 常用软件 8
1.6.2 常用的Linux网上资源 10
1.6.3 发展方向 12
1.7 本章小结 13
1.8 习题 13
第2章 Red Hat Linux 9.0安装与配置 14
2.1 安装前的准备工作 14
2.1.1 选择安装方法 15
2.1.2 安装对系统磁盘空间的要求 15
2.1.3 磁盘分区和文件系统 17
2.2 安装Red Hat Linux 20
2.2.1 启动安装程序 20
2.2.2 用光盘安装 21
2.2.3 安装步骤 21
2.3 基本的日常工作 34
2.3.1 设置代理 34
2.3.2 登录 35
2.3.3 打开shell提示 36
2.3.4 文档资料 36
2.3.5 注销 37
2.3.6 关机 37
2.4 本章小结 37
2.5 习题 38
第3章 X Window系统 39
3.1 X Window简介 39
3.1.1 什么是X Window 39
3.1.2 设置X Window 41
3.2 与Microsoft Windows的异同 41
3.2.1 相似处 42
3.2.2 差异处 42
3.3 X Window系统基本组件 43
3.3.1 X服务器 43
3.3.2 窗口管理器 44
3.3.3 文件管理器 47
3.3.4 桌面环境 48
3.3.5 Linux窗口管理器 48
3.4 本章小结 48
3.5 习题 49
第4章 GNOME和KDE图形环境 50
4.1 GNOME概述 50
4.2 GNOME入门 51
4.3 GNOME的控制面板 51
4.3.1 面板的基本组成 51
4.3.2 面板个性化配置一:自由组合内容元素 53
4.3.3 面板个性化配置二:自由组合属性元素 55
4.4 GNOME桌面 57
4.4.1 初始桌面 57
4.4.2 拖放操作 57
4.4.3 桌面菜单 59
4.4.4 相关属性设置 59
4.5 GNOME窗口管理器 60
4.6 GNOME文件管理器 61
4.6.1 文件管理器的组成 61
4.6.2 文件管理器的基本操作 62
4.6.3 文件管理器个性化操作 64
4.6.4 从这里开始 66
4.7 KDE概述 67
4.8 本章小结 69
4.9 习题 69
第5章 字符操作环境 70
5.1 使用终端 70
5.1.1 虚拟终端简介 70
5.1.2 shell的历史 71
5.1.3 转换系统模式 73
5.2 使用shell 73
5.2.1 为什么使用shell 74
5.2.2 shell环境变量 74
5.2.3 常用的shell操作 75
5.3 字符编辑器vi 85
5.3.1 vi的执行与退出 85
5.3.2 vi的操作模式 86
5.3.3 Command Mode命令 87
5.3.4 Last Line Mode命令 89
5.4 本章小结 90
5.5 习题 90
第2部分 基本操作第6章 Linux文件系统 94
6.1 Linux文件系统简介 94
6.1.1 Linux与DOS文件系统的区别 95
6.1.2 Linux文件系统结构 95
6.2 Linux的文件 97
6.2.1 文件名 97
6.2.2 文件类型 97
6.2.3 文件权限 100
6.3 ext3文件系统简介 101
6.3.1 文件系统的类型 101
6.3.2 ext3文件系统 102
6.4 安装和卸载文件系统 103
6.4.1 使用mount命令挂载文件系统 103
6.4.2 使用umount命令卸载文件系统 104
6.4.3 手工编辑/etc/fstab文件 105
6.5 创建一个ext3文件系统 107
6.5.1 使用parted创建磁盘分区 107
6.5.2 删除分区 109
6.5.3 重新划分分区大小 110
6.6 转换到ext3文件系统 111
6.7 还原到ext2文件系统 111
6.8 交换文件与交换分区 112
6.8.1 交换文件 112
6.8.2 交换分区 112
6.8.3 关闭交换 112
6.9 本章小结 113
6.10 习题 113
第7章 进程管理 115
7.1 进程概述 115
7.1.1 什么是进程 115
7.1.2 进程间的关系 116
7.1.3 多进程 116
7.2 进程类型 117
7.3 进程控制命令 117
7.3.1 监视进程 117
7.3.2 调整优先级 119
7.3.3 终止进程 121
7.4 运行后台进程 123
7.5 本章小结 127
7.6 习题 127
第8章 常用命令介绍 128
8.1 目录及文件操作命令 128
8.1.1 常用的目录操作pwd、cd和ls 128
8.1.2 查找文件find 128
8.2 文件操作命令 131
8.2.1 建立新目录mkdir 131
8.2.2 移动文件和目录mv 131
8.2.3 复制文件和目录cp 132
8.2.4 删除文件和目录rm 132
8.2.5 改变文件权限chmod 133
8.2.6 改变文件所有权chown 133
8.2.7 压缩文件gzip 133
8.2.8 文件打包tar 134
8.2.9 查看文件类型file 135
8.3 磁盘操作 136
8.3.1 磁盘文件系统简介 136
8.3.2 安装文件系统mount 137
8.3.3 列出磁盘空间df 137
8.4 文本编辑 138
8.4.1 显示文件内容cat 138
8.4.2 查看文件前部head 139
8.4.3 观察文件末端tail 139
8.4.4 查找文件内容grep 140
8.4.5 分屏显示文件more和less 140
8.4.6 文本编辑工具vi 141
8.5 帮助命令 142
8.5.1 显示帮助手册man 143
8.5.2 寻找命令所在位置whereis 144
8.5.3 介绍用户命令info 145
8.6 本章小结 145
8.7 习题 145
第9章 常用软件 147
9.1 文档应用软件 147
9.1.1 办公套件 147
9.1.2 文本编辑器 150
9.1.3 PDF阅读器 152
9.2 图形工具 153
9.2.1 图像查看器 153
9.2.2 图像编辑器 155
9.3 音频、视频和娱乐 155
9.4 本章小结 156
9.5 习题 157
第3部分 系统管理第10章 用户管理 160
10.1 什么是用户账户 160
10.2 root账户 161
10.3 管理用户和组群 162
10.3.1 /etc/passwd文件 162
10.3.2 /etc/skel子目录 163
10.3.3 /etc/login.access文件 163
10.3.4 /etc/group文件 164
10.4 命令行配置 164
10.4.1 增加用户 165
10.4.2 添加组 166
10.4.3 改变用户属性 166
10.4.4 删除用户 166
10.4.5 设置口令 166
10.4.6 口令老化 166
10.5 用户管理器配置 168
10.5.1 添加新用户 169
10.5.2 修改用户属性 170
10.5.3 添加新组群 171
10.5.4 修改组群属性 171
10.6 本章小结 171
10.7 习题 171
第11章 系统监控与备份 173
11.1 显示系统进程 173
11.2 显示内存用量 176
11.3 文件系统监控 176
11.3.1 磁盘空间用量 176
11.3.2 监控文件系统 178
11.4 获取硬件信息 178
11.5 查看日志文件 179
11.5.1 定位日志文件 179
11.5.2 浏览日志文件 180
11.5.3 检查日志文件 181
11.6 系统监控参考资料 182
11.7 备份 182
11.7.1 备份策略 182
11.7.2 选择备份介质 183
11.7.3 选择备份工具 184
11.7.4 简单备份 185
11.7.5 压缩备份 185
11.8 使用tar和cpio执行备份 185
11.9 恢复文件 186
11.10 本章小结 187
11.11 习题 187
第12章 软件包管理 188
12.1 RPM软件管理 188
12.1.1 软件包管理器 188
12.1.2 RPM的设计目标 190
12.2 使用RPM 190
12.2.1 安装 191
12.2.2 删除安装 193
12.2.3 升级 193
12.2.4 刷新 194
12.2.5 查询 194
12.2.6 校验 194
12.3 检查软件包的签名 195
12.3.1 导入公钥 195
12.3.2 校验软件包的签名 196
12.4 范例解析 196
12.5 软件包管理工具 197
12.6 Red Hat网络 198
12.7 其他资料 198
12.8 安装tar格式的软件包 198
12.9 本章小结 199
12.10 习题 200
第13章 资源共享 201
13.1 使用samba共享资源 201
13.1.1 samba简介 201
13.1.2 配置samba 202
13.1.3 使用samba工具 205
13.2 图形化网络邻居 208
13.3 Windows模拟程序Wine 208
13.3.1 Wine简介 208
13.3.2 安装Wine 209
13.3.3 使用Wine 209
13.3.4 直接使用Windows软件的Crossover Office 211
13.4 访问Windows分区 212
13.4.1 Explore2fs 212
13.4.2 Captain Nemo 212
13.4.3 Ext2viewer 212
13.4.4 其他的小工具 213
13.5 本章小结 213
13.6 习题 213
第14章 内核升级 214
14.1 Linux内核的版本编号机制 214
14.2 准备升级 215
14.3 下载升级内核 216
14.4 校验初始RAM磁盘映像 217
14.5 校验引导装载程序 217
14.5.1 GRUB 218
14.5.2 LILO 218
14.6 内核模块 219
14.6.1 内核模块工具 219
14.6.2 其他资料 220
14.7 本章小结 221
14.8 习题 221
第15章 设备管理 222
15.1 设备管理概述 222
15.2 打印机配置 223
15.2.1 添加打印机 224
15.2.2 命令行配置 227
15.2.3 选择打印机型号 229
15.2.4 打印测试页 230
15.2.5 修改现存打印机 230
15.2.6 保存配置文件 232
15.2.7 管理打印作业 233
15.2.8 共享打印机 234
15.2.9 切换打印系统 236
15.2.10 其他资料 237
15.3 声卡、网卡等的安装与检测 237
15.4 本章小结 238
15.5 习题 239
第4部分 网络互联第16章 TCP/IP网络基础 242
16.1 TC/IP基础 242
16.1.1 TCP/IP网络的分层体系结构 242
16.1.2 TCP/IP应用层协议 244
16.1.3 TCP/IP配置基础 244
16.1.4 路由的概念 247
16.1.5 Telnet 249
16.1.6 常用的命令 250
16.2 建立与Internet的连接 251
16.3 TCP/IP配置文件 252
16.3.1 主机名:/etc/hosts文件 252
16.3.2 网络名:/etc/networks文件 252
16.3.3 主机名:/etc/HOSTNAME文件 253
16.3.4 网络服务:/etc/services文件 253
16.3.5 网络协议:/etc/protocols文件 253
16.4 网络接口配置 253
16.5 常用网络管理命令 255
16.5.1 检测主机连接 255
16.5.2 网络路由选择 256
16.5.3 网络接口信息统计 257
16.6 本章小结 257
16.7 习题 258
第17章 网络应用 259
17.1 使用Web浏览器 259
17.1.1 Mozilla介绍 259
17.1.2 Mozilla的使用 260
17.1.3 Mozilla网页编辑器 261
17.2 使用文件管理器浏览 262
17.2.1 K Desktop文件管理器:Konqueror 262
17.2.2 GNOME的浏览器:Nautilus 262
17.3 使用电子邮件 263
17.3.1 邮件服务器:POP、IMAP和SMTP 263
17.3.2 电子邮件客户 264
17.4 电子邮件客户端 265
17.4.1 Evolution 265
17.4.2 Mozilla Mail 267
17.4.3 KDE桌面邮件客户:KMail 268
17.5 使用FTP 268
17.5.1 基于Web浏览器的FTP 268
17.5.2 基于桌面文件管理器的FTP 269
17.5.3 GNOME FTP客户 269
17.5.4 基于ftp命令行的客户程序 270
17.6 本章小结 274
17.7 习题 275
第18章 管理网络服务 276
18.1 服务守护进程 276
18.1.1 理解守护进程 276
18.1.2 守护进程的分类 277
18.1.3 常见的守护进程 277
18.2 网络配置文件 280
18.2.1 服务/etc/services 280
18.2.2 使用xinetd 281
18.2.3 主机地址文件hosts 287
18.3 配置FTP服务 288
18.3.1 安装配置FTP服务器 288
18.3.2 FTP服务器配置文件 289
18.4 配置邮件服务器 291
18.4.1 邮件系统简介 291
18.4.2 安装配置sendmail服务器 291
18.4.3 安装POP3服务器 294
18.5 Apache服务器 296
18.5.1 Apache HTTP服务器配置 296
18.5.2 基本设置 296
18.5.3 默认设置 298
18.5.4 虚拟主机设置 302
18.5.5 服务器设置 305
18.5.6 调整性能 306
18.5.7 保存设置 307
18.5.8 其他资料 307
18.6 LAMP Web服务器 307
18.6.1 LAMP的组件 307
18.6.2 工作原理 308
18.6.3 安装与配置 308
18.7 本章小结 312
18.8 习题 312
第19章 远程系统管理 313
19.1 使用Telnet 313
19.1.1 使用Telnet客户端 314
19.1.2 使用Telnet服务器 314
19.2 安全的SSH 315
19.2.1 SSH简介 315
19.2.2 配置OpenSSH服务器 316
19.2.3 使用OpenSSH客户端 317
19.2.4 使用Windows的SSH客户端 323
19.3 使用图形化的VNC 324
19.3.1 VNC概述 324
19.3.2 使用VNC服务器 325
19.3.3 VNC客户端 326
19.4 更加安全地使用VNC 326
19.5 本章小结 327
19.6 习题 327
第5部分 基本编程第20章 Linux基本编程 330
20.1 GNU计划 330
20.2 编程环境 330
20.3 GCC的介绍 331
20.3.1 GCC简介 331
20.3.2 GCC的执行过程 331
20.3.3 GCC的基本用法和选项 332
20.3.4 GCC的错误类型及对策 333
20.4 调试工具:gdb 334
20.4.1 启动gdb 334
20.4.2 gdb的功能 334
20.4.3 gdb基本命令 334
20.5 GNU make的介绍 335
20.5.1 多文件项目 335
20.5.2 GNU make工具 337
20.5.3 GNU automake工具 342
20.6 Linux C程序的框架 342
20.6.1 关于程序的存放目录 342
20.6.2 头文件 343
20.6.3 函数库 343
20.6.4 静态函数库 344
20.6.5 共享函数库 345
20.7 创建、编译和执行第一个程序 346
20.7.1 创建一个简单的C程序 346
20.7.2 建立大型的应用程序 348
20.8 本章小结 349
20.9 习题 349
第21章 shell编程 350
21.1 shell编程的意义 350
21.2 创建和执行shell程序 350
21.2.1 创建第一个shell程序 350
21.2.2 执行第一个shell程序 351
21.3 shell变量 352
21.3.1 给变量赋值 352
21.3.2 访问变量值 352
21.3.3 输出变量 352
21.4 shell参数 353
21.4.1 Linux的参数 353
21.4.2 变量表达式 354
21.5 控制结构语句 358
21.6 条件语句 361
21.7 其他命令 364
21.8 常见错误解析 364
21.8.1 有关变量 364
21.8.2 有关表达式 365
21.8.3 重复与循环 365
21.8.4 其他 366
21.9 本章小结 366
21.10 习题 366
参考文献 368