华信教育资源网
Linux操作系统实用教程(微课视频版)
丛   书   名: 高等院校技能应用型教材·计算机应用系列
作   译   者:张同光 出 版 日 期:2026-06-01
出   版   社:电子工业出版社 维   护   人:薛华强 
书   代   号:G0520490 I S B N:9787121520495

图书简介:

本书以RHEL 的最新发行版为蓝本,坚持理论够用、侧重实用的原则,用案例/示例来讲解每个知识点,对Linux 进行了较为详尽的阐述,结构清晰,通俗易懂,力争做到使读者在兴趣中学习Linux。本书是一本比较好的Linux 入门教材,面向技术型读者,主要针对计算机及其相关专业的学生。本书共7 章,主要内容包括:Linux 简介与安装、Linux 用户接口与软件包管理、Shell 脚本编程、系统管理、硬盘与文件管理、组建Linux 局域网、提供Internet 服务。本书适合作为高等院校计算机及相关专业的教材,也可供培养技能型紧缺人才的机构使用。
定价 59.0
您的专属联系人更多
关注 评论(0) 分享
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源

    本书资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书以RHEL 的最新发行版为蓝本,坚持理论够用、侧重实用的原则,用案例/示例来讲解每个知识点,对Linux 进行了较为详尽的阐述,结构清晰,通俗易懂,力争做到使读者在兴趣中学习Linux。本书是一本比较好的Linux 入门教材,面向技术型读者,主要针对计算机及其相关专业的学生。本书共7 章,主要内容包括:Linux 简介与安装、Linux 用户接口与软件包管理、Shell 脚本编程、系统管理、硬盘与文件管理、组建Linux 局域网、提供Internet 服务。本书适合作为高等院校计算机及相关专业的教材,也可供培养技能型紧缺人才的机构使用。

    图书详情

    ISBN:9787121520495
    开 本:16(185*260)
    页 数:268
    字 数:440

    本书目录

    目录
    第1 章 Linux 简介与安装·······················1
    1.1 Linux 简介····································1
    1.1.1 Linux 的起源·······························1
    1.1.2 Linux 的特点·······························2
    1.1.3 Linux 的版本·······························3
    1.2 硬盘分区······································4
    1.2.1 MBR 分区··································4
    1.2.2 GPT 分区···································6
    1.2.3 文件系统····································7
    1.3 在VirtualBox 中安装RHEL/Rocky ·······································.10
    1.3.1 实例——安装VirtualBox ·············.10
    1.3.2 实例——在VirtualBox 中
    安装RHEL/Rocky ·····················.10
    1.4 U 盘安装RHEL/Rocky ···············.12
    1.4.1 硬盘分区示例···························.13
    1.4.2 Windows 中制作安装U 盘(Ventoy)································.13
    1.4.3 使用GRUB2 制作RHEL/Rocky
    的安装U 盘·····························.14
    1.5 引导工具GRUB2 的设置与应用·.15
    1.5.1 GRUB2 设备与文件命名·············.15
    1.5.2 GRUB2 配置文件······················.16
    1.5.3 GRUB2 删除多余引导项·············.18
    1.5.4 GRUB2 命令行常用命令·············.19
    1.5.5 实例——GRUB2 的应用··············.19
    1.6 RHEL 的启动流程······················.21
    1.6.1 RHEL 的启动流程——BIOS+MBR·.22
    1.6.2 RHEL 的启动流程——UEFI+GPT··.25
    1.7 习题··········································.26
    第2 章 Linux 用户接口与软件包管理··.28
    2.1 实例——GNOME 及其配置工具·.28
    2.1.1 安装GNOME 经典模式桌面环境··.29
    2.1.2 GNOME 和GNOME 经典模式······.29
    2.1.3 GNOME 配置工具·····················.30
    2.1.4 设置中文输入法························.30
    2.2 实例——Shell ····························.30
    2.2.1 控制台与终端···························.31
    2.2.2 Shell 命令行·····························.31
    2.2.3 历史命令·································.32
    2.2.4 命令别名·································.34
    2.2.5 通配符与文件名························.34
    2.2.6 输入/输出重定向与管道··············.35
    2.2.7 Linux 快捷键····························.37
    2.3 实例——文本编辑器··················.38
    2.4 RPM··········································.40
    2.4.1 RPM 简介································.40
    2.4.2 RPM 的使用·····························.41
    2.4.3 实例——安装QQ、微信、WPS、百度网盘·································.43
    2.5 YUM 与DNF·····························.44
    2.5.1 YUM 与DNF 简介····················.44
    2.5.2 实例——使用dnf 命令················.44
    2.5.3 DNF 的配置文件·······················.45
    2.5.4 实例——安装第三方源···············.46
    2.5.5 实例——创建本地仓库···············.48
    2.5.6 RHEL 内核······························.49
    2.5.7 重置GRUB······························.49
    2.6 习题··········································.49
    第3 章 Shell 脚本编程·························.51
    3.1 实例——Shell 编程基础··············.51
    3.1.1 Shell 脚本的建立和执行··············.51
    3.1.2 Shell 变量································.53
    3.1.3 测试命令·································.58
    3.1.4 逻辑操作·································.59
    3.1.5 算术运算·································.61
    3.1.6 内部命令·································.62
    3.2 实例——Shell 程序设计的流程控制····································.65
    3.2.1 复合结构·································.65
    3.2.2 条件分支·································.66
    3.2.3 循环结构和退出循环··················.69
    3.3 实例——Shell 脚本中的函数·······.72
    3.4 实例——Shell 脚本的调试··········.75
    3.4.1 调试选项·································.75
    3.4.2 使用调试选项的3 种方法············.75
    3.4.3 内部调试技巧···························.76
    3.4.4 示例分析·································.76
    3.5 习题··········································.78
    第4 章 系统管理·································.79
    4.1 实例——用户管理······················.79
    4.1.1 用户管理命令···························.80
    4.1.2 组管理命令······························.82
    4.1.3 用户查询命令···························.83
    4.1.4 su 和sudo 命令·························.85
    4.1.5 更改root 密码··························.87
    4.2 实例——进程管理······················.88
    4.2.1 监控进程·································.88
    4.2.2 搜索进程·································.93
    4.2.3 终止进程·································.95
    4.2.4 进程优先级······························.96
    4.2.5 前台与后台进程························.97
    4.2.6 周期性/定时执行任务·················.99
    4.2.7 以守护进程方式执行任务············101
    4.2.8 终端复用·································102
    4.3 系统和服务管理·························103
    4.3.1 系统和服务管理器·····················103
    4.3.2 实例——监视和控制systemd 的命令:systemctl ························104
    4.3.3 实例——单元(Unit)················105
    4.3.4 单元的配置文件························106
    4.3.5 目标(target) ··························108
    4.3.6 systemd 定时器·························108
    4.3.7 开机启动:systemd ····················109
    4.3.8 开机启动:rc.local ····················.110
    4.3.9 systemd 系统管理·····················.110
    4.3.10 实例——日志管理···················.111
    4.4 实例——其他系统管理··············.114
    4.4.1 查询系统信息··························.114
    4.4.2 查询硬件信息··························.116
    4.4.3 procfs 文件系统与sysctl 命令······.116
    4.4.4 系统电源状态管理命令··············.117
    4.4.5 其他命令································.119
    4.5 实例——系统监视······················121
    4.5.1 GNOME 系统监视器··················121
    4.5.2 系统活动情况报告(sar) ···········121
    4.6 虚拟化技术································122
    4.7 cgroups ······································123
    4.8 cgroups 与systemd ·····················124
    4.9 namespaces ································126
    4.10 容器和云·································126
    4.11 习题········································127
    第5 章 硬盘与文件管理······················130
    5.1 实例——硬盘管理······················130
    5.1.1 查看硬盘分区···························130
    5.1.2 分区·······································132
    5.1.3 格式化分区······························134
    5.1.4 检查与修复文件系统··················136
    5.1.5 挂载卸载·································137
    5.1.6 硬盘空间管理···························139
    5.1.7 其他硬盘相关命令·····················141
    5.1.8 制作镜像文件···························142
    5.1.9 数据同步·································143
    5.1.10 图形化分区管理······················144
    5.1.11 硬盘性能测试·························144
    5.2 实例——文件与目录管理···········145
    5.2.1 Linux 文件系统的目录结构··········146
    5.2.2 查看目录内容···························146
    5.2.3 查看文件内容···························148
    5.2.4 检查文件类型···························150
    5.2.5 校验文件完整性························151
    5.2.6 文件与目录的创建、删除、复制、移动及重命名··················152
    5.2.7 文件搜索命令···························154
    5.2.8 文件操作命令···························156
    5.2.9 文件的追加、合并、分割············157
    5.2.10 文件的比较、排序···················159
    5.2.11 文件的链接····························161
    5.2.12 设备文件·······························162
    5.2.13 进程与文件····························162
    5.2.14 文件下载命令·························163
    5.2.15 xargs 命令······························164
    5.3 实例——文件与目录的安全········165
    5.3.1 chmod 与umask 命令··················165
    5.3.2 chown 和id 命令·······················166
    5.3.3 chgrp 命令·······························166
    5.3.4 chroot 命令······························167
    5.4 强制位与粘贴位·························167
    5.5 文件隐藏属性····························168
    5.6 访问控制列表(ACL) ··············169
    5.7 文件的压缩与解压缩··················170
    5.7.1 gzip 和gunzip 命令····················170
    5.7.2 bzip2 和bunzip2 命令·················170
    5.7.3 xz 命令···································171
    5.7.4 zip 和unzip 命令·······················171
    5.7.5 显示压缩文件内容·····················171
    5.7.6 实例——tar 命令·······················172
    5.7.7 cpio 命令·································172
    5.8 LVM··········································173
    5.8.1 LVM 概述································173
    5.8.2 逻辑卷的创建过程·····················173
    5.8.3 逻辑卷的扩展与缩小··················175
    5.8.4 卷组的扩展与删除·····················175
    5.9 RAID ········································176
    5.9.1 RAID 概述·······························176
    5.9.2 软件RAID 创建过程··················177
    5.9.3 查看、停止与启动软件RAID·······179
    5.10 硬盘配额·································179
    5.10.1 相关命令·······························179
    5.10.2 实现硬盘配额·························182
    5.11 习题········································183
    第6 章 组建Linux 局域网···················186
    6.1 实例——使用NetworkManager管理网络接口····························186
    6.1.1 GUI 方式·································187
    6.1.2 CLI 方式·································187
    6.1.3 NetworkManager 的非托管设备·····188
    6.1.4 自动配置/etc/resolv.conf···············188
    6.1.5 手动配置/etc/resolv.conf···············189
    6.1.6 默认网关的设置························189
    6.1.7 ifconfig、dhclient、route、ping、
    traceroute、arping ······················190
    6.1.8 net-tools 与iproute2····················191
    6.1.9 使用BCC(eBPF 程序)进行网络追踪·································192
    6.1.10 检查无线网络(Wi-Fi)信息······193
    6.2 实例——DHCP 服务器···············193
    6.2.1 DHCP 概述······························193
    6.2.2 配置DHCP 服务器····················194
    6.2.3 配置DHCP 客户端····················197
    6.3 实例——NFS 服务器··················197
    6.3.1 配置NFS 服务器·······················197
    6.3.2 访问NFS 服务器的共享目录········198
    6.4 实例——Samba 服务器···············198
    6.4.1 Samba 概述······························198
    6.4.2 配置Samba 服务器····················199
    6.4.3 Samba 服务器的配置文件············200
    6.4.4 匿名访问Samba 共享的资源········201
    6.4.5 账户访问Samba 共享的资源········201
    6.4.6 SELinux ··································203
    6.5 防火墙firewalld ·························204
    6.5.1 Netfilter 组件····························205
    6.5.2 firewalld 简介···························205
    6.5.3 firewalld 配置···························206
    6.5.4 firewall-cmd 设置NAT ················207
    6.5.5 firewall-cmd 设置服务器防火墙规则·······································209
    6.6 代理服务器Squid 的设置···········210
    6.6.1 代理服务器Squid 简介···············210
    6.6.2 局域网使用Squid 共享上网·········210
    6.7 配置基于策略的路由··················212
    6.8 多路径TCP(MPTCP)·············214
    6.9 实例——安全文件传输···············215
    6.10 Linux 流量控制························217
    6.11 实例——监控网络连接·············217
    6.12 实例——网络抓包与分析·········218
    6.13 网络故障排查··························219
    6.14 习题········································219
    第7 章 提供Internet 服务···················222
    7.1 实例——SSH ·····························222
    7.1.1 SSH 简介································222
    7.1.2 SSH 服务器的设置·····················223
    7.1.3 SSH 客户端的应用·····················224
    7.2 实例——DNS 服务及配置··········225
    7.2.1 DNS 概述································225
    7.2.2 BIND ·····································226
    7.2.3 配置DNS 服务器······················226
    7.2.4 view 指令································228
    7.2.5 测试DNS 服务器······················230
    7.2.6 辅助域名服务器························231
    7.2.7 缓存服务器······························232
    7.3 实例——Web 服务器的设置:Apache ·····································233
    7.3.1 Apache 简介·····························233
    7.3.2 Apache 服务器的默认配置···········234
    7.3.3 静态网站建设···························234
    7.3.4 为每个用户配置Web 站点···········235
    7.3.5 配置虚拟主机···························236
    7.3.6 基于主机的授权························237
    7.3.7 基于用户的认证························238
    7.3.8 组织和管理Web 站点·················239
    7.3.9 CGI 运行环境的配置··················241
    7.3.10 启用HTTPS ···························242
    7.4 实例——Web 服务器的设置:Nginx ·······································243
    7.4.1 安装Nginx ······························243
    7.4.2 安装PHP 和PHP-FPM················244
    7.4.3 安装MariaDB···························245
    7.4.4 MariaDB 的简单使用··················246
    7.4.5 动态网站建设(LNMP) ············247
    7.5 实例——FTP 服务器的设置········248
    7.5.1 FTP 概述·································248
    7.5.2 vsftpd 服务器···························250
    7.5.3 匿名用户上传/下载文件··············250
    7.5.4 本地用户上传/下载文件··············252
    7.6 邮件服务器简介·························253
    7.7 实例——服务器管理软件Cockpit······································256
    7.8 习题··········································256
    参考文献···············································258
    展开

    前     言

    前言
    Linux 是一种免费的类UNIX 操作系统,它继承了UNIX 系统的强大功能和高稳定性。Linux 最初是由芬兰赫尔辛基大学的学生林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)开发的,并于1991 年首次公开发布。托瓦兹允许人们免费且自由地使用该系统的源代码,并鼓励他人参与其进一步开发。为了促进Linux 的成长,他根据GNU GPL(General
    Public License,GNU 通用公共许可证)发布了其内核,这得到了许多专业人士的支持,他们将GNU 项目的诸多成果移植到Linux 操作系统中。在众多技术人员、研究者和Linux 爱好者的帮助下,最初版本的Linux 逐步修复了错误,并不断融入新功能。如今,Linux 已发展成为一个功能丰富、稳定可靠的操作系统。
    Red Hat Enterprise Linux(简称RHEL)是由开源公司Red Hat(红帽)开发和维护的Linux发行版,是当今全球极受欢迎的企业级Linux 发行版之一,其版权遵守GNU GPL。它为服务器和桌面环境带来了UNIX 工作站般的强大能力和灵活性,同时提供了完整的互联网应用软件,以及功能全面、易于使用的GUI 桌面环境。Rocky Linux(后续简称Rocky)作为RHEL的开源兼容替代方案,同样具备高度的稳定性和企业级支持,适用于生产环境。
    为满足Linux 操作系统教学的需求,我们编写了本书,本书涵盖了实际项目中常用的知识点和操作技巧,是读者进入Linux 领域的宝贵指南,能为后续深入学习Linux 奠定坚实基础。
    一本优秀的入门教材能够帮助读者迅速掌握Linux 的操作方法和系统基本用法。
    当前,Linux 入门教材主要面向两类读者:非技术型和技术型。
    非技术型读者:对Linux 并非真正感兴趣,仅将其用于上网、听音乐、编辑文档等。面向这类读者的教材以插图为主,重点讲解GUI 下的操作。因此,这种使用Linux 的方式仍沿袭Windows 的思维模式。
    技术型读者:对Linux 充满兴趣。面向这类读者的教材从一开始就讲解系统基本命令,摆脱Windows 的思维模式,这将为读者的后续学习提供极大帮助,使其逐步领悟Linux 的核心(命令行)精髓。
    本书面向技术型读者,主要针对计算机及其相关专业的学生。
    本书共分为7 章,涵盖了RHEL 10/Rocky 10 的诸多内容。第1 章简要概述了Linux 的起源、特点和版本,随后详细讲解了硬盘分区、在VirtualBox 中安装RHEL/Rocky、U 盘安装RHEL/Rocky、GRUB2 引导工具及RHEL 的启动流程。第2 章介绍了Linux 用户接口,特别是GNOME 桌面环境和Shell 命令行(通过对这一部分的学习,读者能真正入门Linux 命令行),然后深入探讨了文本编辑器、RPM 软件包管理及YUM/DNF 的使用。第3 章介绍了Shell脚本编程,包括编程基础、流程控制、函数和调试。第4 章重点介绍系统管理,包括用户/进程/服务管理、系统监视、日志管理及虚拟化技术、cgroups、namespaces 和容器等高级主题。第5 章主要介绍硬盘与文件管理,包括硬盘分区/格式化/挂载、文件操作/搜索/压缩、权限控制、LVM、RAID 和硬盘配额等。第6 章介绍了组建Linux 局域网的相关内容,包括DHCP服务器、NFS 服务器、Samba 服务器、防火墙firewalld、代理服务器Squid 及网络故障排查等配置。第7 章介绍了RHEL/Rocky 中的常用网络服务,包括SSH、DNS(BIND)、Web 服务器(Apache 和Nginx)、FTP(vsftpd)、邮件服务器简介及服务器管理软件Cockpit。
    本书的重点在于前5 章,只有掌握好前5 章,读者才能真正入门Linux,后续章节的学习才会更轻松,甚至可自学。随着读者学习并掌握更多计算机核心课程的相关知识,读者便能在广阔的Linux 世界中深入探索。因此,本书是一本优秀的入门教材。希望读者在学习过程中注重夯实基础、理解理论,避免浮躁。
    本书由北京邮电大学计算机专业博士、高校教授张同光,以及李艳翠、刘家磊、宋丽丽和田乔梅共同担任主编。其中,李艳翠、刘家磊、宋丽丽共同编写第1~4 章,张同光编写第5~6 章,田乔梅编写第7 章。全书最后由张同光统稿和定稿。
    本书得到了网络与交换技术全国重点实验室开放课题(项目编号:SKLNST-2025-1-11)的支持,在此表示感谢。
    本书对应的电子课件等教学资源可以到华信教育资源网下载。本书配套资源提供了103个教学视频,读者在学习的过程中,扫描教学视频二维码可以观看视频。
    在编写本书的过程中,得到了电子工业出版社薛华强编辑的大力支持和帮助,在此表示衷心的感谢。
    由于编者水平有限,书中难免有欠妥之处,敬请广大读者批评指正。
    编 者
    2025 年7 月
    展开

    作者简介

    张同光,北京邮电大学计算机科学与技术专业博士。任教于西南交通大学希望学院,主要从事云计算、边缘计算、嵌入式系统、操作系统、计算机网络和人工智能等方面的教学与研究。讲授过20余门计算机专业课程。主编了20余本教材。发表SCI、EI等学术论文30余篇。主持或参与了多个省部级以上项目。
  • 样 章 试 读
    本书暂无样章试读!
  • 图 书 评 价 我要评论
华信教育资源网