第一部 分快速入门 1
第1章 Red Hat Linux简介 1
1.1 UNIX与Linux 1
1.2 Linux的特点 2
1.3 Linux的结构 4
1.3.1 Linux内核 4
1.3.2 实用程序 5
1.4 Linux发行版本 6
1.5 Red Hat Linux 9.0的新特点 7
1.6 Linux软件资源及发展方向 8
1.6.1 常用软件 8
1.6.2 常用的Linux网上资源 10
1.6.3 发展方向 13
1.7 本章小结 13
1.8 习题 14
第2章 Red Hat Linux 9.0安装与配置 15
2.1 安装前的准备工作 15
2.1.1 收集硬件信息 16
2.1.2 选择安装方法 18
2.1.3 制作Red Hat Linux引导盘 18
2.1.4 安装对系统磁盘空间的要求 20
2.1.5 磁盘分区和文件系统 22
2.2 安装Red Hat Linux 25
2.2.1 启动安装程序 25
2.2.2 从光盘安装 26
2.2.3 安装步骤 27
2.3 基本的日常工作 40
2.3.1 设置代理 41
2.3.2 登录 42
2.3.3 打开shell提示 44
2.3.4 文档资料 44
2.3.5 注销 44
2.3.6 关机 45
2.4 本章小结 45
2.5 习题 46
第3章 X Window系统 47
3.1 X Window简介 47
3.1.1 什么是X Window 47
3.1.2 设置X Window 50
3.2 与Microsoft Windows的异同 50
3.2.1 相似处 50
3.2.2 相异处 51
3.3 X Window系统基本组件 52
3.3.1 X服务器 52
3.3.2 窗口管理器 53
3.3.3 文件管理器 58
3.3.4 桌面环境 58
3.3.5 Linux窗口管理器 59
3.4 本章小结 59
3.5 习题 59
第4章 GNOME和KDE图形环境 61
4.1 GNOME概述 61
4.2 GNOME入门 61
4.3 GNOME的控制面板 62
4.3.1 面板的基本组成 62
4.3.2 面板个性化配置一:自由组合内容元素 64
4.3.3 面板个性化配置二:自由组合属性元素 65
4.4 GNOME桌面 68
4.4.1 初始桌面 68
4.4.2 拖放操作 68
4.4.3 桌面菜单 70
4.4.4 相关属性设置 70
4.5 GNOME窗口管理器 72
4.6 GNOME文件管理器 74
4.6.1 文件管理器的组成 74
4.6.2 文件管理器的基本操作 75
4.6.3 文件管理器个性化操作 78
4.6.4 使用Nautilus 80
4.6.5 从这里开始 81
4.7 KDE概述 82
4.8 本章小结 83
4.9 习题 84
第5章 字符操作环境 85
5.1 使用终端 85
5.1.1 虚拟终端简介 85
5.1.2 shell的历史 87
5.1.3 转换系统模式 88
5.2 使用shell 89
5.2.1 为什么使用shell 89
5.2.2 shell环境变量 90
5.2.3 常用的shell操作 91
5.3 字符编辑器vi 104
5.3.1 vi的执行与退出 104
5.3.2 vi的操作模式 105
5.3.3 Command Mode命令 107
5.3.4 Last Line Mode命令 110
5.4 本章小结 110
5.5 习题 110
第二部分 基本操作 112
第6章 Linux文件系统 112
6.1 Linux文件系统简介 112
6.1.1 Linux与DOS文件系统的区别 113
6.1.2 Linux文件系统结构 113
6.2 Linux的文件 115
6.2.1 文件名 115
6.2.2 文件类型 116
6.2.3 文件权限 119
6.3 ext3文件系统简介 121
6.3.1 文件系统的类型 121
6.3.2 ext3文件系统 122
6.4 安装和卸载文件系统 123
6.4.1 使用mount命令挂载文件系统 123
6.4.2 使用umount命令卸载文件系统 125
6.4.3 手工编辑/etc/fstab文件 126
6.5 创建一个ext3文件系统 128
6.5.1 使用parted创建磁盘分区 128
6.5.2 使用mkfs格式化分区 131
6.5.3 删除分区 131
6.5.4 重新划分分区大小 132
6.6 转换到ext3文件系统 133
6.7 还原到ext2文件系统 133
6.8 交换文件与交换分区 134
6.8.1 交换文件 134
6.8.2 交换分区 135
6.8.3 关闭交换 135
6.9 本章小结 135
6.10 习题 135
第7章 进程管理 137
7.1 进程概述 137
7.1.1 什么是进程 137
7.1.2 进程间的关系 138
7.1.3 多进程 138
7.2 进程类型 139
7.3 进程控制命令 140
7.3.1 监视进程 140
7.3.2 用户退出后继续运行进程 142
7.3.3 调整优先级 143
7.3.4 终止进程 145
7.4 运行后台进程 147
7.5 本章小结 152
7.6 习题 152
第8章 常用命令介绍 154
8.1 目录及文件操作命令 154
8.1.1 常用的目录操作pwd、cd和Is 154
8.1.2 查找文件find 154
8.2 文件操作命令 158
8.2.1 建立新目录mkdir 158
8.2.2 删除目录rmdir 159
8.2.3 移动文件和目录mv 159
8.2.4 复制文件和目录cp 159
8.2.5 删除文件和目录rm 160
8.2.6 改变文件权限chmod 160
8.2.7 改变文件所有权chown 161
8.2.8 压缩文件gzip 162
8.2.9 文件打包tar 163
8.2.10 查看文件类型file 164
8.3 磁盘操作 165
8.3.1 磁盘文件系统简介 165
8.3.2 安装文件系统mount 166
8.3.3 列出磁盘空间df 167
8.3.4 格式化软盘format 168
8.4 文本编辑 168
8.4.1 显示文件内容cat 168
8.4.2 查看文件前部head 169
8.4.3 观察文件末端tail 170
8.4.4 查找文件内容grep 171
8.4.5 分屏显示文件more和less 172
8.4.6 文本编辑工具vi 173
8.5 帮助命令 174
8.5.1 显示帮助手册man 174
8.5.2 寻找命令所在位置whereis 176
8.5.3 介绍用户命令info 177
8.6 本章小结 178
8.7 习题 178
第9章 常用软件 179
9.1 文档应用软件 179
9.1.1 办公套件 179
9.1.2 文本编辑器 182
9.1.3 PDF阅读器 186
9.2 图形工具 187
9.2.1 图像查看器 187
9.2.2 图像编辑器 189
9.2.3 X Window系统图形软件 189
9.3 音频、视频和娱乐 189
9.4 本章小结 191
9.5 习题 191
第三部分 系统管理 192
第10章 用户管理 192
10.1 什么是用户账户 192
10.2 root账户 193
10.3 管理用户和组群 194
10.3.1 /etc/passwd文件 194
10.3.2 /etc/skel子目录 195
10.3.3 /etc/login.access文件 195
10.3.4 /etc/group文件 196
10.4 命令行配置 196
10.4.1 增加用户 197
10.4.2 添加组 198
10.4.3 改变用户属性 198
10.4.4 删除用户 198
10.4.5 设置口令 198
10.4.6 口令老化 198
10.5 用户管理器配置 200
10.5.1 添加新用户 201
10.5.2 修改用户属性 202
10.5.3 添加新组群 203
10.5.4 修改组群属性 203
10.6 本章小结 204
10.7 习题 204
第11章 系统监控与备份 205
11.1 显示系统进程 205
11.2 显示内存用量 207
11.3 文件系统监控 208
11.3.1 磁盘空间用量 208
11.3.2 监控文件系统 209
11.4 获取硬件信息 210
11.5 查看日志文件 211
11.5.1 定位日志文件 211
11.5.2 浏览日志文件 211
11.5.3 检查日志文件 213
11.6 系统监控参考资料 213
11.7 备份 214
11.7.1 备份策略 214
11.7.2 选择备份介质 215
11.7.3 选择备份工具 215
11.7.4 简单备份 216
11.7.5 压缩备份 217
11.8 使用tar和cpio执行备份 217
11.9 恢复文件 218
11.10 本章小结 218
11.11 习题 219
第12章 软件包管理 220
12.1 RPM软件管理 220
12.1.1 软件包管理器 220
12.1.2 RPM的设计目标 222
12.2 使用RPM 222
12.2.1 安装 224
12.2.2 删除安装 225
12.2.3 升级 225
12.2.4 刷新 226
12.2.5 查询 226
12.2.6 校验 227
12.3 检查软件包的签名 228
12.3.1 导入公钥 228
12.3.2 校验软件包的签名 228
12.4 几个示范 229
12.5 软件包管理工具 230
12.6 Red Hat网络 231
12.7 其他资料 231
12.8 安装tar格式的软件包 231
12.9 本章小结 232
12.10 习题 233
第13章 资源共享 234
13.1 使用Samba共享资源 234
13.1.1 Samba简介 234
13.1.2 配置Samba 236
13.1.3 使用samba工具 239
13.2 图形化网络邻居 242
13.3 Windows模拟程序Wine 242
13.3.1 Wine简介 243
13.3.2 安装Wine 243
13.3.3 使用Wine 244
13.3.4 直接使用Windows软件的Crossover Office 246
13.4 访问Windows分区 246
13.4.1 Explore2fs 247
13.4.2 Captain Nemo 247
13.4.3 Ext2viewer 247
13.4.4 其他的小工具 247
13.5 本章小结 248
13.6 习题 248
第14章 内核升级 249
14.1 2.4版本内核新特点 249
14.2 准备升级 250
14.3 下载升级内核 251
14.4 校验初始RAM磁盘映像 252
14.5 校验引导装载程序 252
14.5.1 GRUB 252
14.5.2 LILO 253
14.6 内核模块 253
14.6.1 内核模块工具 254
14.6.2 其他资料 255
14.7 本章小结 256
14.8 习题 256
第15章 设备管理 257
15.1 设备管理概述 257
15.2 打印机配置 258
15.2.1 添加打印机 259
15.2.2 命令行配置 264
15.2.3 选择打印机型号 266
15.2.4 打印测试页 267
15.2.5 修改现存打印机 267
15.2.6 保存配置文件 269
15.2.7 管理打印作业 270
15.2.8 共享打印机 272
15.2.9 切换打印系统 274
15.2.10 其他资料 274
15.3 声卡、网卡等的安装与检测 275
15.4 本章小结 276
15.5 习题 276
第四部分 网络互联 277
第16章 TCP/IP网络基础 277
16.1 TCP/IP基础 277
16.1.1 TCP/IP网络的分层体系结构 278
16.1.2 TCP/IP应用层协议 279
16.1.3 TCP/IP配置基础 280
16.1.4 路由的概念 285
16.1.5 Telnet 287
16.1.6 常用的命令 287
16.2 建立与Internet的连接 290
16.3 TCP/IP配置文件 292
16.3.1 主机名:/etc/hosts文件 292
16.3.2 网络名:/etc/networks文件 293
16.3.3 主机名:/etc/HOSTNAME文件 293
16.3.4 网络服务:/etc/services文件 293
16.3.5 网络协议:/etc/protocols文件 294
16.4 网络接口配置 294
16.5 常用网络管理命令 296
16.5.1 检测主机连接 296
16.5.2 网络路由选择 297
16.5.3 网络接口信息统计 298
16.6 本章小结 298
16.7 习题 299
第17章 网络应用 300
17.1 使用Mosaic浏览器 300
17.1.1 Mosaic介绍 300
17.1.2 Mozilla的使用 302
17.1.3 Mozilla网页编辑器 303
17.1.4 Galeon 304
17.2 使用Netscape浏览器 305
17.3 使用Lynx浏览器 307
17.3.1 安装Lynx 307
17.3.2 启动Lynx 308
17.4 使用文件管理器浏览 309
17.4.1 K Desktop文件管理器:Konqueror 309
17.4.2 GNOME的浏览器:Nautilus 311
17.5 使用电子邮件 311
17.5.1 邮件服务器:POP、IMAP和SMTP 311
17.5.2 电子邮件客户 313
17.6 电子邮件和新闻客户的客户端 313
17.6.1 Evolution 313
17.6.2 Mozilla Mail 315
17.6.3 Netscape 317
17.6.4 简单文本电子邮件客户:mutt 317
17.6.5 简单文本新闻和电子邮件程序:PINE 319
17.6.6 KDE桌面邮件客户:KMail 320
17.7 FTP简介 320
17.7.1 FTP的发展历史 320
17.7.2 FTP服务器与客户机 321
17.8 FTP客户程序 321
17.8.1 基于Web浏览器的FTP 321
17.8.2 基于桌面文件管理器的FTP 322
17.8.3 GNOME FTP客户 322
17.8.4 基于ftp命令行的客户程序 323
17.9 本章小结 329
17.10 习题 330
第18章 管理网络服务 331
18.1 服务守护进程 331
18.1.1 理解守护进程 331
18.1.2 守护进程的流程 332
18.1.3 常见的守护进程 332
18.2 网络配置文件 335
18.2.1 服务/etc/services 335
18.2.2 使用xinetd 336
18.2.3 主机地址文件hosts 343
18.3 配置FTP服务 344
18.3.1 安装配置FTP服务器 344
18.3.2 FTP服务器配置文件 345
18.4 配置邮件服务器 347
18.4.1 邮件系统简介 347
18.4.2 安装配置sendmail服务器 348
18.4.3 安装POP3服务器 351
18.5 Apache服务器 352
18.5.1 Apache HTTP服务器配置 353
18.5.2 基本设置 354
18.5.3 默认设置 355
18.5.4 虚拟主机设置 360
18.5.5 服务器设置 362
18.5.6 调整性能 363
18.5.7 保存设置 364
18.5.8 其他资料 364
18.6 动态主机配置协议(DHCP) 365
18.6.1 DHCP简介 365
18.6.2 为什么使用DHCP 365
18.7 安装WWW应用服务器 366
18.7.1 安装WWW服务器 366
18.7.2 配置PHP应用服务器 366
18.8 本章小结 367
18.9 习题 367
第19章 远程系统管理 368
19.1 使用Telnet 368
19.1.1 使用Telnet客户端 369
19.1.2 使用Telnet服务器 370
19.2 安全的SSH 371
19.2.1 SSH简介 371
19.2.2 配置OpenSSH服务器 372
19.2.3 使用OpenSSH客户端 373
19.2.4 使用Windows的SSH客户端 378
19.3 使用图形化的VNC 380
19.3.1 VNC概述 380
19.3.2 使用VNC服务器 381
19.3.3 VNC客户端 383
19.4 更加安全地使用VNC 385
19.5 本章小结 385
19.6 习题 386
第五部分 基本编程 387
第20章 Linux基本编程 387
20.1 GNU计划的实用程序 387
20.2 编程环境 391
20.3 GCC的介绍 391
20.3.1 GCC简介 391
20.3.2 GCC的执行过程 392
20.3.3 GCC的基本用法和选项 392
20.3.4 GCC的错误类型及对策 394
20.4 GNUmake的介绍 395
20.4.1 多文件项目 395
20.4.2 GNU make工具 397
20.5 调试工具:gdb 402
20.5.1 启动gdb 402
20.5.2 gdb的功能 402
20.5.3 gdb基本命令 403
20.6 Linux C程序的框架 403
20.6.1 关于程序的存放目录 404
20.6.2 头文件 404
20.6.3 函数库 404
20.6.4 静态函数库 405
20.6.5 共享函数库 407
20.7 创建、编译和执行第一个程序 407
20.7.1 创建一个简单的C程序 408
20.7.2 建立大型的应用程序 410
20.8 本章小结 410
20.9 习题 411
第21章 shell编程 412
21.1 shell编程的意义 412
21.2 创建和执行shell程序 413
21.2.1 创建第一个shell程序 413
21.2.2 执行第一个shell程序 413
21.3 shell变量 414
21.3.1 给变量赋值 415
21.3.2 访问变量值 415
21.3.3 输出变量 415
21.4 shell参数 416
21.4.1 Linux的参数 416
21.4.2 变量表达式 418
21.5 控制结构语句 424
21.6 条件语句 427
21.7 其他命令 429
21.8 常见错误解析 430
21.8.1 有关变量 430
21.8.2 有关表达式 431
21.8.3 重复与循环 431
21.8.4 其他 432
21.9 本章小结 432
21.10 习题 432
附录A DOS和shell常用命令对比 434
附录B Red Hat Linux 9.0实用程序 436
附录C 快捷键操作 437