理论部分 3
第1章 Linux简介与安装 3
1.1 Linux概述 3
1.2 Linux的起源及特点 4
1.2.1 Linux起源 4
1.2.2 Linux的特点及主要优势 4
1.3 Linux的版本发展 6
1.3.1 Linux内核版本 6
1.3.2 Linux发行版本 7
1.4 安装Linux 8
1.4.1 硬件需求 8
1.4.2 安装方式 8
1.4.3 安装过程 9
1.5 登录Linux 18
1.6 退出Linux 19
习题 19
第2章 文件系统和目录管理 21
2.1 文件系统的概念 21
2.1.1 Linux常用文件系统介绍 21
2.1.2 Linux文件介绍 22
2.2 Linux文件系统的组织方式 22
2.2.1 文件路径 24
2.2.2 Linux系统的默认安装目录 24
2.3 管理目录的常用命令 26
2.3.1 改变工作目录:cd 26
2.3.2 显示路径:pwd 26
2.3.3 显示目录内容命令:ls 26
2.3.4 目录的创建命令:mkdir 27
2.3.5 目录的删除命令:rmdir 27
2.4 Linux文件的类型 27
2.5 文件和目录的权限 28
2.5.1 权限的常规表示 29
2.5.2 使用chmod改变文件/目录的访问权限 30
2.5.3 使用命令chown更改文件/目录的所有权 32
2.6 管理磁盘存储器 32
2.6.1 存储设备的命名 32
2.6.2 磁盘空间管理 33
2.6.3 添加新硬盘 35
2.7 磁盘管理的常见问题 36
2.7.1 修复受损文件 36
2.7.2 无法引导文件系统 36
习题 38
第3章 文件和用户管理 39
3.1 文件管理的常用命令 39
3.1.1 显示文件内容命令:cat、more、less、head、tail 39
3.1.2 文件的复制、移动和删除命令:cp、mv、rm 43
3.1.3 文件查找命令:find 44
3.1.4 文件内容查询命令:grep 46
3.1.5 修改文件或目录所属的用户组命令:chgrp 47
3.1.6 改变文件的时间戳命令:touch 47
3.2 用户和组管理 48
3.2.1 添加新用户 48
3.2.2 修改密码 51
3.2.3 修改用户 53
3.2.4 删除用户命令:userdel 53
3.2.5 解析/etc/passwd文件 54
3.2.6 解析/etc/shadow文件 57
3.2.7 用户的临时禁用 59
3.2.8 使用su命令切换为root 59
3.2.9 添加新用户组 59
3.2.10 修改用户组 62
3.2.11 删除用户组 62
3.2.12 解析/etc/group文件 63
习题 64
第4章 常见的系统设置 65
4.1 用户界面 65
4.1.1 KDE桌面系统组成 65
4.1.2 GNOME桌面系统 66
4.1.3 设置文件浏览界面 67
4.1.4 控制中心 69
4.2 VI编辑器 71
4.3 正则表达式的元字符集 74
4.4 Linux启动过程 75
4.4.1 启动引导程序 75
4.4.2 使用GRUB引导系统 76
4.5 系统启动过程与运行级别 78
4.5.1 启动过程 78
4.5.2 运行级别 79
4.5.3 系统初始化过程 81
4.6 Linux与DOS常用命令比较 83
习题 84
第5章 软件包管理 85
5.1 RPM包管理 85
5.1.1 RPM软件包查询 85
5.1.2 RPM软件包的安装 87
5.1.3 RPM软件包安装可能出现的问题 88
5.1.4 RPM软件包的卸载 89
5.1.5 RPM软件包的升级 89
5.1.6 Red Hat Linux 9的添加/删除程序 89
5.2 Linux的备份与压缩策略 91
5.3 打包程序tar 92
5.3.1 打包和解包的常规操作 92
5.3.2 查看tar包中的内容 93
5.3.3 打包链接文件 93
5.3.4 向包中添加新文件 94
5.3.5 生成.tar.gz压缩包 94
5.4 软件的其他获得方式 95
5.4.1 gftp 95
5.4.2 wget 95
习题 96
第6章 基于Samba的文件服务 97
6.1 常见的网络命令 97
6.1.1 hostname命令 97
6.1.2 ifconfig命令 97
6.1.3 ifup命令 100
6.1.4 ifdown命令 100
6.1.5 route命令 101
6.1.6 ping命令 102
6.1.7 traceroute命令 104
6.1.8 利用常用命令分析局域网连通故障 104
6.2 Samba服务器配置 105
6.2.1 Samba的工作原理 105
6.2.2 Samba服务器的功能 105
6.2.3 SMB协议 106
6.2.4 安装Samba 106
6.2.5 启动与停止Samba服务 107
6.2.6 在System Service中启动和关闭Samba服务 108
6.2.7 简单测试Samba服务器 109
6.2.8 配置Samba服务器的用户信息 110
6.2.9 试验:配置Samba让Windows访问 111
习题 112
第7章 NFS服务器的配置与管理 114
7.1 NFS简介 114
7.2 NFS文件服务器概述 114
7.3 NFS的安装 115
7.4 配置NFS服务器 116
7.4.1 配置/etc/exports文件 117
7.4.2 利用exports命令修改设置 118
7.5 配置NFS客户端 120
7.5.1 使用mount命令挂载NFS文件系统 120
7.5.2 卸载NFS文件系统 121
7.6 NFS服务器的启动与停止 121
7.6.1 启动NFS服务器 122
7.6.2 使用checkconfig命令设置NFS自动运行 122
7.6.3 NFS服务器的停止 124
7.7 NFS服务器的测试 124
7.7.1 检查NFS服务是否正常工作 124
7.7.2 检查NFS服务器输出目录状态 125
习题 126
第8章 Apache服务器 127
8.1 Apache服务器 127
8.1.1 Apache服务器简介 127
8.1.2 Apache的诞生 128
8.1.3 Web的工作原理 128
8.1.4 Apache的特性 129
8.2 Apache的获取与安装 130
8.2.1 Apache获取及其最新信息 130
8.2.2 用http-2.0.54.tar.gz软件包安装Apache 131
8.2.3 用RPM软件包安装Apache 132
8.2.4 启动和停止Apache服务器 133
8.2.5 测试Apache服务器 135
8.3 Apache服务器的基本配置 135
8.3.1 httpd.conf文件 135
8.3.2 配置目录权限 137
8.3.3 创建虚拟目录 139
习题 140
第9章 Proxy服务器与防火墙 141
9.1 基本网络参数 141
9.1.1 基本配置文件 141
9.1.2 可执行脚本和命令 142
9.1.3 Netconfig网络设备配置工具 144
9.1.4 检验网络连通 144
9.1.5 路由设置及管理 145
9.1.6 路由测试 147
9.2 代理服务器 147
9.2.1 Proxy服务器的原理简介 147
9.2.2 Squid简介 149
9.3 安装和启动Squid Server 149
9.3.1 安装Squid Server 149
9.3.2 图形化安装Squid Server 150
9.3.3 启动和停止Squid 151
9.3.4 在IE浏览器中设置代理 152
9.3.5 配置Squid服务器 153
9.4 NAT概述 157
9.4.1 NAT的工作原理 158
9.4.2 NAT的地址概念 159
9.4.3 NAT地址转换方式 160
9.4.4 NAT的安全问题 161
9.5 iptables的基本原理 163
9.5.1 netfilter框架 163
9.5.2 iptables规则链 164
9.5.3 iptables规则表 164
9.6 iptables的安装配置 165
9.6.1 安装 165
9.6.2 配置防火墙 165
9.6.3 包过滤配置 169
9.6.4 NAT配置 171
习题 172
第10章 数据库服务器 173
10.1 MySQL概述 173
10.2 MySQL数据库系统的安装 174
10.2.1 基于源代码包的MySQL安装 174
10.2.2 基于RPM包的MySQL安装 177
10.2.3 在Red Hat Linux 9添加/删除程序中安装MySQL 177
10.2.4 启动和停止MySQL服务 179
10.3 MySQL数据库的管理 180
10.3.1 启动MySQL客户端 180
10.3.2 修改管理员口令 180
10.3.3 MySQL客户端的操作举例 181
10.4 phpMyAdmin的安装与使用 182
10.4.1 MySQL的图形化配置工具 182
10.4.2 phpMyAdmin的安装 183
10.4.3 使用phpMyAdmin数据库操作 185
10.5 Linux下的PHP 189
10.5.1 PHP简介 189
10.5.2 配置运行环境 190
10.5.3 一个简单的PHP例子 191
习题 191
第11章 网络信息安全 193
11.1 引言 193
11.2 网络信息安全简介 193
11.2.1 网络信息安全的要素 194
11.2.2 网络中存在的威胁 194
11.2.3 网络信息安全领域的研究重点 194
11.3 常见的攻击类型 196
11.3.1 端口扫描 196
11.3.2 特洛伊木马 197
11.3.3 DoS攻击 199
11.3.4 Linux下的病毒 201
11.4 防火墙技术 203
11.4.1 防火墙简介 203
11.4.2 防火墙的分类 204
11.4.3 传统的防火墙技术及其特点 205
11.4.4 新一代防火墙的主要技术特点 206
11.4.5 新一代分布式防火墙概述 207
11.4.6 新一代嵌入式防火墙技术 207
11.4.7 新一代智能防火墙技术 208
11.4.8 防火墙技术的发展趋势 208
习题 210
实践部分 213
第12章 Linux的安装 213
12.1 练习文本方式安装Linux系统 213
12.2 课后作业 220
第13章 文件系统和文件管理 222
13.1 命令练习 222
13.1.1 cd命令:更改当前目录 222
13.1.2 pwd命令:输出当前工作目录 223
13.1.3 ls或dir命令:列出当前目录的内容 223
13.1.4 mkdir命令:创建目录 225
13.1.5 rmdir命令:删除空目录 226
13.2 创建Linux文件系统 226
13.3 fdisk磁盘分区工具简介 227
13.3.1 进入fdisk交互模式 228
13.3.2 使用fdisk划分磁盘分区实例 233
第14章 文件和用户 236
14.1 显示文件内容命令练习 236
14.2 用户和组管理命令练习 237
14.2.1 添加新用户 237
14.2.2 使用usermod命令修改用户信息 237
14.2.3 使用userdel命令删除用户 238
14.2.4 使用groupadd命令创建用户组 238
14.2.5 使用groupmod命令修改用户组属性 238
14.2.6 使用groupdel命令删除用户组 239
14.3 使用Red Hat用户管理器 239
14.3.1 启动Red Hat用户管理器 239
14.3.2 创建用户 239
14.3.3 修改用户属性 240
14.3.4 创建用户组 242
14.3.5 修改用户组属性 243
14.3.6 账号管理常用命令 243
14.4 课后作业 245
第15章 常见系统设置 246
15.1 使用grub从定制内核启动 246
15.2 Linux的终端窗口 246
15.2.1 启动终端窗口 247
15.2.2 终端窗口的常规操作 247
15.2.3 命令行自动补全 249
15.3 常用信息显示命令总结练习 250
15.3.1 pwd命令 250
15.3.2 stat命令 250
15.3.3 uname命令 250
15.3.4 hostname命令 251
15.3.5 dmesg命令 251
15.3.6 free命令 251
15.3.7 locale命令 251
15.3.8 cat/etc/issue命令 251
15.3.9 lastb命令 252
15.3.10 date命令 252
15.3.11 cal命令 252
15.3.12 time命令 252
15.3.13 clock命令 253
15.3.14 cat/proc/cpuinfo命令 253
15.3.15 cat/proc/interrupts命令 253
15.3.16 cat/proc/filesystems命令 254
15.3.17 set命令 254
15.3.18 runlevel命令 254
15.3.19 uptime命令 255
15.3.20 ps命令 255
15.3.21 top命令 256
15.3.22 history命令 256
15.3.23 mesg命令 256
15.4 常用的系统管理命令 257
15.4.1 mkbootdisk命令 257
15.4.2 kill命令 257
15.4.3 killall命令 258
15.4.4 alias和unalias命令 258
15.4.5 clear命令 259
15.4.6 reboot命令 259
15.4.7 shutdown命令 259
15.4.8 &命令 259
15.4.9 jobs命令 259
15.4.10 fg命令 259
15.4.11 exit命令 260
15.4.12 halt命令 260
15.4.13 sync命令 260
15.4.14 echo命令 260
15.4.15 wc命令 260
15.5 使用mount命令挂载外设 260
15.5.1 软磁盘的挂载 262
15.5.2 CDROM的挂载 262
15.5.3 USB存储设备的挂载 263
第16章 软件安装 264
16.1 软件的安装方式 264
16.1.1 基于源代码的软件安装 264
16.1.2 基于可执行文件的软件安装 265
16.1.3 RPM可执行文件的软件安装 265
16.2 tar包管理 265
16.2.1 tar命令语法及参数选项 265
16.2.2 创建tar文件 267
16.2.3 显示tar文件内容 268
16.2.4 向tar文件中添加一个文件 268
16.2.5 从tar文件中取出文件 269
16.3 gzip压缩工具 270
第17章 Samba的安装 272
17.1 实现Samba资源共享 272
17.2 Samba客户端配置 273
17.2.1 Linux客户端配置 273
17.2.2 Windows客户端配置 275
第18章 NFS服务器的配置 276
18.1 NFS图形化配置方法 276
18.1.1 使用服务配置启动和终止NFS 276
18.1.2 使用NFS服务器配置方案配置NFS 277
18.2 NFS故障分析与排除 279
18.2.1 共享目录输出失败 279
18.2.2 显示“设备正忙”无法卸载 279
18.2.3 挂载失败 280
18.2.4 权限错误 280
18.2.5 看不到共享子目录的内容 281
18.2.6 NFS请求挂起 281
18.2.7 NFS挂载在引导时挂起 281
第19章 Apache的配置 282
19.1 安装配置Apache服务器 282
19.2 Aapche的配置 284
19.3 配置虚拟主机 286
19.3.1 虚拟主机概述 286
19.3.2 配置基于IP的虚拟主机 287
19.3.3 配置基于域名的虚拟主机 289
第20章 安装squid和iptables 290
20.1 使用squid访问控制 290
20.2 配置squid server的简单实例 292
20.3 配置透明代理 292
20.4 NAT的配置实例 294
20.4.1 实例模型 294
20.4.2 配置NAT服务器 294
20.4.3 配置NAT客户端 295
20.5 使用iptables 296
20.5.1 应用iptables规则实例 296
20.5.2 iptables文件 297
20.5.3 启动和停止iptables 298
参考文献 299