本书是以RedHat公司的Linux*新版本RedHat Enterprise Linux 7.0(简称RHEL 7)为蓝本,坚持“理论够用、侧重实用”的原则,用案例来讲解每个知识点,对Linux做了较为详尽的阐述。本书涵盖了Linux的安装和配置、系统管理、网络服务搭建和配置、软件开发和数据库环境搭建和配置等四个方面的知识点。本书结构清晰、图文并茂、通俗易懂,力争做到使读者对学习Linux充满兴趣。
本书适合作为本科和高职高专及成人高等院校电子信息类专业教材,也可供培养技能型紧缺人才的相关院校及相关培训机构教学使用。同时,也可以作为Linux操作系统爱好者的自学教材。
于德海,任职长春工业大学及长春工业大学软件职业学院副院长,参加工作二十余年,主要负责学院实践教学管理,主讲硕士、本科的多门专业课,包括计算机组成原理、汇编语言程序设计、单片机原理等。 主编教材《计算机网络技术基础》,中国水利水电出版社;《计算机网络技术基础》,东软电子出版社。
第1章 LINUX操作系统概述与安装 1
1.1 LINUX简介 1
1.1.1 Linux的起源 1
1.1.2 POSIX 标准 3
1.1.3 GNU公共许可证:GPL 4
1.2 LINUX的版本 5
1.2.1常见的不同公司发行的Linux及特点 5
1.2.2内核版本的含义及选择 6
1.3 LINUX的系统架构及用途 6
1.3.1 Linux内核的主要模块 7
1.3.2 Linux的文件结构 8
1.3.3 Linux系统的用途 9
1.4 LINUX与UNIX的比较 10
1.5 安装LINUX 11
1.5.1 VMware 简介 11
1.5.2 VMware 主要产品 12
1.5.2安装RHEL 7 13
1.6 RHEL的启动流程 18
1.6.1 RHEL 7的大概启动流程 18
1.6.2 RHEL 7的详细启动流程 19
1.6.3 Linux的启动级别 20
1.7本章小结 21
1.8思考与练习 21
第2章 LINUX的GUI 23
2.1 KDE与GNOME 23
2.2 KDE桌面环境 23
2.2.1 KDE安装和切换 23
2.2.2 KDE的使用 25
2.2.3 KDE桌面 29
2.3 GNOME桌面环境 33
2.3.1 GNOME的控制面板 33
2.3.2 面板个性化配置一:自由组合内容元素 34
2.3.3 面板个性化配置二:自由组合属性元素 35
2.3.4 GNOME桌面 36
2.3.5 GNOME窗口管理器 38
2.2.6 GNOME文件管理器 39
2.4 本章小结 44
2.5 思考与练习 44
第3章 系统管理 46
3.1 用户和组管理 46
3.1.1 用户管理 46
3.1.2 组管理 50
3.2 进程管理 53
3.2.1 进程启动和终止 53
3.2.2查看进程 60
3.2.3控制进程 61
3.3 系统和服务管理 61
3.3.1 系统管理 61
3.4 本章小结 67
3.5 思考与练习 67
第4章 磁盘与文件管理 69
4.1 磁盘管理 69
4.1.1 文件系统挂载 69
4.1.2 配置磁盘空间 70
4.1.3 文件系统的备份与还原 71
4.2 文件与目录管理 71
4.2.1 Linux文件系统的目录结构 71
4.2.2 Linux的文件和目录管理 72
4.2.3 i节点 77
4.2.4 文件的压缩与打包 78
4.2.5 文件与目录的安全 80
4.3 管道与重定向 81
4.3.1 管道 81
4.3.2 重定向 81
4.4 VI编辑器 82
4.4.1 vi的工作模式 82
4.4.2 vi的常用命令 83
4.5 本章小结 84
4.6 思考与练习 85
第5章 软件包管理 86
5.1 RPM 86
5.1.1 RPM简介 86
5.1.2 RPM的使用 86
5.2 YUM 88
5.2.1 yum简介 88
1.Linux下的安装包有几种形式 88
5.2.2 yum的使用 90
5.3 本章小结 93
5.4 思考与练习 93
第6章 网络基本配置 94
6.1网络环境配置 94
6.1.1网络接口配置 94
6.1.2网络配置文件 97
6.1.3 Telnet配置 99
6.2网络调试与故障排查 100
6.2.1常用网络调试命令 100
6.2.2网络故障排查基本流程 107
6.3本章小结 107
6.4思考与练习 108
第7章 DHCP服务器配置 110
7.1 DHCP服务的工作原理 110
7.1.1 DHCP简介 110
7.1.2 DHCP的优势 110
7.1.3 DHCP的工作流程 110
7.2 DHCP服务端配置 113
7.2.1 DHCP配置文件 113
7.2.2 配置DHCP服务器 114
7.2.3 DHCP服务器的管理 116
7.3 DHCP客户端配置 119
7.3.1 在Linux下配置DHCP客户端 119
7.3.2 在Windows下设置DHCP客户端 119
7.4 DHCP服务器的故障排除 121
7.5本章小结 122
7.6思考与练习 122
第8章 WEB服务器配置 124
8.1 APACHE简介 124
8.1.1 Apache的起源 124
8.1.2 Apache的版本及特性 125
8.2 APACHE服务器的基本配置 126
8.2.1 Apache的运行 126
8.2.2 httpd.conf文件 127
8.3 APACHE服务器的高级配置 135
8.3.1访问控制 135
8.3.2主机限制访问 137
8.3.3.htaccess文件 138
8.3.4 用户web目录 139
8.3.5 虚拟主机 140
8.3.6代理服务器的配置 143
8.4本章小结 144
8.5思考与练习 144
第9章 DNS服务器配置 147
9.1 DNS简介 147
9.1.1 域名系统 147
9.1.2 DNS域名解析的工作原理 147
9.1.3 DNS相关属性 147
9.2 BIND 的主配置文件 148
9.2.1 BIND的安装 148
9.2.2 DNS相关文件配置介绍 149
9.2.3 BIND主文件配置 149
9.2.4 自定义主配置文件 151
9.3 BIND的数据库文件 152
9.3.1 正向区域数据库文件 152
9.3.2 SOA资源记录的含义 153
9.3.3 正向资源记录 153
9.3.4 反向区域数据库文件 154
9.4运行与测试DNS 155
9.4.1 运行DNS服务 155
9.4.2 测试DNS服务 156
9.5 辅助DNS 158
9.5.1 主服务DNS与辅助DNS的关系 158
9.5.2 辅助DNS的配置 158
9.6 本章小结 159
9.7 思考与练习 159
第10章 FTP服务器配置 161
10.1 VSFTPD简介 161
10.1.1 FTP概述 161
10.1.2 VSFTPD的特点 162
10.1.3 VSFTPD安装 162
10.1.4 VSFTPD 运行 162
10.2 VSFTPD基本配置 162
10.2.1 VSFTPD默认配置 163
10.2.2 VSFTPD匿名FTP服务器 163
10.3 VSFTPD高级配置 165
10.3.1 用户chroot访问控制 165
10.3.2 主机访问控制 167
10.3.3 用户访问控制 169
10.3.4 虚拟主机 171
10.5 本章小结 173
10.6思考与练习 173
第11章SAMBA服务器配置 175
11.1 SAMBA简介 175
11.1.1 Samba概述 175
11.1.2 Samba功能 175
11.1.3 Samba的应用环境 175
11.1.4 Samba特点 176
11.1.5 Samba运行 176
11.2 SAMBA的配置文件 176
11.2.1 Samba配置文件结构 176
11.2.2 Samba 服务基本配置 176
11.3 SAMBA配置实例 178
11.3.1 添加用户 178
11.3.2 配置共享打印 178
11.3.3 访问Samba服务器及Windows上的共享资源 179
11.3.4 主机访问控制 180
11.3.5 用户访问控制 181
11.4本章小结 182
11.5思考与练习 182
第12章IPTABLES服务器配置 184
12.1 IPTABLES简介 184
12.1.1 iptables的功能 184
12.1.2 iptables 数据包的流程 185
12.1.3 IP转发 186
12.2 IPTABLES基本配置 187
12.2.1 command语法格式 187
12.2.2 match语法格式 188
12.2.3 iptables目标动作 191
12.3配置实例 192
12.4本章小结 194
12.5思考与练习 194
第13章 数据库服务器配置 196
13.1 MYSQL服务器配置 196
13.1.1 安装准备工作 196
13.1.2 安装mysql 197
13.1.3 登录MySQL 197
13.1.4 MySQL的几个重要目录 198
13.1.5 修改登录密码 198
13.1.6 启动与停止 199
13.1.7 更改MySQL目录 200
13.1.8 MySQL的常用操作 201
13.1.9 增加MySQL用户 203
13.1.10 备份与恢复 203
13.2 ORACLE服务器配置 204
13.2.1 安装准备工作 204
13.2.2 Oracle安装 205
13.2.3 Oracle安装常见问题解决方法及配置 206
13.3 本章小结 206
13.4 思考与练习 207
第14章 SHELL编程基础 208
14.1 SHELL基础知识 208
14.1.1 Shell简介 208
14.1.2 bash shell及其特点 208
14.2 SHELL变量 210
14.2.1 环境变量 210
14.2.2 用户定义变量 212
14.2.3 系统环境变量与个人环境变量的配置文件 215
14.2.4 linux shell中的特殊符号 216
14.3 正则表达式 222
14.3.1 grep/egrep命令 223
14.3.2 sed工具的使用 227
14.3.3 awk工具的使用 230
14.4 流程控制语句 234
14.4.1 shell脚本的基本结构及执行 234
14.4.2 shell脚本中的变量 236
14.4.3 shell脚本中的逻辑判断 239
14.4.4 shell脚本中的循环 243
14.4.5 shell脚本中的函数 244
14.5 本章小结 245
14.6 思考与练习 245
第15章 LINUX下的软件开发环境配置 247
15.1 JAVA开发环境配置 247
15.1.1 JDK的安装 247
15.1.2 tomcat的安装 248
15.1.3 下载和安装集成开发环境 250
15.2 C/C++开发环境配置 252
15.2.1 GNU C编译器 252
15.2.2 用GDB调试GCC程序 253
15.2.3 Linux 下 C/C++开发工具 254
15.2.4 Linux 下C/C++开发环境配置 254
15.3 本章小结 255
15.4 思考与练习 256
第16章 作业控制和任务计划 257
16.1 作业控制 257
16.1.1 进程启动方式 258
16.1.2 进程的挂起及恢复 260
16.2 任务计划 261
16.2.1 cron的使用及配置 263
16.2.2 crontab命令的使用 267
16.2.3 at命令的使用 269
16.2.4 batch命令的使用 272
16.3 本章小结 273
16.4 思考与练习 273