本书旨在普及国产开源 openEuler 操作系统的知识,帮助学生建立对 Linux 体系的整体认知,掌握 openEuler操作系统的安装、配置、运维与服务等核心技能,培养面向教育、云、边、端等多场景的复合型技术人才。 本书围绕“高校在线学习系统部署”这一真实项目展开,包括 10 个递进式项目。项目 1 讲解 openEuler 操作系统的安装与配置,为平台奠定运行“底座”;项目 2 讲解常用命令与编辑器,助力学生实现对 openEuler 操作系统的高效运维;项目 3 讲解用户及用户组管理,批量创建教师、学生和管理员 3 种账号并为其分配权限;项目 4 利用文件权限管理为教案、作业加锁,确保数据安全;项目 5 借助本地磁盘存储管理合理划分空间,支撑海量教学资源;项目 6 讲解内存和进程管理,在万人并发场景下保持系统稳定;项目 7 依托网络配置与包管理,实现联网、装软件、打补丁的一键完成;项目 8 讲解 Shell 编程,自动完成备份、清日志、更新课程表等操作;项目 9 讲解 DNS 服务器配置,为平台提供易记域名;项目 10 讲解 Web 服务器配置,支持高并发在线访问并保障资源安全传输。 本书配有在线课程(超星学习通)、教学大纲、教学课件、习题解答等资源,读者可登录华信教育资源网免费下载。 本书主要面向高等院校计算机相关专业的学生,也适合对 Linux 操作系统感兴趣的读者阅读。
武金龙,2019年至今,任武汉商学院现代信息产业学院计算机教研室主任。计算机技术与软件资格高级工程师(网络规划设计师),华为认证讲师,华为ICT大赛优秀指导老师,蓝桥杯大赛优秀组织个人。
项目1 安装与配置openEuler操作系统 1
1.1 项目知识准备 1
1.1.1 Linux的起源 1
1.1.2 Linux的体系结构 2
1.1.3 Linux的版本 3
1.1.4 openEuler操作系统 5
1.2 项目设计与准备 6
1.2.1 项目设计 6
1.2.2 项目准备 6
1.3 项目实施 8
1.3.1 安装与配置虚拟机 8
1.3.2 安装openEuler操作系统 10
1.3.3 创建虚拟机快照 16
1.3.4 克隆虚拟机 17
1.3.5 系统的启动和退出 18
1.3.6 系统的远程登录 19
1.3.7 系统的重启和关机命令 21
1.3.8 使用DNF安装软件 22
1.4 拓展阅读 23
1.5 项目实训 23
1.6 项目练习题 24
项目2 常用命令与编辑器 26
2.1 项目知识准备 26
2.1.1 命令行的语法介绍 26
2.1.2 常用快捷键 27
2.1.3 使用man命令获取帮助信息 28
2.1.4 使用- -help选项获取
帮助信息 30
2.1.5 使用help命令获取bash
内置帮助 30
2.2 项目设计与准备 30
2.2.1 项目设计 30
2.2.2 项目准备 31
2.3 项目实施 31
2.3.1 文件和目录操作命令 31
2.3.2 文本内容显示命令 44
2.3.3 文件查找命令 50
2.3.4 文件压缩和解压缩命令 59
2.3.5 信息显示命令 63
2.3.6 日期和时间命令 69
2.3.7 vim命令 71
2.4 拓展阅读 75
2.5 项目实训 75
2.6 项目练习题 77
项目3 用户及用户组管理 79
3.1 项目知识准备 79
3.1.1 用户和用户组文件 79
3.1.2 Linux用户文件介绍 82
3.2 项目设计与准备 84
3.2.1 项目设计 84
3.2.2 项目准备 84
3.3 项目实施 84
3.3.1 用户账户设置 84
3.3.2 组群设置 92
3.3.3 用户和用户组的维护 96
3.4 拓展阅读 104
3.5 项目实训 104
3.6 项目练习题 105
项目4 文件权限管理 107
4.1 项目知识准备 107
4.2 项目设计与准备 109
4.2.1 项目设计 109
4.2.2 项目准备 109
4.3 项目实施 109
4.3.1 更改文件的所有者和
所属组 109
4.3.2 更改文件权限 112
4.3.3 特殊权限位 115
4.3.4 ACL 119
4.4 拓展阅读 123
4.5 项目实训 124
4.6 项目练习题 125
项目5 本地磁盘存储管理 128
5.1 项目知识准备 129
5.1.1 磁盘存储管理概述 129
5.1.2 文件系统概述 133
5.2 项目设计与准备 140
5.2.1 项目设计 140
5.2.2 项目准备 140
5.3 项目实施 141
5.3.1 磁盘分区与格式化 141
5.3.2 挂载存储设备 150
5.3.3 磁盘限额管理 155
5.3.4 逻辑卷管理 163
5.4 拓展阅读 171
5.5 项目实训 171
5.6 项目练习题 172
项目6 内存和进程管理 174
6.1 项目知识准备 174
6.1.1 内存管理 174
6.1.2 进程管理 178
6.1.3 进程的分类 179
6.1.4 进程状态检测 180
6.1.5 进程状态控制 182
6.1.6 工作管理 183
6.2 项目设计与准备 183
6.2.1 项目设计 184
6.2.2 项目准备 184
6.3 项目实施 184
6.3.1 监控系统内存使用 184
6.3.2 管理进程状态 186
6.3.3 配置定时任务 188
6.4 拓展阅读 192
6.5 项目实训 192
6.6 项目练习题 193
项目7 网络配置与包管理 196
7.1 项目知识准备 196
7.1.1 网络配置基础 196
7.1.2 常用网络配置文件 197
7.1.3 网络配置 199
7.1.4 软件包管理 202
7.2 项目设计与准备 205
7.2.1 项目设计 205
7.2.2 项目准备 206
7.3 项目实施 206
7.3.1 网络测试与监控命令 206
7.3.2 配置IP地址 211
7.3.3 安装、更新、卸载软件包 211
7.4 拓展阅读 213
7.5 项目实训 214
7.6 项目练习题 215
项目8 Shell编程 217
8.1 项目知识准备 217
8.1.1 Shell概述 217
8.1.2 Shell脚本基础 219
8.1.3 控制结构 224
8.1.4 函数与模块化 232
8.2 项目实施 238
8.2.1 Shell编程基础实践 238
8.2.2 控制结构实践 239
8.2.3 函数和模块化编程实践 240
8.2.4 脚本调试与优化实践 242
8.3 拓展阅读 243
8.4 项目实训 244
8.5 项目练习题 245
项目9 DNS服务器配置 248
9.1 项目知识准备 248
9.2 项目设计与准备 252
9.2.1 项目设计 252
9.2.2 项目准备 252
9.3 项目实施 253
9.3.1 安装并启动域名服务器
软件 253
9.3.2 配置域名服务器 253
9.3.3 配置主/从DNS服务器 256
9.3.4 配置分离解析DNS服务器 257
9.4 拓展阅读 259
9.5 项目实训 259
9.6 项目练习题 260
项目10 Web服务器配置 262
10.1 项目知识准备 262
10.2 项目设计与准备 264
10.2.1 项目设计 264
10.2.2 项目准备 265
10.3 项目实施 265
10.3.1 安装并启动网页服务器 265
10.3.2 配置基本网页服务器 266
10.3.3 配置Apache的虚拟目录 268
10.3.4 配置虚拟主机 269
10.3.5 配置HTTPS安全传输 270
10.4 拓展阅读 272
10.5 项目实训 274
10.6 项目练习题 274
参考文献