第一部分 Linux使用基础 2
第1章 Linux概述 2
1.1 初识Linux 2
1.1.1 什么是Linux 2
1.1.2 Linux的特性 3
1.1.3 Linux与其他操作系统的区别 4
1.1.4 GNU、GPL和LGPL 5
1.1.5 Linux的主要版本 6
1.2 Linux纵览 8
1.3 Linux的安装 9
1.3.1 安装前的准备 9
1.3.2 引导安装程序 9
1.3.3 收集安装信息 11
1.3.4 正式安装 15
1.4 启动与关闭Linux 16
1.4.1 首次启动 16
1.4.2 登录 18
1.4.3 注销 20
1.4.4 关闭 21
1.5 本章小结 21
习题 22
第2章 shell及常用命令 23
2.1 Linux终端使用基础 23
2.1.1 什么是Linux终端 23
2.1.2 shell的基本形式 23
2.2 文件与目录的基本概念 25
2.2.1 文件与文件类型 25
2.2.2 目录 26
2.2.3 工作目录、用户主目录与路径 27
2.3 目录和文件的基本操作 28
2.3.1 显示文件命令 28
2.3.2 复制、删除和移动命令 29
2.3.3 创建和删除目录命令 30
2.3.4 切换工作目录和显示目录命令 31
2.3.5 查找与定位命令 32
2.3.6 链接命令ln 34
2.3.7 创建文件、改变文件或目录时间的命令touch 34
2.3.8 文件比较与排序命令 35
2.4 备份与压缩命令 36
2.4.1 备份命令tar 36
2.4.2 压缩和解压命令gzip 37
2.4.3 解压命令unzip 38
2.5 其他常用命令 38
2.5.1 显示文字命令echo 38
2.5.2 显示日历命令cal 39
2.5.3 日期时间命令date 39
2.5.4 清除屏幕命令clear 41
2.5.5 软件包管理命令rpm 41
2.6 联机帮助命令 42
2.6.1 man 42
2.6.2 info 42
2.6.3 help 42
2.7 本章小结 42
习题 43
第3章 文本编辑器vi的使用 44
3.1 vi简介 44
3.2 vi的进入与退出 45
3.2.1 进入vi 45
3.2.2 保存文件和退出vi 46
3.2.3 浏览文件 46
3.3 vi的编辑操作命令 46
3.3.1 vi中的行号 46
3.3.2 vi中的字、句子和段 47
3.3.3 光标移动操作 47
3.3.4 屏幕滚动 48
3.3.5 命令模式下的文本编辑 49
3.3.6 插入模式下的文本编辑 52
3.3.7 重复与取消命令 53
3.4 vim对vi的改进 53
3.5 本章小结 53
习题 54
第4章 X Window系统的使用 55
4.1 Fedora下的X Window系统 55
4.1.1 X Window系统的组成与特点 55
4.1.2 GNOME简介 56
4.1.3 KDE简介 56
4.1.4 GNOME/KDE提供的软件 56
4.1.5 窗口管理器 57
4.2 GNOME桌面环境 58
4.2.1 GNOME登录界面 58
4.2.2 GNOME桌面 59
4.2.3 GNOME面板 59
4.2.4 GNOME的窗口管理器 65
4.2.5 GNOME的文件浏览器 65
4.2.6 系统管理与设置 70
4.3 本章小结 72
习题 72
第5章 Linux系统的常用软件 73
5.1 办公软件 73
5.1.1 办公套件OpenOffice.org 73
5.1.2 Writer组件 74
5.1.3 Calc组件 76
5.1.4 Impress组件 78
5.2 网络应用软件 80
5.2.1 浏览器Firefox 80
5.2.2 电子邮件客户端软件Evolution 82
5.2.3 即时通信程序QQ 83
5.2.4 网络电话程序Skype 84
5.3 多媒体应用软件 85
5.3.1 音乐播放器Rhythmbox 86
5.3.2 电影播放器Totem与RealPlayer 87
5.4 工具软件 88
5.4.1 GNU图像处理程序 88
5.4.2 文本编辑器 89
5.5 本章小结 90
习题 90
第二部分 Linux的系统管理 92
第6章 硬件管理 92
6.1 存储设备的挂载与卸载 92
6.1.1 确定挂载信息 92
6.1.2 挂载命令mount 93
6.1.3 挂载设备的过程 93
6.1.4 卸载设备 94
6.1.5 配置挂载 95
6.1.6 图形化挂载工具 96
6.1.7 磁盘格式化 96
6.2 声卡 97
6.2.1 安装ALSA声卡驱动程序 97
6.2.2 安装OSS声卡驱动程序 98
6.2.3 检测声卡 98
6.3 显卡 100
6.4 打印机 101
6.4.1 获取打印机驱动程序 101
6.4.2 安装驱动程序 101
6.4.3 配置打印机 103
6.4.4 测试打印机 105
6.5 本章小结 106
习题 106
第7章 网络的基本配置 107
7.1 网络接口配置工具 107
7.1.1 使用文本模式配置工具 107
7.1.2 使用图形配置工具 108
7.1.3 使用终端命令ifconfig 111
7.2 网络接口的启动与禁止 112
7.3 网络接口的查看 112
7.4 常用网络命令 113
7.4.1 网络测试命令 113
7.4.2 远程登录命令 116
7.5 网络相关配置文件 118
7.5.1 网络配置文件 118
7.5.2 网络接口配置文件 118
7.5.3 域名解析控制文件 118
7.5.4 域名解析交换配置文件 119
7.5.5 主机名列表文件 119
7.5.6 域名服务器设置文件 120
7.5.7 协议定义文件 120
7.5.8 网络服务列表文件 120
7.6 本章小结 121
习题 121
第8章 常用网络服务的使用与配置 122
8.1 网络服务管理工具 122
8.1.1 图形界面的管理工具 122
8.1.2 文本界面的管理工具 123
8.1.3 命令行界面的管理工具 123
8.1.4 xinetd 124
8.2 Apache服务器 125
8.2.1 Apache服务器简介 125
8.2.2 安装 126
8.2.3 启动与关闭 127
8.2.4 配置 127
8.2.5 应用实例 129
8.3 vsFTPd服务器 131
8.3.1 简介 131
8.3.2 安装 132
8.3.3 启动与关闭 132
8.3.4 配置 132
8.3.5 FTP客户端 133
8.3.6 应用实例 134
8.4 Samba服务器 135
8.4.1 简介 135
8.4.2 安装 136
8.4.3 启动与关闭 136
8.4.4 配置 136
8.4.5 应用实例 139
8.5 DNS服务器 142
8.5.1 简介 142
8.5.2 安装Bind 143
8.5.3 启动与关闭 144
8.5.4 使用system-config-bind配置DNS 144
8.5.5 使用配置文件配置DNS 147
8.6 本章小结 151
习题 152
第9章 系统管理与监视 153
9.1 用户管理 153
9.1.1 账号与配置文件 153
9.1.2 用户管理 155
9.1.3 账号管理和查看命令 159
9.1.4 文件权限管理 161
9.2 进程管理 163
9.2.1 进程的概念 163
9.2.2 启动进程 163
9.2.3 进程管理命令 167
9.3 系统监视 168
9.3.1 系统监控命令top 168
9.3.2 内存查看命令free 168
9.3.3 磁盘空间用量查看命令df 169
9.3.4 系统监视器 169
9.4 日志查看 171
9.4.1 日志文件 171
9.4.2 查看日志 172
9.5 本章小结 173
习题 173
第10章 Linux系统的安全管理 174
10.1 Linux系统的安全设置 174
10.1.1 系统安全设置 174
10.1.2 账号安全设置 175
10.1.3 网络服务安全设置 176
10.2 SELinux 177
10.2.1 SELinux简介 177
10.2.2 SELinux的基本概念 178
10.2.3 SELinux的控制 180
10.2.4 SELinux的策略管理 182
10.2.5 SELinux的监视 192
10.2.6 SELinux与原访问控制机制的关系 193
10.3 本章小结 194
习题 194
第三部分 Linux平台上的程序设计第11章 shell程序设计 196
11.1 使用shell 196
11.2 bash程序设计 197
11.2.1 bash程序的一般格式 197
11.2.2 变量的声明和使用 198
11.2.3 条件判断 201
11.2.4 控制结构 203
11.2.5 函数 207
11.3 shell程序实例 209
11.3.1 Linux实例程序 209
11.3.2 文件备份脚本示例 209
11.4 本章小结 211
习题 211
第12章 GCC的使用与开发 212
12.1 GCC简介 212
12.2 GCC的使用 212
12.3 利用GCC开发C语言程序 215
12.3.1 简单的C语言程序 215
12.3.2 多个文件的C程序 216
12.3.3 使用makefile生成程序 217
12.4 调试 218
12.4.1 静态调试 218
12.4.2 动态调试 220
12.5 本章小结 222
习题 222
第13章 GTK+图形界面程序设计 223
13.1 X Window编程简介 223
13.2 GTK+程序设计简介 223
13.3 用GTK+开发图形界面程序 224
13.3.1 基本的GTK+程序 224
13.3.2 编译GTK+源程序 227
13.3.3 应用容器的GTK+程序 227
13.4 本章小结 233
习题 233
第14章 Qt图形界面程序设计 234
14.1 Qt程序设计简介 234
14.2 开发Qt图形界面程序 234
14.2.1 简单Qt图形程序 235
14.2.2 Qt程序的编译 236
14.2.3 关联消息的图形程序 237
14.3 本章小结 243
习题 243
第15章 集成开发环境KDevelop的使用 244
15.1 KDevelop简介 244
15.2 KDevelop的使用 244
15.2.1 启动KDevelop 245
15.2.2 创建工程 246
15.2.3 编辑工程 248
15.2.4 编译生成工程 250
15.3 本章小结 252
习题 252
附录 Linux终端命令 253