Ubuntu Linux操作系统案例教程

新形态《Linux操作系统》案例式教材,基于最新版Ubuntu,侧重讲解共性技术,详解ABC前沿场景应用案例,配套丰富教辅资源。
分享 推荐 2 收藏 12 阅读 475
张平 (作者)

关于本书的内容有任何问题,请联系 人邮社 王宣

(1)基于最新版Ubuntu,侧重讲解Linux不同发行版的共性技术。
(2)应用导向,案例式教学,多层次、全方位演示实战技巧。
(3)详解Linux在区块链、大数据和人工智能等前沿场景中的应用案例。
(4)配套PPT、教案、教学大纲、案例源代码、课后习题答案等教辅资源。
(5)图文并茂,共含约600幅图片,方便读者快速入门。

特别说明

新形态《Linux操作系统》案例式教材,基于最新版Ubuntu,侧重讲解共性技术,详解ABC前沿场景应用案例,配套丰富教辅资源。

内容摘要

本书以应用为导向,基于最新版Ubuntu,全面介绍Linux操作系统的基础知识及其在区块链、大数据和人工智能等场景中的应用。全书共13章,分为Linux操作系统基础篇、系统管理篇、Linux操作系统开发篇、前沿应用篇4个部分。第一部分主要包括:Linux操作系统概述、图形界面基础、Linux操作系统命令行基础。第二部分主要包括:文件和目录管理、用户和组管理、磁盘存储管理、进程管理、软件包管理。第三部分主要包括:Shell编程和Linux C编程。第四部分主要通过实例介绍Linux操作系统在区块链、大数据和人工智能等场景中的应用。
本书可作为高等院校软件工程、计算机科学与技术、物联网工程、数据科学与大数据技术、智能科学与技术、网络工程、通信工程、电子信息工程等专业的教材,也可供广大Linux操作系统爱好者学习使用,还可作为其他IT从业人员的参考书。

学时建议表

目录

第一部分 Linux操作系统基础篇

第1章 Linux操作系统概述 2
1.1 什么是Linux 3
1.2 Linux操作系统的发展历史 3
1.2.1 UNIX操作系统的发展历史 3
1.2.2 类UNIX操作系统的发展历史 3
1.2.3 Linux操作系统的诞生 4
1.2.4 GNU和GPL概述 4
1.2.5 Linux操作系统的发展 4
1.3 Linux操作系统的版本 5
1.3.1 Linux内核 5
1.3.2 Linux发行版 5
1.3.3 代表性的Linux发行版 5
1.3.4 Linux发行版市场占有率分析 7
1.4 Linux操作系统的主要应用领域 7
1.4.1 传统企业级服务器领域 7
1.4.2 智能手机、平板电脑、上网本等移动终端 8
1.4.3 物联网、车联网等应用场景 8
1.4.4 面向日常办公的桌面应用场景 8
1.4.5 云计算、区块链、大数据、深度学习等应用场景 8
1.5 本章小结 9
习题1 9

第2章 图形界面基础 10
2.1 图形界面概述 11
2.1.1 X Window System 11
2.1.2 KDE和GNOME 11
2.1.3 Unity桌面环境 12
2.2 Ubuntu操作系统安装 12
2.2.1 下载最新版本的Ubuntu镜像文件 12
2.2.2 安装Ubuntu 12
2.3 Ubuntu图形界面基础 19
2.3.1 桌面环境概述 19
2.3.2 常见应用程序 19
2.3.3 系统基本设置 22
2.4 本章小结 22
习题2 22

第3章 Linux操作系统命令行基础 23
3.1 Linux Shell概述 24
3.1.1 Shell简介 24
3.1.2 Bash简介 24
3.2 打开Linux操作系统命令行界面 25
3.3 命令行界面简介 25
3.3.1 Linux操作系统命令提示符 25
3.3.2 使用终端仿真器执行Linux命令 25
3.3.3 使用root权限 26
3.4 Shell的基本用法 27
3.4.1 Linux命令语法格式 27
3.4.2 命令自动补全 28
3.4.3 强制中断命令运行 29
3.4.4 命令历史记录 29
3.5 Shell高阶技巧 32
3.5.1 管道 32
3.5.2 重定向 33
3.5.3 命令排列 35
3.5.4 命令续行 36
3.5.5 命令替换 36
3.5.6 命令别名 37
3.6 Linux命令行帮助系统 38
3.6.1 使用man命令获取帮助 38
3.6.2 使用info命令获取帮助 38
3.6.3 使用help选项获取帮助 39
3.7 本章小结 39
习题3 40

第二部分 系统管理篇

