Linux 应用基础教程——Red Hat Enterprise Linux/CentOS 5 / 普通高等教育计算机规划教材
¥30.00定价
作者: 梁如军
出版时间:2011年10月
出版社:机械工业出版社
- 机械工业出版社
- 9787111358954
- 54352
- 0045156379-5
- 平装
- 16开
- 2011年10月
- 工学
- 软件工程
- TP316.81
- 计算机及相关专业
- 本科
内容简介
本书以CentOS 5.5为蓝本,分3篇介绍了Linux操作系统的使用和配置。基础篇介绍了Linux的基础知识、CentOS系统的安装、字符界面常用命令的使用、Shell的功能及其使用。系统管理篇介绍了Linux系统下的软件包管理、磁盘分区、LVM管理、文件系统管理、账户管理、权限管理、Linux下的网络配置、进程管理、系统监视、系统维护、系统安全等。服务与安全篇介绍了FTP服务、NFS服务、Samba服务、DHCP服务和基于PXE安装服务器、DNS服务器、基于Apache的Web服务、E—mail服务、
目录
目 录 出版说明 前言 教学建议 第1篇 基础篇 (第1~3章) 第1章 Linux简介与安装 3 1.1 Linux简介 3 1.1.1 自由软件与Linux 3 1.1.2 Linux系统的特点和组成 4 1.1.3 Linux的内核版本与发行版本 5 1.1.4 Red Hat Linux及其相关产品 6 1.2 准备安装 Linux 7 1.2.1 获取软件 7 1.2.2 安装程序和安装方式 7 1.3 本地光盘手动安装CentOS 5.5 8 1.3.1 安装引导配置 8 1.3.2 安装配置--磁盘分区 10 1.3.3 安装配置--启动加载器 12 1.3.4 安装配置--配置网络 相关参数 14 1.3.5 安装配置--时钟设置 16 1.3.6 安装配置--设置超级 用户口令 16 1.3.7 安装配置--选择安装组件 16 1.3.8 安装过程 17 1.3.9 首次启动的基本配置 18 1.4 思考与实验 19 第2章 字符界面操作基础 21 2.1 字符界面简介 21 2.1.1 选择在字符界面下工作 21 2.1.2 虚拟控制台和本地登录 21 2.1.3 远程登录Linux系统 22 2.1.4 系统运行级别与关机 23 2.2 Shell和命令基础 25 2.2.1 Shell简介 25 2.2.2 命令格式和通配符 28 2.2.3 文件及Linux目录结构 29 2.2.4 获得命令帮助 33 2.3 思考与实验 36 第3章 字符界面操作进阶 37 3.1 Linux常用操作命令 37 3.1.1 文件目录操作命令 37 3.1.2 打包和压缩命令 38 3.1.3 文本文件操作命令 40 3.1.4 信息显示命令 42 3.2 几种提高工作效率的方法 44 3.2.1 自动补全命令行 44 3.2.2 命令历史 44 3.2.3 命令别名 45 3.3 文本编辑器 Vi 46 3.3.1 Vi及其3种运行模式 46 3.3.2 普通模式下的操作 47 3.3.3 命令模式下的操作 49 3.4 进一步使用Shell 51 3.4.1 重定向 51 3.4.2 管道 52 3.4.3 命令替换 54 3.4.4 命令聚合 54 3.5 Shell变量和Shell环境 55 3.5.1 用户自定义变量 55 3.5.2 Shell变量的作用域 57 3.5.3 环境变量 58 3.5.4 设置用户工作环境 59 3.6 思考与实验 60 第2篇 系统管理篇 (第4~13章) 第4章 包管理与系统更新 65 4.1 RPM包管理 65 4.1.1 RPM概述 65 4.1.2 RPM命令的使用 66 4.2 YUM更新系统 69 4.2.1 YUM简介 69 4.2.2 配置YUM 70 4.2.3 使用非官方更新源 73 4.2.4 使用yum命令 75 4.2.5 使用YUM插件 77 4.3 软件仓库管理 78 4.3.1 YUM仓库管理 78 4.3.2 创建本地YUM仓库 78 4.4 思考与实验 79 第5章 硬盘分区和LVM 81 5.1 硬盘和硬盘分区 81 5.1.1 硬盘及其相关概念 81 5.1.2 硬盘分区 82 5.1.3 静态分区的缺点 86 5.2 LVM管理 87 5.2.1 LVM相关概念 87 5.2.2 使用LVM命令 89 5.2.3 LVM应用举例 91 5.3 思考与实验 94 第6章 文件系统管理 95 6.1 Linux文件系统概述 95 6.1.1 文件系统的系统观和用户观 95 6.1.2 Linux下的文件系统 96 6.1.3 使用文件系统的一般方法 97 6.2 挂装和卸装文件系统 98 6.2.1 挂装文件系统 98 6.2.2 在系统启动时自动挂装 文件系统 99 6.2.3 文件系统挂装选项 100 6.2.4 卸装文件系统 101 6.2.5 使用移动存储介质 101 6.3 ext2/ext3文件系统管理 104 6.3.1 ext2/ext3文件系统管理工具 104 6.3.2 创建文件系统 105 6.3.3 检查文件系统 106 6.3.4 调整文件系统属性 107 6.3.5 维护文件系统的卷标 108 6.4 磁盘限额 109 6.4.1 磁盘限额概述 108 6.4.2 配置磁盘限额 110 6.4.3 查看磁盘限额 112 6.5 思考与实验 114 第7章 账户管理和权限管理 115 7.1 账户管理 115 7.1.1 账户管理概述 115 7.1.2 使用命令行工具管理账户 118 7.1.3 口令管理和口令时效 118 7.2 权限管理 122 7.2.1 操作权限概述 122 7.2.2 更改操作权限 123 7.2.3 更改属主和同组人 126 7.2.4 设置文件和目录的生成掩码 126 7.2.5 特殊权限设置 127 7.2.6 使用ACL权限 128 7.2.7 权限设置举例 131 7.3 思考与实验 132 第8章 网络配置和网络工具 133 8.1 Linux与网络 133 8.1.1 Linux网络基础 133 8.1.2 Linux网络应用 134 8.2 配置网络参数 135 8.2.1 临时性网络配置 135 8.2.2 永久性网络配置 139 8.2.3 使用TUI工具配置网络 141 8.3 Linux网络工具 143 8.3.1 网络测试工具 143 8.3.2 网络客户工具 144 8.4 安全的网络客户工具 150 8.4.1 SSH与OpenSSH 150 8.4.2 使用OpenSSH客户端 152 8.4.3 OpenSSH的主机密钥管理 153 8.4.4 OpenSSH的用户密钥管理 154 8.5 思考与实验 157 第9章 进程管理 159 9.1 进程概述 159 9.1.1 进程的概念 159 9.1.2 Linux中的进程 159 9.1.3 进程的类型 160 9.1.4 进程的启动方式 160 9.2 进程管理和作业控制 160 9.2.1 查看系统中的进程 160 9.2.2 杀死系统中的进程 162 9.2.3 作业控制 163 9.3 守护进程 166 9.3.1 守护进程的概念 166 9.3.2 xinetd 167 9.3.3 守护进程管理工具 170 9.3.4 TCP Wrappers 173 9.4 安排周期性任务 175 9.4.1 cron守护进程简介 175 9.4.2 安排用户的cron任务 176 9.4.3 安排系统的cron任务 178 9.5 思考与实验 178 第10章 Shell脚本编程 180 10.1 Shell编程基础 180 10.1.1 Shell脚本简介 180 10.1.2 Shell变量操作 182 10.1.3 位置变量和简单脚本举例 183 10.2 条件测试和分支结构 184 10.2.1 条件测试 184 10.2.2 if语句 186 10.2.3 case 语句 189 10.3 循环结构 191 10.3.1 while和until语句 191 10.3.2 for语句 192 10.4 函数和Shell脚本调试 194 10.4.1 函数 194 10.4.2 Shell脚本跟踪与调试 198 10.5 思考与实验 199 第11章 系统监视与系统日志 200 11.1 监视系统性能 200 11.1.1 系统监视概述 200 11.1.2 top命令 200 11.1.3 mpstat命令 203 11.1.4 vmstat命令 204 11.1.5 iostat命令 206 11.1.6 性能分析标准的经验准则 208 11.2 日志系统和系统日志 209 11.2.1 日志系统 209 11.2.2 配置日志及日志测试工具 212 11.2.3 日志滚动 213 11.2.4 日志分析工具简介 216 11.2.5 查看日志文件 217 11.3 思考与实验 219 第12章 内核管理与系统 启动过程 221 12.1 内核管理与升级 221 12.1.1 Linux内核简介 221 12.1.2 管理内核模块 222 12.1.3 修改内核参数 (/proc与sysctl) 224 12.1.4 内核的升级 226 12.2 系统启动过程 226 12.2.1 RHEL/CentOS启动 过程简介 226 12.2.2 GRUB系统引导器 228 12.2.3 init的配置文件 234 12.3 故障排查 235 12.3.1 故障排查概述 235 12.3.2 系统修复运行级别 237 12.3.3 系统援救环境 239 12.4 思考与实验 242 第13章 系统安全基础 244 13.1 基本的系统安全 244 13.1.1 磁盘布局和文件系统 244 13.1.2 软件和服务 246 13.1.3 物理终端安全 248 13.2 账号安全和访问控制 250 13.2.1 禁止root账号登录 250 13.2.2 可插拔认证模块(PAM) 255 13.2.3 基于PAM的账号保护和 访问控制 260 13.3 思考与实验 266 第3篇 服务与安全篇 (第14~22章) 第14章 FTP服务和NFS服务 269 14.1 FTP服务 269 14.1.1 FTP的相关概念 269 14.1.2 RHEL/CentOS下的 vsftpd服务 271 14.1.3 配置vsftpd服务器 274 14.2 NFS服务 278 14.2.1 NFS的相关概念 278 14.2.2 RHEL/CentOS下的NFS 280 14.2.3 配置NFS服务 282 14.2.4 NFS客户端 284 14.3 思考与实验 285 第15章 Samba服务 287 15.1 SMB/CIFS协议和Samba 简介 287 15.1.1 SMB/CIFS协议 287 15.1.2 Samba及其功能 288 15.2 RHEL/CentOS 5中的Samba 288 15.2.1 安装Samba服务 288 15.2.2 RHEL/CentOS 5中Samba的默认 配置 289 15.2.3 Samba账户及口令文件 290 15.2.4 启动Samba服务 292 15.2.5 测试RHEL/CentOS 5中的默认 配置 293 15.3 Samba的主配置文件 294 15.3.1 Samba配置基础 294 15.3.2 全局参数的设置 296 15.3.3 设置共享资源参数 297 15.4 Samba共享配置举例 298 15.4.1 Samba共享的基本配置 298 15.4.2 为所有用户配置只读共享和 读写共享 300 15.4.3 为指定用户配置读写共享 300 15.4.4 为指定组配置读写共享 301 15.4.5 Samba的其他配置 303 15.5 在Linux环境下访问Samba 共享 305 15.5.1 使用smbclient 305 15.5.2 挂装Samba共享 306 15.6 思考与实验 307 第16章 DHCP服务和安装 服务器 309 16.1 DHCP服务 309 16.1.1 DHCP简介 309 16.1.2 RHEL/CentOS 5的DHCP 服务 311 16.1.3 DHCP服务的配置文件 313 16.1.4 DHCP服务配置举例 314 16.1.5 大型网络的DHCP部署 315 16.2 PXE网络安装服务器 317 16.2.1 自动安装服务器简介 317 16.2.2 配置PXE安装服务器 319 16.2.3 Kickstart文件 324 16.3 思考与实验 328 第17章 DNS服务 329 17.1 DNS相关概念 329 17.1.1 DNS系统与域名空间 329 17.1.2 DNS服务器类型与域管理 332 17.1.3 DNS 查询模式与解析过程 334 17.2 BIND及其基本配置 336 17.2.1 BIND的安装和启动 336 17.2.2 域名服务器的配置语法 338 17.3 域名服务器配置举例 341 17.3.1 域名服务器的基本配置 341 17.3.2 ACL 配置 347 17.3.3 分离式(Split)DNS 配置 350 17.4 思考与实验 353 第18章 Apache基础 354 18.1 WWW和Apache 354 18.1.1 WWW及其组件 354 18.1.2 Apache简介 357 18.1.3 RHEL/CentOS下的Apache 359 18.2 Apache配置基础 360 18.2.1 Apache 的配置文件 360 18.2.2 Apache 的模块 361 18.2.3 Apache 的基本配置指令 362 18.2.4 Apache 的配置容器和指令 作用域 363 18.3 Apache的基本配置 365 18.3.1 主机访问控制和别名机制 365 18.3.2 配置每个用户的Web站点 369 18.3.3 使用.htaccess配置文件 371 18.4 思考与实验 373 第19章 Apache进阶 375 19.1 Apache的虚拟主机 375 19.1.1 虚拟主机简介 375 19.1.2 配置基于IP的虚拟主机 377 19.1.3 配置基于域名的虚拟主机 379 19.1.4 默认的虚拟主机 380 19.2 认证和授权 382 19.2.1 认证和授权及其配置指令 382 19.2.2 认证和授权配置举例 384 19.2.3 访问控制、认证和授权的 综合应用 386 19.3 日志管理 387 19.3.1 日志管理简介 387 19.3.2 配置错误日志 388 19.3.3 配置访问日志 389 19.3.4 虚拟主机的日志分离 390 19.4 思考与实验 392 第20章 Apache动态站点 393 20.1 脚本语言与动态网站技术 393 20.1.1 常用的脚本语言 393 20.1.2 常用的动态网站技术 394 20.1.3 数据库和LAMP 399 20.2 Apache日志统计分析工具 401 20.2.1 Web流量统计及其工具 401 20.2.2 AWStats简介 402 20.2.3 CentOS下的AWStats 403 20.2.4 为虚拟主机配置AWStats 举例 404 20.3 LAMP的环境配置及应用 406 20.3.1 安装配置LAMP环境 406 20.3.2 LAMP的应用 409 20.4 思考与实验 412 第21章 E-mail服务 413 21.1 邮件系统与邮件协议 413 21.1.1 电子邮件系统 413 21.1.2 电子邮件协议 415 21.2 Postfix及其工作原理 416 21.2.1 Postfix简介 416 21.2.2 Postfix的体系结构 417 21.2.3 Postfix邮件传输流程 419 21.2.4 MTA与DNS、LDA与 用户邮箱 421 21.3 邮件服务器的安装和 配置基础 422 21.3.1 RHEL/CentOS 5下的Postfix 422 21.3.2 Postfix 的配置文件 427 21.3.3 配置SMTP认证 429 21.3.4 Postfix的映射表及其应用 432 21.3.5 Dovecot的安装和配置 436 21.4 思考与实验 437 第22章 iptables防火墙 439 22.1 防火墙概述 439 22.1.1 包过滤防火墙 439 22.1.2 NAT 441 22.1.3 相关的TCP/IP知识 442 22.2 Netfilter/iptables 基础 444 22.2.1 Netfilter/iptables概述 444 22.2.2 连接跟踪和状态防火墙 447 22.2.3 数据包在多表中的穿越流程 449 22.3 使用Iptables配置 防火墙 452 22.3.1 RHEL/CentOS防火墙 452 22.3.2 iptables命令 458 22.3.3 防火墙配置举例 464 22.4 思考与实验 466 参考文献 468