前言
第一部分 Red Hat Linux——安装和用户服务
第1章 Red Hat Linux 简介
1.1 Linux的优点
1.2 Red Hat Linux的魔力
1.3 Red Hat Linux与其他的Linux发布版的比较
1.4 Red Hat和Linux内核有哪些新的特征
1.5 版权和保证
1.6 在哪里可以获取Red Hat Linux
1.7 系统需求
1.8 小结
第2章 Red Hat系统的安装
2.1 安装Linux前的准备
2.2 选择安装方法
2.3 GUI 和基于文本安装的比较
2.4 分区
2.4.1 使用fdisk分区
2.4.2 使用Disk Druid分区
2.4.3 理解交换空间
2.4.4 格式化分区
2.5 创建启动盘
2.6 启动网络安装
2.6.1 启动NFS安装
2.6.2 启动FTP安装
2.6.3 启动HTTP安装
2.7 PCMCIA和外部问题
2.8 一步步地安装
2.8.1 开始安装
2.8.2 安装程序
2.8.3 系统安装器
2.8.4 配置LILO
2.8.5 网络配置
2.8.6 设置时区
2.8.7 设置超级用户口令和用户帐号
2.8.8 创建启动盘
2.8.9 完成安装
2.9 安装完成后的配置
2.9.1 Red Hat软件包管理程序
2.9.2 使用RPM安装和删除软件包
2.10 登录和退出
2.11 小结
第3章 LILO和其他引导管理器
3.1 选择并安装一个引导管理器
3.2 安装与配置LILO
3.2.1 安装或重新配置LILO
3.2.2 配置LILO
3.3 如何卸载LILO
3.4 LILO故障排除
3.5 使用LOADLIN.EXE引导Linux
3.6 安装并使用BootMagic
3.7 小结
第4章 配置X Window系统,版本11
4.1 什么是X11
4.2 XFree86 或其他的X11
4.3 XFree86 4.0.1的新特点
4.4 选择配置工具
4.4.1 XF86Config文件
4.4.2 使用XFree86服务器
4.4.3 使用Xconfigurator
4.4.4 使用xf86cfg命令
4.4.5 使用xf86config命令
4.5 检查XF86Config文件
4.5.1 XF86Config ServerLayout部分
4.5.2 XF86Config Files部分
4.5.3 XF86Config Module部分
4.5.4 XF86Config ServerFlags部分
4.5.5 XF86Config InputDevice部分
4.5.6 XF86Config Monitor部分
4.5.7 XF86Config Device部分
4.5.8 XF86Config Screen部分
4.6 使用startx命令来运行X11
4.6.1 使用控制台和多个X会话
4.6.2 .xinitrc文件
4.7 使用xdm
4.8 XFree86故障排除
4.9 小结
第5章 窗口管理器
5.1 什么是窗口管理器
5.2 GNOME X环境
5.2.1 什么是GNOME
5.2.2 GNOME安装组件
5.2.3 使用GNOME或者其他显示管理器配置X11
5.2.4 使用GNOME客户程序和工具
5.2.5 使用GNOME Control Center 配置桌面
5.2.6 GNOME面板配置
5.3 sawfish窗口管理器特性
5.4 Enlightenment窗口管理器特性
5.5 K桌面环境特性
5.5.1 KDE安装组件
5.5.2 使用kdm登录
5.5.3 KDE桌面特性
5.5.4 执行基本的桌面动作
5.5.5 使用桌面面板
5.5.6 使用KDE的konqueror或者K文件管理器
5.6 使用KDE Control Center配置KDE
5.6.1 使用显示管理器选项
5.6.2 更改桌面墙纸
5.6.3 更改屏幕保护程序
5.6.4 更改键盘和鼠标设置
5.6.5 更改窗口行为
5.6.6 使用键盘控制光标
5.6.7 控制KDE桌面边界
5.7 fvwm2窗口管理器
5.8 twm窗口管理器
5.9 小结
第6章 连接到Internet上
6.1 安装虚拟接口
6.2 PPP
6.2.1 安装PPP
6.2.2 安装PPP使用帐户
6.2.3 安装chat
6.2.4 配置pppd
6.2.5 chat和pppd的结合
6.2.6 使用PPP脚本来安装PPP
6.2.7 用Red Hat的Dialup配置工具安装PPP
6.2.8 使用kppp客户安装PPP
6.2.9 使用wvdial命令安装PPP
6.3 安装DSL PPPOE连接
6.4 安装SLIP
6.5 安装拨号上网PPP服务器
6.6 小结
第7章 IRC、ICQ和chat客户程序
7.1 talk客户程序和服务器程序
7.1.1 安装和配置talk
7.1.2 与talk连接
7.1.3 通过talk聊天
7.1.4 控制对你的终端的访问
7.1.5 使用talk与多个用户谈话
7.2 IRC——在线聊天系统
7.2.1 使用非GUIIRC客户程序——ircII
7.2.2 xchat
7.2.3 运行IRC服务器
7.3 实时通信
7.3.1 ICQ
7.3.2 Licq
7.4 小结
第8章 使用多媒体和图形客户程序
8.1 Linux图形实用工具
8.2 常见的图形格式
8.3 基本的图形编辑客户程序
8.3.1 X11图形客户程序
8.3.2 用import命令获取屏幕
8.3.3 启用GNOME的图形客户程序
8.3.4 KDE图形客户程序
8.4 使用GIMP
8.5 显示和打印图像
8.6 配置声音
8.7 播放音频CD
8.8 播放mp3文件
8.9 播放视频
8.10 使用Web Cam
8.11 小结
第二部分 配置服务
第9章 系统的启动和关闭
9.1 引导进程
9.2 初始化进程和启动脚本
9.2.1 init和/etc/inittab
9.2.2 /etc/inittab和系统状态
9.3 linuxconf与管理服务
9.4 关闭Linux系统
9.4.1 shutdown
9.4.2 halt与reboot
9.5 当系统崩溃时
9.5.1 以root身份运行
9.5.2 创建引导盘
9.5.3 误删除文档
9.5.4 文件工具箱
9.5.5 当系统不能引导时,Red Hat会来救援
9.5.6 获取更多的信息
9.6 小结
第10章 SMTP和协议
10.1 Internet电子邮件标准的历史简述
10.1.1 sendmail介绍
10.1.2 邮局协议
10.1.3 网际邮件访问协议
10.2 SMTP和sendmail
10.2.1 网际邮件协议
10.2.2 域名系统和电子邮件
10.2.3 sendmail的工作
10.2.4 sendmail的辅助文件
10.2.5 别名文件
10.2.6 设置sendmail
10.2.7 sendmail.cf:配置文件
10.2.8 自动生成sendmail.cf文件
10.2.9 还有更加简单的方法
10.2.10 测试sendmail和sendmail.cf
10.2.11 常见的sendmail配置错误
10.3 POP
10.3.1 配置POP服务器
10.3.2 配置ipop3d
10.3.3 APOP如何工作
10.3.4 设置APOP验证
10.4 IMAP
10.5 邮件获取
10.5.1 为获取POP3或者IMAP邮件配置Netscape
10.5.2 fetchmail
10.5.3 为获取POP3或者IMAP邮件配置fetchmail
10.6 小结
第11章 FTP
11.1 获取和安装FTP服务器程序
11.2 FTP服务器的工作方式
11.3 配置FTP服务器
11.3.1 控制访问权—/etc/ftpaccess文件
11.3.2 在传输时转换文件—/etc/ftpcon-versions文件
11.3.3 配置主机的访问权——/etc/ftphosts文件
11.3.4 FTP的日志文件——/var/log/xferlog
11.4 FTP管理工具
11.4.1 ftprestart
11.4.2 ftpshut
11.4.3 ftpwho
11.4.4 ftpcount
11.5 使用FTP客户程序
11.5.1 使用wget命令获取文件
11.5.2 autoexpect
11.5.3 ncftp
11.5.4 xtp
11.5.5 gftp
11.5.6 使用kfm命令
11.6 小结
第12章 Apache服务器
12.1 服务器安装
12.1.1 从RPM安装
12.1.2 自己构造源代码
12.2 运行时服务器配置的设置
12.2.1 编辑httpd.conf文件
12.2.2 .htaccess文件
12.3 验证和访问控制
12.3.1 使用allow和deny的访问限制
12.3.2 验证
12.3.3 关于访问控制的最后说明
12.4 Apache模块
12.5 虚拟主机
12.5.1 基于地址的虚拟主机
12.5.2 基于名字的虚拟主机
12.6 日志记录
12.7 动态内容
12.7.1 CGI
12.7.2 SSI
12.7.3 基本的SSI指令
12.7.4 流控制
12.7.5 PHP
12.8 启动和停止服务器
12.8.1 手动启动服务器
12.8.2 /etc/rc.dhttpd脚本
12.9 配置文件清单
12.10 小结
第13章 Internet新闻
13.1 Linux与新闻组
13.1.1 新闻供给点如何工作
13.1.2 推/拉新闻
13.1.3 下载新闻组的替代方法
13.2 INN的硬件与软件要求
13.3 INN介绍
13.3.1 安装INN
13.3.2 INN启动文件
13.3.3 配置INN
13.4 Leafnode+介绍
13.4.1 Leafnode+如何工作
13.4.2 下载和配置Leafnode+
13.5 trn介绍
13.6 小结
第14章 域名服务和动态主机配置协议
14.1 Internet历史简述
14.1.1 hosts.txt文件
14.1.2 /etc/hosts文件
14.1.3 BIND 8
14.2 本章例子的说明
14.3 重要的DNS事实和概念
14.3.1 DNS客户和服务器截然不同
14.3.2 DNS术语
14.3.3 DNS将名字映射到IP地址及反序操作
14.3.4 前区和反区必须保持同步
14.3.5 HUP信号和重启
14.3.6 in-addr.arpa域
14.3.7 主机命名方案
14.3.8 配置DNS客户:/etc/resolv.conf
14.3.9 DNS软件
14.4 DNS服务器配置文件
14.4.1 DNS引导文件:/etc/named.conf
14.4.2 DNS区数据文件
14.5 使用linuxconf配置resolv.conf
14.6 普通的缓存DNS
14.6.1 测试缓存DNS
14.6.2 缓存服务器小结
14.7 配置DNS服务器主区
14.7.1 添加本地域解析
14.7.2 添加虚拟域解析
14.8 授权委托
14.8.1 在Sylvia上添加subdomain.domain.cxm的授权
14.8.2 测试subdomain.domain.cxm本地解析
14.8.3 从mainserv委托子域给sylvia
14.8.4 测试subdomain.domain.cxm委托
14.9 添加从DNS服务器
14.9.1 在mydesk添加从区
14.9.2 在mainserv添加从域名服务器
14.10 解决DNS问题
14.10.1 使用脚本对DNS设置进行耐压测试
14.10.2 使用转储和日志进行调试
14.10.3 使用dnswalk检查DNS配置
14.11 DNS资源
14.12 使用DHCP自动配置客户
14.12.1 配置DHCP服务器
14.12.2 配置基于Linux的DHCP客户
14.12.3 配置基于Windows的DHCP客户
14.13 小结
第15章 NIS:网络信息服务
15.1 了解NIS
15.1.1 NIS域
15.1.2 不同的服务器
15.2 安装软件
15.3 配置主NIS服务器
15.4 配置NIS客户
15.4.1 使用linuxconf配置NIS客户
15.4.2 手工配置NIS客户
15.4.3 测试客户
15.5 配置从NIS服务器
15.6 在/etc/passwd文件中使用NISisms
15.7 使用网络组
15.8 解决问题的一些技巧
15.9 小结
第16章 NFS:网络文件系统
16.1 NFS安装
16.2 启动和停止NFS守护进程
16.3 配置NFS服务器和客户
16.3.1 设置/etc/exports文件
16.3.2 使用mount加载一个导出的文件系统
16.3.3 卸载文件系统
16.3.4 配置/etc/fstab文件以自动加载文件系统
16.4 使用linuxconf导出文件系统
16.5 完整的样本配置文件
16.6 小结
第17章 Samba
17.1 安装Samba
17.2 实现一个简单的Samba设置
17.2.1 使用Linux客户进行测试
17.2.2 使用Windows客户进行测试
17.3 配置Samba
17.3.1 [global]段
17.3.2 [homes]段
17.3.3 [printers]段
17.4 使用linuxconf配置Samba文件服务器
17.5 共享文件和打印服务
17.6 优化Samba性能
17.7 测试配置
17.8 运行Samba服务器
17.9 访问共享
17.9.1 在Linux客户上使用smbclient
17.9.2 在Linux客户上加载共享
17.10 常用的smb.conf配置选项
17.11 Samba资源
17.11.1 Samba应用程序文档资料
17.11.2 配置选项文档
17.11.3 其他文档
17.12 使用Samba作为登录服务器
17.12.1 基本的Windows 9x登录验证
17.12.2 启用服务器上的登录脚本
17.13 Samba问题解决技巧
17.13.1 尽早和经常使用testparm
17.13.2 使用DIAGNOSIS.txt
17.13.3 了解访问层次
17.13.4 检查日志文件
17.13.5 使用SWAT缩短smb.conf文件
17.13.6 产生一个绝无错误的浏览器smb.conf文件
17.13.7 保持清醒的头脑
17.14 Samba安全
17.14.1 SWAT防范措施
17.14.2 特殊参数的考虑
17.14.3 冰山的一角
17.15 使用SWAT配置基于Web的Samba
17.15.1 在服务器上激活SWAT
17.15.2 在浏览器上使用SWAT配置smb.conf
17.16 使用Samba作为Linux迁移工具
17.16.1 创建数据目录共享
17.16.2 早期的转换
17.16.3 从文本文件中去掉讨厌的回车符
17.16.4 迁移的最后阶段
17.17 小结
第三部分 系统管理
第18章 Linux文件系统、磁盘和其他设备
18.1 设备的基本概念
18.1.1 字符设备
18.1.2 块设备
18.2 文件系统
18.3 mount命令
18.4 使用User Mount Tool安装文件系统
18.5 设置文件系统
18.6 创建新的文件系统
18.7 使用fsconf和linuxconf在图形界面中创建和编辑文件系统
18.8 修复文件系统
18.9 各种硬件
18.9.1 硬盘
18.9.2 软盘驱动程序
18.9.3 CD-ROM驱动器
18.9.4 RAID
18.9.5 回送设备
18.9.6 其他块设备
18.9.7 USB设备
18.10 字符设备
18.10.1 并行端口
18.10.2 磁带驱动器
18.10.3 终端
18.10.4 串行通信
18.10.5 公用的SCSI设备
18.10.6 CD-ROM刻录机
18.10.7 测试CD映像
18.10.8 其他字符设备
18.11 小结
第19章 利用Linux进行打印
19.1 打印机设备
19.2 在Linux中应该使用什么样的打印机
19.3 如何打印
19.4 printtool-Red Hat Linux打印系统管理器
19.4.1 远程Linux打印机
19.4.2 本地打印机
19.4.3 定制RHS打印机过滤器
19.5 Linux的打印命令
19.6 其他有用的打印机程序和过滤器
19.6.1 Apsfilter
19.6.2 magicfilter
19.6.3 LPRMagic
19.6.4 HPTools
19.6.5 PostScript打印机
19.7 对红外线打印机的支持
19.8 其他的有用程序
19.8.1 pbm工具
19.8.2 gv
19.9 排错和获取更详细的信息
19.10 小结
第20章 TCP/IP网络管理
20.1 TCP/IP基础
20.1.1 IP地址
20.1.2 拆分网络
20.1.3 TCP/IP协议集
20.1.4 端口
20.1.5 套接字
20.2 网络配置
20.2.1 配置文件
20.2.2 配置程序
20.3 网络守护进程
20.3.1 独立的TCP/IP守护进程
20.3.2 网络服务控制
20.4 TCP/IP排除故障的工具
20.4.1 ping
20.4.2 traceroute
20.4.3 tcpdump
20.5 网络安全工具
20.5.1 防火墙
20.5.2 安全过程访问——SSH,安全的Shell
20.6 小结
第21章 Linux系统管理
21.1 以root权限工作
21.2 进行系统维护
21.2.1 规划处理过程
21.2.2 制定还原方案
21.2.3 小幅度地进行修改
21.2.4 制定测试方案
21.2.5 及时有效地与用户进行通信
21.3 使用PRM管理软件
21.3.1 安装
21.3.2 卸载
21.3.3 升级
21.3.4 查询
21.4 使用Gnome-RPM
21.5 使用linuxconf管理用户和组
21.5.1 建立并修改用户
21.5.2 使用linuxconf管理组
21.6 利用命令行方式管理用户和组
21.6.1 增加用户
21.6.2 更改用户口令
21.6.3 删除用户
21.6.4 利用命令行方式管理组
21.7 使用linuxconf设置磁盘空间配额
21.8 使用linuxconf创建特定的账号
21.9 性能分析
21.9.1 使用vmstat确定CPU的使用情况
21.9.2 使用top识别问题
21.9.3 使用free显示可利用的内存
21.9.4 使用renice改变进程优先级
21.10 理解你的安全职责
21.10.1 选择好的口令
21.10.2 了解新的安全问题
21.11 获取帮助
21.11.1 使用手册页
21.11.2 访问Red Hat的邮件列表和讨论组
21.11.3 访问其他讨论组和Web页面
21.12 小结
第22章 备份和恢复
22.1 对成功备份的考虑
22.2 优良备份的品质
22.3 选择备份介质
22.4 选择备份工具
22.5 备份策略和操作
22.5.1 利用tar和cpio执行备份
22.5.2 使用taper脚本进行备份
22.6 恢复文件
22.7 了解存档中的内容
22.8 小结
第23章 系统安全性
23.1 安全性审核
23.1.1 安全性计划
23.1.2 安全性工具
23.1.3 知识的搜集
23.2 危险,威尔·罗宾逊,危险
23.2.1 以防万一
23.2.2 suid和sgid
23.3 文件和目录权限
23.3.1 文件
23.3.2 目录
23.3.3 如何把suid和sgid置于权限字段
23.3.4 文件或目录的默认模式
23.4 再论口令
23.5 相关的WWW站点
23.6 小结
第四部分 Red Hat开发和生产
第24章 Linux C/C++编程工具
24.1 C语言的背景
24.2 C++语言的元素
24.2.1 使用C++编程:基本概念
24.2.2 文件命名
24.3 项目管理工具
24.3.1 使用make来构建程序
24.3.2 建立大型的应用程序
24.3.3 使用RCS和CVS来管理软件项目
24.3.4 调试工具
24.4 GNU C/C++编译器的命令行选项
24.5 GNU egcs编译系统的新特征
24.6 辅助资料
24.7 小结
第25章 Shell脚本编程
25.1 创建和执行shell程序
25.2 变量
25.2.1 给变量赋值
25.2.2 访问变量值
25.3 位置参数
25.4 内置变量
25.5 特殊字符
25.5.1 双引号
25.5.2 单引号
25.5.3 反斜杠
25.5.4 反引号
25.6 表达式的比较
25.6.1 pdksh和bash
25.6.2 tcsh
25.7 循环语句
25.7.1 for语句
25.7.2 while语句
25.7.3 until语句
25.7.4 repeat语句
25.7.5 select语句
25.7.6 shift语句
25.8 条件语句
25.8.1 if语句
25.8.2 case语句
25.9 其他语句
25.9.1 break语句
25.9.2 exit语句
25.10 函数
25.11 小结
第26章 任务的自动化
26.1 第一个例子——自动化数据输入
26.1.1 问题和解决方法
26.1.2 脚本的分析
26.2 提高自动化技术的方法
26.2.1 继续学习
26.2.2 精心策划
26.3 shell脚本
26.3.1 使用chstr改变文件中的字符串
26.3.2 WWW检索
26.3.3 有关shell编程的结论
26.4 用cron和at调度作业
26.4.1 cron和find——探测磁盘的使用情况
26.4.2 at:调度未来的事件
26.5 其他的机制:expect、Perl等等
26.5.1 expect
26.5.2 Perl
26.5.3 其他工具
26.5.4 内部脚本
26.6 自动化的意义
26.7 小结
第27章 配置和构建内核
27.1 Linux内核介绍
27.2 理解内核
27.3 理解内核源代码结构
27.4 获取内核心源代码
27.4.1 检查新内核的复制
27.4.2 修补源代码树
27.4.3 升级和模块
27.4.4 内核2.4中的新特性
27.4.5 Linux2.5中将有的特性
27.5 配置Linux内核
27.5.1 为内核更新而准备lilo.conf
27.5.2 用make进行配置
27.5.3 选择配置选项
27.5.4 CML2:下一代配置工具
27.6 构建和安装内核
27.6.1 构建内核
27.6.2 新内核的故障排除
27.7 从发生故障的内核恢复
27.7.1 重复的重启
27.7.2 不完全的LILO提示符
27.7.3 装载时内核终止
27.7.4 内核panic
27.7.5 内核oops和错误报告
27.8 小结
第28章 模拟器、工具和Windows客户程序
28.1 模拟器
28.1.1 使用DOSEMU模拟DOS系统
28.1.2 使用Wine运行Windows客户程序
28.1.3 使用Executor模拟Apple Macintosh
28.1.4 支持Linux和Windows的VMware
28.2 mtools软件包
28.3 窗口化的网络客户程序
28.3.1 构造并安装vnc软件
28.3.2 启用虚拟网络服务
28.3.3 查看远程桌面
28.4 小结
第五部分 附录
附录A Linux文档计划
附录B 常用Linux命令和实用程序
附录C GNU通用公共许可协议
附录D Red Hat Linux RPM软件包列表
附录E 附带光盘的内容