第4章 文件和目录管理 42
4.1 Linux文件基础 43
4.2 Linux文件类型 43
4.3 Linux目录基础 45
4.4 文件操作命令 45
4.4.1 创建空文件命令touch 45
4.4.2 文件复制命令cp 47
4.4.3 文件链接命令ln 49
4.4.4 文件移动命令mv 50
4.4.5 文件删除命令rm 53
4.5 目录操作命令 55
4.5.1 显示当前路径命令pwd 55
4.5.2 改变工作目录命令cd 55
4.5.3 列出目录内容命令ls 56
4.5.4 创建目录命令mkdir 57
4.5.5 删除目录命令rmdir 59
4.6 本章小结 61
习题4 61

第5章 用户和组管理 62
5.1 用户账户基础 63
5.1.1 Linux用户账户 63
5.1.2 Ubuntu用户账户 63
5.2 用户配置文件 64
5.2.1 etc passwd文件 64
5.2.2 etc shadow文件 65
5.3 用户账户管理命令 65
5.3.1 新建用户账户命令useradd和adduser 65
5.3.2 修改用户账户命令passwd、usermod和chage 70
5.3.3 删除用户账户命令userdel和deluser 75
5.4 组账户基础 78
5.5 组账户配置文件 79
5.5.1 etc group文件 79
5.5.2 etc gshadow文件 79
5.6 组账户管理命令 80
5.6.1 创建组账户命令groupadd和addgroup 80
5.6.2 修改组账户属性命令groupmod 84
5.6.3 删除组账户 85
5.6.4 管理组账户命令gpasswd 87
5.7 本章小结 89
习题5 89

第6章 磁盘存储管理 90
6.1 磁盘存储管理概述 91
6.1.1 磁盘分区简介 91
6.1.2 格式化简介 91
6.2 Linux磁盘分区管理 91
6.2.1 磁盘及磁盘分区命名规则 91
6.2.2 磁盘分区管理命令fdisk 92
6.3 Linux文件系统管理 102
6.3.1 Linux支持的文件系统格式 102
6.3.2 创建文件系统命令mkfs 102
6.3.3 创建文件系统的其他工具 104
6.4 文件系统的挂载和卸载 105
6.4.1 挂载磁盘分区命令mount 105
6.4.2 卸载磁盘分区命令umount 107
6.5 文件系统检查维护命令 109
6.5.1 文件系统的检查和修复命令fsck 109
6.5.2 查看磁盘使用情况命令df 110
6.5.3 查看文件和目录的磁盘使用情况命令du 112
6.6 本章小结 114
习题6 114

第7章 进程管理 115
7.1 Linux进程概述 116
7.1.1 进程的概念 116
7.1.2 程序和进程 116
7.1.3 进程的状态 116
7.1.4 进程的分类 116
7.1.5 进程优先级 116
7.2 进程状态监测 117
7.2.1 静态监控:查看当前进程状态的命令ps 117
7.2.2 动态监控:持续监测进程运行状态的命令top 120
7.2.3 查看进程树命令pstree 121
7.2.4 列出进程打开文件信息的命令lsof 124
7.3 进程状态控制 126
7.3.1 调整进程优先级的命令nice 126
7.3.2 改变运行进程优先级的命令renice 129
7.3.3 向进程发送信号的命令kill 130
7.3.4 通过名字杀死进程的命令killall 132
7.4 进程启动与作业控制 134
7.4.1 进程的启动 135
7.4.2 进程的挂起 135
7.4.3 使用jobs命令显示任务状态 136
7.4.4 使用fg命令将任务移至前台 137
7.4.5 使用bg命令将任务移至后台 137
7.4.6 使用nohup命令启动脱离终端运行的任务 138
7.5 本章小结 140
习题7 140

第8章 软件包管理 141
8.1 Linux软件包管理概述 142
8.1.1 软件包管理简史 142
8.1.2 Linux操作系统中的软件安装方式 142
8.1.3 软件包管理工具 142
8.2 apt 143
8.2.1 apt概述 143
8.2.2 配置apt源 143
8.2.3 apt命令基本用法 144
8.2.4 apt命令操作实例 145
8.3 使用二进制包安装程序 148
8.3.1 适用场景 148
8.3.2 应用实例 148
8.4 使用源代码安装程序 152
8.4.1 基本流程 153
8.4.2 应用实例 153
8.5 本章小结 157
习题8 157

第三部分 Linux操作系统开发篇

第9章 Shell编程 160
9.1 Shell编程概述 161
9.1.1 什么是Shell脚本 161
9.1.2 Shell编程基本步骤 161
9.1.3 Shell入门实例 161
9.1.4 运行Shell脚本的几种方法 162
9.2 Shell变量 163
9.2.1 变量定义和访问 163
9.2.2 变量类型 165
9.2.3 变量值输出 167
9.2.4 变量值输入 168
9.2.5 数组 169
9.3 表达式 170
9.3.1 算术表达式 170
9.3.2 逻辑表达式 170
9.4 Shell控制结构 172
9.4.1 分支结构:if语句 172
9.4.2 分支结构:case语句 175
9.4.3 循环结构:for语句 176
9.4.4 循环结构:while语句和until语句 179
9.5 Shell函数 180
9.5.1 函数的定义 180
9.5.2 函数调用与参数传递 181
9.5.3 函数的返回值 182
9.6 Shell进阶 183
9.6.1 数值比较运算符 183
9.6.2 逻辑运算符 185
9.6.3 字符串检测和比较运算符 187
9.6.4 文件测试运算符 188
9.7 本章小结 190
习题9 191

