Linux 操作系统 PDF 文档
本书以红帽(Fedora 24、CentOS 7 和 RHEL 7.3)及 Ubuntu 16.04 系统为蓝本,分 4 篇介绍了 Linux 系统的基本操作、管理、编程和网络服务及应用。基础篇介绍了 UNIX/Linux 系统的基本知识和基本操作;系统管理篇介绍了 UNIX/Linux 系统的常用管理,内容包括用户、组和密码管理,文件系统管理及使用,进程、任务与作业管理,系统安装、扩充、启动与管理,设备管理,网络管理与网络应用及 SELinux、防火墙与系统安全等;编程与开发篇介绍了 bshell 编程、C/C++编程和 Java、Python 等其他编程环境;网络服务与应用篇介绍了 Linux 系统的常用网络应用与网络服务,包括网络基础服务 SSH 和 VNC、时间服务 NTP、Web 服务器 Apache、DHCP 服务器、FTP 与 TFTP 服务器、网络资源共享服务 Samba 和 NFS、域名服务器 DNS 等。
本书与以前版本的最大不同是引进了 Linux 系统的最新技术和应用,强化了安全技术 SELinux 与防火墙。
本书从培养“应用型”人才出发,兼顾基本知识和基本理论,内容翔实,结构清晰,具有较强的实用性和指导性;基于不断发展,安全稳定,为虚拟化、大数据和云计算提供最好支持的红帽和 Ubuntu 系统,具有广泛的代表性,且内容兼顾 UNIX。
本书可作为高等院校 UNIX/Linux 操作系统的教材,也可作为网络操作系统的实例教材,更可作为UNIX/Linux 操作系统管理者和爱好者的参考书。
目录
基础篇
第 1 章 系统简介
1.1 UNIX 系统简介
1.1.1 UNIX 系统的发展历史
1.1.2 UNIX 系统的特点
1.2 Linux 系统简介
1.2.1 Linux 系统的发展历史
1.2.2 Linux 系统的特点
1.2.3 Linux 系统的发行版本介绍
1.2.4 Linux 系统的应用
习题 1
第 2 章 系统入门
2.1 系统的开机与界面切换
2.1.1 系统的开机
2.1.2 两种操作界面及切换
2.2 用户的登录与注销
2.2.1 系统的登录
2.2.2 注销
2.2.3 CLI 终端仿真界面
2.2.4 程序的启动
2.3 Linux 系统的关闭与重启动
2.3.1 字符界面
2.3.2 系统的运行级别及切换
2.3.3 图形界面
2.4 Linux 系统的图形界面介绍
2.4.1 GNOME 桌面简介
2.4.2 Ubuntu 的 Unity 桌面简介
2.4.3 设置中心(Settings)
2.5 Linux 系统的在线帮助与资源
2.5.1 man
2.5.2 textinfo
2.5.3 yelp
2.5.4 Linux 系统的其他帮助和资源
2.6 LibreOffice 办公套件简介
2.6.1 LibreOffice Writer
2.6.2 LibreOffice Calc
2.6.3 LibreOffice Impress
2.6.4 LibreOffice Draw
习题 2
实验 2
第 3 章 shell 与 shell 基本操作
3.1 shell 基本功能与基本概念
3.1.1 shell 基本功能
3.1.2 字符与保留字
3.1.3 文件命名及文件类型
3.1.4 目录结构与路径
3.1.5 shell 命令格式与命令编辑
3.1.6 标准流与输入/输出重定向
3.1.7 管道与三通
3.1.8 环境变量与变量
3.1.9 引号机制、命令替换与变量替换
3.1.10 shell 命令的执行
3.1.11 shell 种类
3.2 Linux 系统的基本命令
3.2.1 目录基本操作命令
3.2.2 文件操作基本命令
3.2.3 文件属性基本操作
3.2.4 文本文件编辑与操作基本命令
3.2.5 日期、时间与时区管理命令
3.2.6 进程管理基本命令
3.2.7 文件或目录比较命令
3.2.8 其他操作命令
习题 3
实验 3
系统管理篇
第 4 章 用户、组和密码管理
4.1 UNIX 系统的用户和组
4.1.1 用户与 uid
4.1.2 组与 gid
4.2 与用户和组管理相关的文件
4.2.1 /etc/passwd
4.2.2 /etc/shadow
4.2.3 /etc/group
4.2.4 /etc/login.defs
4.2.5 其他文件
4.3 用户管理命令
4.3.1 增加用户(useradd)
4.3.2 用户删除(userdel)
4.3.3 用户修改(usermod)
4.4 组管理命令
4.4.1 组创建(groupadd)
4.4.2 组删除(groupdel)
4.4.3 组修改(groupmod)
4.5 密码管理
4.5.1 密码管理综述
4.5.2 密码管理命令(passwd)
4.5.3 密码管理示例
4.6 用户、组和密码管理图形界面
4.6.1 添加用户
4.6.2 用户属性修改
4.6.3 用户删除
4.7 与用户身份和位置相关的其他命令
4.7.1 显示与用户和组相关的身份信息(id)
4.7.2 显示已登录用户的信息(who)
4.7.3 显示使用者的用户名(whoami)
4.7.4 向系统中的指定用户发信息(write)
4.7.5 向系统中已登录的所有用户发信息(wall)
4.7.6 确定用户所使用的终端设备(tty)
4.7.7 不退出系统而将自己切换成其他用户(su)
4.7.8 以其他用户身份执行程序(sudo)
习题 4
实验 4
第 5 章 文件系统管理及使用
5.1 文件系统权限及管理
5.1.1 三种权限
5.1.2 三类人
5.1.3 权限控制
5.1.4 默认权限与 umask
5.2 权限管理命令
5.2.1 设置文件创建掩码(umask)
5.2.2 改变文件的权限(chmod)
5.2.3 改变文件的所有者(chown)
5.2.4 改变文件的组(chgrp)
5.2.5 ext2+文件系统的新增属性及其管理
5.3 文件系统管理
5.3.1 UNIX/Linux 支持的文件系统
5.3.2 UNIX/Linux 系统使用的存储设备
5.3.3 磁盘分区管理与文件系统的创建
5.3.4 文件系统的使用
5.3.5 文件系统的检查、修复与同步
5.4 与文件系统管理相关的其他命令
5.4.1 文件综合查找命令(find)
5.4.2 文件按名查找命令(locate)
5.4.3 文件复制命令(dd)
5.4.4 链接管理命令(ln)
5.4.5 特别文件创建(mknod,mkfifo)
5.4.6 磁盘空间和文件系统的使用情况统计(df)
5.4.7 目录使用磁盘空间情况统计(du)
5.4.8 数据备份与文件归档管理(tar,cpio)
5.4.9 文件的压缩与解压缩
5.5 图形界面下的文件和目录管理
习题 5
实验 5
第 6 章 进程、任务与作业管理
6.1 程序和进程的概念
6.1.1 程序、进程、作业和任务
6.1.2 调度策略与优先级的计算
6.1.3 Linux 操作系统的启动
6.1.4 0#进程与 1#进程
6.1.5 进程状态及查询(ps)
6.1.6 三类进程
6.2 登录 shell 的启动与定制
6.2.1 用户登录过程与登录 shell 的启动
6.2.2 用户登录控制与 shell 的定制
6.3 Linux 系统的启动过程分析
6.3.1 SysVinit
6.3.2 upstart
6.3.3 systemd
6.4 服务管理
6.4.1 systemctl
6.4.2 早期的服务管理
6.4.3 超级服务器(xinetd)
6.4.4 rc-local.service
6.5 进程管理与调度命令
6.5.1 可执行文件的 setuid、setgid 权限和目录的 sticky 属性
6.5.2 进程管理与调度命令
6.5.3 改变进程的家目录(chroot)
6.6 任务的自动调度
6.6.1 at 和 batch
6.6.2 crontab
6.6.3 系统 crontab
6.7 进程管理图形界面
习题 6
实验 6
第 7 章 系统安装、扩充、启动与管理
7.1 系统安装
7.1.1 安装任务与准备
7.1.2 硬盘的物理结构与分区划分
7.1.3 安装 Linux 系统所需的基本分区
7.1.4 安装过程
7.1.5 虚拟机的安装与使用
7.2 引导器(grub)
7.2.1 grub 常用术语
7.2.2 操作界面
7.2.3 grub 及其配置
7.2.4 系统的启动及启动参数修改
7.3 软件包管理
7.3.1 红帽系统的软件包管理
7.3.2 ubuntu 的软件包管理
7.3.3 其他格式的软件包管理
7.3.4 图形界面
7.4 系统升级
7.5 日志管理
7.5.1 日志系统
7.5.2 常见日志文件及阅读
7.5.3 日志滚动
7.6 系统管理
7.6.1 系统管理的任务
7.6.2 系统管理的工具与命令
7.7 内核配置与参数在线调整
7.7.1 内核配置、编译与安装
7.7.2 编译与安装新内核
7.7.3 模块管理
7.7.4 内核参数在线调整
习题 7
实验 7
第 8 章 设备管理
8.1 设备管理概述
8.1.1 Linux 系统支持的设备
8.1.2 设备发现与 udev 简介
8.1.3 系统设置与查看
8.2 打印机的管理与使用
8.2.1 cups 的安装
8.2.2 打印机的安装与配置
8.2.3 cups 系统的启动管理
8.2.4 打印机使用
8.2.5 打印任务管理
8.2.6 cups 的配置文件
8.3 交换区管理
8.3.1 概述
8.3.2 使用交换设备
8.3.3 使用交换文件
8.4 串口的管理与使用
8.4.1 Linux 系统的串口设备
8.4.2 串口管理程序(setserial)
8.4.3 串口和调制解调器管理及通信程序(minicom)
习题 8
实验 8
第 9 章 网络配置、管理与基本应用
9.1 TCP/IP 基础知识
9.1.1 IP 地址
9.1.2 端口及服务
9.1.3 物理地址与逻辑地址
9.1.4 主机名及设置
9.1.5 网卡命名方案
9.2 TCP/IP 配置
9.2.1 与网络有关的配置文件
9.2.2 网络服务及管理
9.2.3 IP 地址配置
9.3 网络管理命令
9.3.1 测试网络是否通(ping)
9.3.2 检查网络状态(netstat)
9.3.3 地址解析协议缓存中的项目管理(arp)
9.3.4 网络接口配置(ifconfig)
9.3.5 网络 IP 管理(ip)
9.3.6 网络接口的启用与停止(ifup/ifdown)
9.3.7 路由表维护(route)
9.3.8 主机及地址查询(nslookup/host)
9.3.9 网络路由跟踪(traceroute)
9.4 网络应用常用命令简介
9.4.1 远程登录
9.4.2 文件传输
9.4.3 邮件收发
9.4.4 文件下载
习题 9
实验 9
第 10 章 Linux 系统的安全
10.1 Linux 系统安全概述
10.1.1 Linux 操作系统的基本安全机制
10.1.2 Linux 系统可能遇到的安全问题及防范策略
10.2 检查和监督系统的运行情况
10.2.1 检查网络
10.2.2 用 ps 或 pstree 检查进程
10.2.3 检查系统的日志文件
10.2.4 停止不需要的服务
10.2.5 去掉多余的具有 SUID 和 SGID 属性的文件
10.3 入侵检测和事件报告
10.3.1 使用完整性检查工具
10.3.2 事件报告制度
10.4 防火墙
10.4.1 iptables
10.4.2 Firewalld
10.4.3 ufw
10.5 SELinux
10.5.1 SELinux 中的安全类型和角色
10.5.2 SELinux 中的策略
10.5.3 SELinux 的 Targeted 策略
10.5.4 SELinux 的策略及改变
10.5.5 SELinux 中的布尔值及改变
10.5.6 检查 SELinux 的状态
10.5.7 SELinux 安全上下文管理
10.5.8 SELinux 的应用
习题 10
实验 10
编程与开发篇
第 11 章 bshell 编程
11.1 正则表达式
11.1.1 字符集
11.1.2 shell 正则表达式
11.2 流编辑(sed)
11.2.1 功能及用法
11.2.2 参数与说明
11.2.3 脚本命令
11.2.4 sed 示例
11.3 模式搜索与处理(awk)
11.3.1 功能及用法
11.3.2 参数说明
11.3.3 记录和域
11.3.4 变量
11.3.5 操作符
11.3.6 控制语句
11.3.7 常用函数
11.3.8 awk 程序的执行
11.3.9 awk 使用示例
11.4 Bourne shell 及其编程
11.4.1 特殊字符
11.4.2 I/O 重定向
11.4.3 变量与参数
11.4.4 shell 的状态
11.4.5 shell 的调用与变量传递
11.4.6 shell 程序设计
11.4.7 命令行参数与选项的处理
11.4.8 shell 程序调试
11.4.9 shell 脚本程序格式
习题 11
实验 11
第 12 章 C/C++及其他编程环境
12.1 编译器
12.1.1 功能及用法
12.1.2 参数及说明
12.1.3 示例
12.1.4 gcc/g++的工作过程
12.2 头文件
12.3 链接器与库文件
12.4 静态库
12.4.1 静态库的管理
12.4.2 构造静态库
12.4.3 使用自己的库
12.5 共享库
12.5.1 共享库构造
12.5.2 共享库的管理
12.5.3 共享库编程
12.5.4 共享库使用示例
12.6 make 与 Makefile
12.6.1 make 的用法简介
12.6.2 Makefile 文件
12.6.3 Makefile 示例
12.7 调试器(gdb)
12.7.1 gdb 功能
12.7.2 gdb 基本命令
12.7.3 程序调试方法
12.8 UNIX/Linux 其他编程工具简介
12.8.1 常用库与 GNOME/GTK 开发
12.8.2 KDevelop/Qt 开发
12.8.3 eclipse
12.8.4 Java 开发
12.8.5 Perl 开发
12.8.6 数据库开发
12.8.7 PHP 开发
12.8.8 Objective-C 开发
12.8.9 Python
12.8.10 R 语言
12.8.11 虚拟化、云计算和大数据应用
习题 12
实验 12
网络服务与应用篇
第 13 章 网络时间服务 NTP
13.1 NTP 协议
13.1.1 NTP 简介
13.1.2 NTP 的工作模式
13.1.3 NTP 服务器选择
13.2 通过 ntp 配置 NTP
13.2.1 软件包的安装
13.2.2 服务管理
13.2.3 配置文件及配置
13.2.4 文件/etc/sysconfig/ntpd 和/etc/default/ntp
13.2.5 防火墙设置
13.2.6 配置文件实例
13.2.7 配置测试
13.2.8 无 NTP 服务的 NTP 客户端
13.3 通过 chrony 配置 NTP
13.3.1 chrony 软件包的安装
13.3.2 服务管理
13.3.3 配置文件 chrony.conf 及默认配置
13.3.4 配置实例
13.3.5 配置测试
13.3.6 其他说明
习题 13
实验 13
第 14 章 基础服务 OpenSSH 和 VNC
14.1 OpenSSH
14.1.1 OpenSSH 协议
14.1.2 软件安装与启动管理
14.1.3 配置文件与服务器设置
14.1.4 客户端及应用
14.1.5 与防火墙和 SELinux 的关系
14.2 VNC
14.2.1 红帽的 TigerVNC
14.2.2 客户端及使用
14.2.3 Ubuntu 的 x11vnc
习题 14
实验 14
第 15 章 Web 服务器 Apache
15.1 Apache 概述
15.2 Apache 的安装和启动
15.2.1 Apache 的安装
15.2.2 Apache 服务器启动管理
15.2.3 Apache 服务的测试
15.3 Apache 的配置文件和配置指令
15.3.1 Apache 主配置文件的结构
15.3.2 Apache 的配置指令
15.4 Web 服务器配置实例
15.4.1 Web 服务器配置实例
15.4.2 Fedora 的图形配置工具
15.5 httpd 与防火墙和 SELinux 的关系
15.5.1 httpd 与防火墙的关系
15.5.2 httpd 与 SELinux 的关系
习题 15
实验 15
第 16 章 DHCP 服务器
16.1 DHCP 介绍
16.1.1 DHCP 协议
16.1.2 DHCP 的工作过程
16.2 DHCP 服务器的安装与启动管理
16.2.1 DHCP 服务器软件安装
16.2.2 启动管理
16.3 DHCP 的配置
16.3.1 配置文件
16.3.2 配置文件中的定义、参数和选项及意义
16.4 DHCP 规划
16.4.1 在不同的网络中使用 DHCP
16.4.2 设置 DHCP 中继
16.4.3 设置备份 DHCP
16.5 DHCP 客户端设置
16.6 DHCP 与防火墙的关系
习题 16
实验 16
第 17 章 FTP 与 TFTP 服务器
17.1 FTP 与 FTP 服务器概述
17.1.1 FTP 的相关概念
17.1.2 Linux 系统的 FTP 服务器
17.2 vsftpd 服务器
17.2.1 vsftpd 服务器的安装与启动
17.2.2 vsftpd 的配置
17.2.3 vsftpd.conf 的常见应用配置
17.3 FTP 服务器的使用
17.3.1 用浏览器访问
17.3.2 使用客户端命令 ftp
17.4 TFTP 与 TFTP 服务器的使用简介
17.4.1 TFTP 协议
17.4.2 TFTP 的安装和配置及应用
17.5 与防火墙和 SELinux 的关系
17.5.1 与防火墙的关系
17.5.2 与 SELinux 的关系
习题 17
实验 17
第 18 章 网络资源共享服务
18.1 网络资源共享简介
18.2 Samba 服务
18.2.1 SMB 协议与 Samba
18.2.2 Samba 的安装与启动管理
18.2.3 Samba 的配置
18.2.4 配置共享打印机
18.2.5 Samba 共享服务使用
18.2.6 Samba 图形界面配置
18.2.7 关于防火墙和 SELinux 的说明
18.3 NFS 服务器
18.3.1 NFS 介绍
18.3.2 NFS 文件系统配置
18.3.3 NFS 系统的使用
18.3.4 NFS 的其他功能
18.3.5 关于 NFS 的其他说明
习题 18
实验 18
第 19 章 域名服务器 DNS
19.1 DNS 概述
19.1.1 IP 与域名的转换
19.1.2 域名空间和区域
19.1.3 DNS 查询
19.1.4 客户端与域名解析相关的配置文件
19.1.5 DNS 服务器的类型
19.2 BIND
19.2.1 BIND 简介
19.2.2 安装 BIND
19.2.3 bind 的启动管理
19.2.4 DNS 服务器的运行方式及工作目录
19.2.5 DNS 服务器配置基础
19.3 DNS 服务器配置示例
19.4 测试 DNS 服务器
19.5 DNS 与防火墙及 SELinux 的关系
19.5.1 DNS 与防火墙的关系
19.5.2 DNS 与 SELinux 的关系
习题 19
实验 19
参考文献
下载地址:https://www.wenjiangs.com/wp-content/uploads/2024/01/cRuRI69Aw6i9nmK1.zip
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: LaTeX 入门 PDF 文档
下一篇: Linux 常用命令手册 PDF 文档
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论