第1章 Linux系统概况 1
1.1 Linux使用总揽 1
1.2 Linux成长发展 2
1.2.1 Linux的诞生 2
1.2.2 Linux的成长 6
1.2.3 Linux的发展 9
1.3 内核版本与开源协议 9
1.3.1 内核版本 9
1.3.2 开源协议 11
1.4 Linux的应用场合 12
1.5 Linux发行版和开源社区 13
1.5.1 Linux发行版 13
1.5.2 开源社区 15
1.6 知识拓展与作业 16
1.6.1 知识拓展 16
1.6.2 作业 16
第2章 安装和卸载 17
2.1 安装和卸载步骤 17
2.1.1 分区和分区命名 17
2.1.2 文件系统类型 21
2.1.3 安装规划 21
2.1.4 安装 22
2.1.5 卸载 23
2.2 初步管理 24
2.2.1 系统和服务管理 24
2.2.2 开机、关机与睡眠 27
2.2.3 登录、锁屏与注销 29
2.2.4 配置网络 34
2.2.5 配置安装源 36
2.2.6 添加、删除和升级软件包 37
2.3 知识拓展与作业 39
2.3.1 知识拓展 39
2.3.2 作业 39
第3章 用户、组和身份认证 40
3.1 多用户系统 40
3.2 用户和组的概念 41
3.2.1 用户的概念 41
3.2.2 组的概念 44
3.3 用户和组管理 45
3.3.1 组管理 45
3.3.2 用户管理 46
3.4 登录过程和环境变量 47
3.4.1 用户登录过程 47
3.4.2 用户环境变量 48
3.5 知识拓展和作业 50
3.5.1 知识拓展 50
3.5.2 作业 50
第4章 文件系统 51
4.1 Linux目录树 51
4.2 文件分类与权限 53
4.2.1 文件分类 53
4.2.2 文件权限 56
4.3 文件管理 57
4.3.1 文件通配符 58
4.3.2 文件操作 58
4.4 新建文件系统 59
4.5 知识拓展与作业 61
4.5.1 知识拓展 61
4.5.2 作业 61
第5章 基本命令 62
5.1 命令基本语法与类型 62
5.1.1 命令类型与语法 62
5.1.2 在线帮助文档 64
5.2 bash快捷键、重定向和管道 65
5.2.1 历史命令与bash快捷键 65
5.2.2 命令重定向 66
5.2.3 其他元字符 68
5.3 命令举例 69
5.3.1 关机/重启/退出 69
5.3.2 bash内部命令 69
5.3.3 系统信息相关命令 69
5.3.4 文件操作命令 70
5.3.5 进程及任务管理相关命令 71
5.3.6 网络相关命令 72
5.4 知识拓展与作业 72
5.4.1 知识拓展 72
5.4.2 作业 73
第6章 vi/vim 74
6.1 vim介绍 74
6.2 vim基本操作 76
6.2.1 处女作 76
6.2.2 基本操作 78
6.3 知识拓展 82
第7章 远程控制 83
7.1 远程控制:OpenSSH 83
7.1.1 介绍 83
7.1.2 SSH服务器安装和配置 84
7.1.3 SSH客户端 85
7.2 知识拓展与作业 88
7.2.1 知识拓展 88
7.2.2 作业 88
第8章 编程基础 89
8.1 bash编程基础 89
8.1.1 Shell程序:Hello World 89
8.1.2 脚本语言介绍 90
8.1.3 结构和基本语法 90
8.1.4 变量 90
8.1.5 控制语句 92
8.1.6 Shell程序调试 97
8.2 C语言编程基础 98
8.2.1 C语言编程环境 98
8.2.2 进程编程 100
8.2.3 网络编程 102
8.2.4 程序调试 108
8.3 知识拓展与作业 109
8.3.1 知识拓展 109
8.3.2 作业 109
第9章 Linux图形桌面系统 111
9.1 组成与原理 111
9.1.1 Linux图形桌面系统组成 111
9.1.2 X WINDOW原理 112
9.2 起停图形系统 113
9.3 一些图形应用程序介绍 114
9.4 图形界面远程登录 114
9.4.1 登录Linux图形桌面 114
9.4.2 从Linux桌面登录其他系统 115
9.5 知识拓展与作业 117
9.5.1 知识拓展 117
9.5.2 作业 117
第10章 Linux运维 118
10.1 进程管理 118
10.1.1 进程的概念 118
10.1.2 进程管理 120
10.2 系统资源管理 121
10.2.1 计算机资源概述 121
10.2.2 资源管理 121
10.3 定时任务 123
10.3.1 周期性定时任务 123
10.3.2 一次性定时任务 124
10.4 备份与恢复 125
10.4.1 系统文件备份 125
10.4.2 业务数据备份 126
10.5 知识拓展与作业 126
10.5.1 知识拓展 126
10.5.2 作业 126
第11章 服务配置 127
11.1 搭建网站系统 128
11.1.1 网站简介 128
11.1.2 具体操作 129
11.2 搭建邮件系统 131
11.2.1 邮件系统简介 131
11.2.2 动手操作 132
11.2.3 使用邮件系统 132
11.3 网络文件系统NFS 134
11.3.1 NFS介绍 134
11.3.2 搭建NFS 135
11.4 虚拟机和容器 138
11.4.1 虚拟机 138
11.4.2 容器 139
11.5 防火墙 141
12.5.1 基础知识 141
11.5.2 内核中的netfilter模块 142
11.5.3 配置规则 145
11.6 FTP服务 151
11.7 DNS服务 155
11.7.1 域名解析 155
11.7.2 资源记录 158
11.7.3 安装和配置DNS 158
11.8 DHCP服务 160
11.9 知识拓展 163
附录A 实训 164
附录A1 安装虚拟机工具 164
附录A2 安装Linux实训 169
附录A3 找回丢失的root密码实训 186
附录A4 创建用户和组实训 187
附录A5 硬盘分区与格式化实训 189
附录A6 常用命令用法实训 192
附录A7 vi/vim实训 196
附录A8 bash编程实训 197
附录B 一些著名开源软件介绍 199
附录B1 VirtualBOX/KVM/Xen/OpenVZ/Docker 199
附录B2 MariaDB/PostgreSQL 200
附录B3 Openstack/Hadoop 201
附录B4 Apache/Nginx 201
附录B5 Netfilter/Iptables 201
附录B6 Postfix 202
附录B7 Squid 203
附录B8 Snort 204
附录B9 Odoo 204
附录B10 Kerberos 205