第10章 Linux C编程 192
10.1 概述 193
10.2 gcc编译 193
10.2.1 gcc编译器 193
10.2.2 gcc命令基本用法 194
10.2.3 gcc使用实例 195
10.3 gdb调试 200
10.3.1 gdb常用内部命令 200
10.3.2 gdb使用实例 201
10.4 make编译 205
10.4.1 make和Makefile概述 205
10.4.2 Makefile语法基础 205
10.4.3 Makefile文件实例:基础版 206
10.4.4 make编译的基本步骤 207
10.4.5 Makefile文件实例:进阶版 208
10.4.6 make命令综合实例 208
10.5 Makefile文件自动生成技术 211
10.6 autotools和make综合应用 212
10.7 本章小结 216
习题10 216

第四部分 前沿应用篇

第11章 区块链 218
11.1 区块链概述 219
11.1.1 区块链的基本含义 219
11.1.2 区块链的分类 219
11.2 区块链基础环境准备 220
11.2.1 下载Go语言包 220
11.2.2 安装配置Go语言环境 221
11.3 安装区块链开发平台 222
11.3.1 添加ppa安装源 222
11.3.2 更新软件包信息 223
11.3.3 安装ethereum 223
11.4 部署区块链项目 223
11.4.1 添加区块链账户 224
11.4.2 部署区块链项目的具体步骤 225
11.4.3 创建工作目录 230
11.4.4 初始化区块链项目 230
11.5 运行维护区块链项目 231
11.5.1 运行维护实例概述 231
11.5.2 启动区块链项目交互界面 231
11.5.3 区块链项目的运行与维护 231
11.5.4 区块链平台进程监测 233
11.5.5 区块链平台日志监测 234
11.6 代表性的区块链应用实例 234
11.7 本章小结 235
习题11 235

第12章 大数据 236
12.1 大数据概述 237
12.2 大数据核心技术介绍 237
12.2.1 Hadoop 237
12.2.2 HDFS 237
12.2.3 MapReduce 237
12.3 大数据基础环境准备 238
12.3.1 更新软件包信息 238
12.3.2 安装配置Java环境 238
12.3.3 安装配置SSH 240
12.4 安装大数据开发平台 241
12.4.1 下载Hadoop安装包 241
12.4.2 安装配置Hadoop环境 242
12.4.3 Hadoop的运行模式 244
12.5 单机模式下的大数据项目实例 244
12.5.1 新建工程目录 244
12.5.2 准备数据文件 244
12.5.3 配置环境变量 245
12.5.4 浏览Hadoop实例 245
12.5.5 测试Hadoop实例 246
12.5.6 查看测试效果 246
12.6 伪分布式模式下的大数据项目实例 247
12.6.1 修改core site.xml 248
12.6.2 修改hdfs site.xml 249
12.6.3 NameNode初始化 249
12.6.4 启动Hadoop 250
12.6.5 查看启动的Hadoop进程 251
12.6.6 运行Hadoop伪分布式实例 252
12.6.7 关闭Hadoop 257
12.6.8 再次启动hadoop 257
12.7 本章小结 258
习题12 258

第13章 人工智能 259
13.1 基础环境准备 260
13.1.1 概述 260
13.1.2 安装Anaconda 260
13.1.3 conda基本用法 262
13.2 机器学习开发环境配置 264
13.2.1 机器学习概述 264
13.2.2 Scikit learn的安装 264
13.2.3 测试安装是否成功 264
13.2.4 更新或者卸载Scikit-learn 265
13.3 机器学习应用实例 265
13.3.1 实例概述 265
13.3.2 环境准备 266
13.3.3 实例详解 266
13.4 深度学习开发环境配置 267
13.4.1 深度学习概述 267
13.4.2 TensorFlow简介 268
13.4.3 安装TensorFlow 268
13.4.4 测试是否安装成功 268
13.5 深度学习应用实例 269
13.5.1 实例概述 269
13.5.2 实例详解 269
13.5 本章小结 272
习题13 272

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

张平:
湖南工商大学计算机与信息工程学院"双师型"教师,博士,副教授,硕士研究生导师;主持教育部青年项目、湖南省教改项目等科研/教研项目多项,在CCF推荐的权威期刊上发表SCI论文若干篇;理论功底扎实、实践经验颇丰。

推荐用户

相关图书

联系客服
联系客服
人邮微信
人邮微信
微信二维码
返回顶部
返回顶部