书籍详情

UNIX从入门到精通(第二版)

UNIX从入门到精通(第二版)

作者:邢国庆,庞俊华,陈智建 编著

出版社:电子工业出版社

出版时间:2010-03-01

ISBN:9787121102950

定价:¥56.00

购买这本书可以去
内容简介
  本书从UNIX的基本命令入手,由浅入深,逐步阐述UNIX系统的基本概念与设计原理,同时给出了大量的应用实例。在此基础上,对UNIX的核心精华部分,如Shell编程、进程管理,用户管理,磁盘空间管理、文件系统内部组织、文件系统维护、系统启动与关机、TCP/IP网络维护与应用、软件包的制作与安装等方面进行了深入的讨论。本书内容丰富、重点突出,文字简练、语言流畅,实用性强。本书可作为大专院校师生UNIX操作系统课程的教学参考书,也可作为IT从业者的UNIX自学手册。
作者简介
暂缺《UNIX从入门到精通(第二版)》作者简介
目录
第1章 UNIX概述与安装 1
1.1 UNIX早期发展过程概述 1
1.1.1 UNIX的缘起 2
1.1.2 UNIX的交替发展 4
1.1.3 UNIX的战国时代 5
1.1.4 策略与标准之争 6
1.1.5 UNIX的黑暗时期 7
1.1.6 AT&T UNIX System V Release 4.0 7
1.1.7 后UNIX时代 8
1.2 UNIX的层次组织结构 9
1.3 UNIX的逻辑组织结构 10
1.3.1 进程管理子系统 11
1.3.2 内存管理子系统 12
1.3.3 文件管理子系统 12
1.3.4 I/O管理子系统 13
1.3.5 硬件系统 13
1.4 安装Solaris操作系统 13
1.4.1 硬件要求 14
1.4.2 安装步骤 14
第2章 命令行基础知识 25
2.1 命令行结构 25
2.2 后台进程 28
2.3 标准输入、标准输出与标准错误输出 28
2.4 输入输出重定向 29
2.5 管道 33
2.6 元字符与文件名生成 35
2.7 转义与引用 38
2.8 命令历史 40
2.8.1 fc命令 41
2.8.2 history命令 43
2.8.3 重复执行先前的命令 44
2.8.4 编辑并执行校正后的命令 46
2.8.5 命令行补充 47
2.9 命令别名 48
2.10 作业控制 51
2.11 会话记录 53
2.12 使用man命令查询系统参考手册 55
第3章 文件系统基础知识 57
3.1 文件系统的层次结构 57
3.1.1 树形层次结构 57
3.1.2 路径名 58
3.2 文件系统的组织结构 59
3.3 文件的类型 62
3.3.1 普通文件 63
3.3.2 目录文件 64
3.3.3 特殊文件 66
3.3.4 链接文件 70
3.3.5 符号链接文件 71
3.3.6 管道文件 73
3.4 文件的安全保护机制 73
3.4.1 显示文件的访问权限 74
3.4.2 修改文件的访问权限 75
3.4.3 设置文件的访问权限 76
3.4.4 其他访问权限设置 78
第4章 文件和目录操作 80
4.1 创建文件 80
4.2 显示文件列表 81
4.2.1 使用ls命令显示文件列表 81
4.2.2 利用通配符显示文件 83
4.2.3 显示隐藏文件 84
4.2.4 递归显示目录与文件 85
4.3 显示文件内容 86
4.3.1 使用cat命令显示文件 86
4.3.2 使用more命令分页显示文件 86
4.3.3 使用head命令显示文件前几行内容 88
4.3.4 使用tail命令显示文件最后几行内容 88
4.4 复制文件 89
4.5 移动文件 89
4.6 删除文件 91
4.7 显示当前工作目录 92
4.8 改换目录 92
4.9 创建目录 94
4.10 移动目录 94
4.11 复制目录 95
4.12 删除目录 96
4.13 比较文件之间的差别 96
4.13.1 使用diff命令比较两个文件 96
4.13.2 使用diff3命令比较三个文件 97
4.14 从系统中检索文件 98
4.14.1 简单检索 100
4.14.2 使用逻辑运算符 100
4.14.3 利用find命令本身实现其他处理功能 101
4.14.4 利用管道实现其他处理功能 101
4.15 检索文件内容 102
4.15.1 利用grep检索文件内容 102
4.15.2 过滤其他命令的输出数据 103
4.15.3 使用grep检索多个文件 103
4.15.4 检索不包含特定字符串的文本行 104
4.15.5 在grep中使用正则表达式 104
4.15.6 检索元字符本身 107
4.15.7 在命令行中使用引号 107
4.16 排序 107
第5章 编辑文件 109
5.1 启动vi编辑器 109
5.1.1 创建文件 109
5.1.2 状态行 109
5.2 vi编辑器的两种工作模式 110
5.2.1 输入模式 110
5.2.2 命令模式 110
5.3 保存编辑的文件并退出vi 111
5.4 vi编辑器的基本命令 112
5.4.1 移动光标位置 112
5.4.2 输入文本 113
5.4.3 修改与替换文本 113
5.4.4 撤销先前的修改 114
5.4.5 删除文本 115
5.4.6 复制、删除与粘贴文本 115
5.4.7 重复执行指定次数的命令 116
5.5 使用ex命令 116
5.5.1 显示行号 116
5.5.2 多行复制 117
5.5.3 移动文本行 117
5.5.4 删除文本行 118
5.6 检索与替换 118
5.6.1 检索字符串 118
5.6.2 模式检索 119
5.6.3 替换字符串 120
5.7 编辑多个文件 120
5.7.1 编辑多个文件 120
5.7.2 合并文件与合并文本行 121
5.8 定制vi编辑器的运行环境 121
5.8.1 临时设定vi的运行环境 121
5.8.2 永久性地定制vi的运行环境 123
5.9 其他特殊说明 124
5.9.1 删除或替换特殊字符 124
5.9.2 在编辑期间运行UNIX命令 124
5.10 vi编辑器命令总结 125
第6章 Shell基础知识 129
6.1 shell与Shell脚本 129
6.1.1 为什么需要Shell编程 129
6.1.2 什么是Shell脚本 130
6.1.3 运行Shell脚本 131
6.1.4 退出与出口状态 131
6.1.5 调用适当的Shell解释程序 133
6.1.6 位置参数 135
6.2 变量与变量替换 137
6.2.1 变量分类 137
6.2.2 变量赋值 138
6.2.3 内部变量 138
6.2.4 变量引用与替换 141
6.2.5 变量的间接引用 143
6.2.6 特殊的变量替换 144
6.2.7 变量声明与类型定义 147
6.3 命令与命令替换 148
6.3.1 Shell内部命令 148
6.3.2 部分命令介绍 151
6.3.3 命令替换 161
6.4 test语句 163
6.4.1 文件测试运算符 164
6.4.2 字符串测试运算符 165
6.4.3 整数值测试运算符 167
6.4.4 逻辑运算符 168
6.5 命令行的解释执行过程 169
6.5.1 读取命令行 170
6.5.2 命令历史替换 171
6.5.3 命令别名替换 171
6.5.4 花括号扩展 171
6.5.5 波浪号替换 172
6.5.6 I/O重定向 173
6.5.7 变量替换 174
6.5.8 算术运算结果替换 174
6.5.9 命令替换 174
6.5.10 单词解析 175
6.5.11 文件名生成 175
6.5.12 引用字符处理 176
6.5.13 进程替换 177
6.5.14 环境处理 178
6.5.15 执行命令 178
6.5.16 跟踪执行过程 179
6.5.17 实例验证 179
第7章 Shell高级编程 181
7.1 if条件语句 181
7.1.1 if语句的表现形式 181
7.1.2 嵌套的if-then条件测试 183
7.2 case分支语句 185
7.3 for循环语句 187
7.4 while循环语句 191
7.5 until循环语句 193
7.6 select循环语句 194
7.7 嵌套的循环 195
7.8 循环控制与辅助编程命令 197
7.8.1 break和continue命令 197
7.8.2 true命令 199
7.8.3 sleep命令 199
7.8.4 shift命令 200
7.8.5 getopt命令 200
7.8.6 getopts命令 202
7.9 循环语句的I/O重定向 204
7.9.1 while循环的I/O重定向 205
7.9.2 until循环的I/O重定向 206
7.9.3 for循环的I/O重定向 206
7.10 here文档 207
7.11 Shell函数 212
7.12 逻辑与和逻辑或并列结构 218
7.12.1 逻辑与命令并列结构 218
7.12.2 逻辑或命令并列结构 219
7.13 Shell数组 220
7.14 信号的捕捉与处理 225
7.15 其他Shell课题 229
7.15.1 子Shell 229
7.15.2 Shell脚本的调试 230
7.15.3 系统性能考虑 235
第8章 进程管理 237
8.1 ps命令概述 237
8.2 查询进程及其状态信息 239
8.2.1 查询当前活动的进程 239
8.2.2 查询系统中所有的进程 240
8.2.3 显示进程的重要状态信息 241
8.2.4 显示进程的详细状态信息 241
8.3 监控进程及系统资源 242
8.4 终止进程的运行 245
8.5 调整进程的调度类别及优先级 248
8.5.1 显示进程的调度类别与优先级 248
8.5.2 按照指定的调度类别与优先级运行进程 249
8.5.3 调整进程的调度类别与优先级 250
8.5.4 设置实时进程的时间片 250
8.6 调整分时进程的优先级 251
8.6.1 nice命令 251
8.6.2 renice命令 252
8.6.3 调整进程优先级的作用 252
8.7 定时运行系统任务和用户程序 253
8.7.1 cron守护进程的调度过程 253
8.7.2 调度定时重复执行的任务 255
8.7.3 提交一次性定时执行的任务 255
8.8 调度重复执行的任务 255
8.8.1 crontab的工作原理 256
8.8.2 创建和编辑crontab文件 257
8.8.3 显示crontab文件 258
8.8.4 删除crontab文件 258
8.8.5 crontab命令的访问控制 259
8.8.6 应用实例——数据库定时备份 260
8.9 调度一次性执行的作业 261
8.9.1 提交at作业 261
8.9.2 显示at作业及作业队列 263
8.9.3 删除at作业 263
8.9.4 at命令的访问控制 263
8.9.5 应用实例——系统定时关机 264
第9章 用户管理 266
9.1 增加与删除用户 266
9.1.1 /etc/passwd文件 266
9.1.2 /etc/shadow文件 267
9.1.3 用户管理实例 268
9.2 定制用户的工作环境 272
9.2.1 选择命令解释程序 272
9.2.2 设置用户初始化文件 273
9.2.3 定制Shell工作环境 275
9.3 增加与删除用户组 280
9.4 监控用户 281
9.4.1 利用who命令查询系统中的用户 282
9.4.2 利用finger命令查询系统中的用户 283
9.4.3 利用w命令查询系统中的用户活动 283
9.4.4 向注册用户发送消息 284
9.5 以不同用户的身份访问系统 284
第10章 软件包的制作与管理 287
10.1 软件包组成简介 287
10.1.1 基本组成部分 287
10.1.2 选用的信息文件 288
10.1.3 选用的Shell脚本文件 288
10.2 软件包的相关文件和命令 288
10.2.1 pkginfo文件 289
10.2.2 prototype文件 290
10.2.3 pkgmap文件 293
10.2.4 copyright文件 293
10.2.5 depend文件 294
10.2.6 space文件 294
10.2.7 compver文件 295
10.2.8 软件包的相关工具 295
10.3 制作软件包 295
10.3.1 制作软件包的步骤 296
10.3.2 创建pkginfo文件 301
10.3.3 利用pkgproto命令创建prototype文件 301
10.3.4 利用pkgmk命令制作软件包 304
10.3.5 pkgtrans命令 308
10.4 安装软件包 310
10.5 查询软件包 312
10.6 检测软件包 313
10.7 卸载软件包 315
第11章 磁盘空间管理 318
11.1 查询磁盘空间信息 318
11.1.1 常用的磁盘空间管理工具 318
11.1.2 使用df命令检查存储空间的使用情况 318
11.1.3 使用du命令检查存储空间占用情况 321
11.1.4 使用quot命令查询每个用户占用的存储空间 323
11.1.5 使用find命令找出超大容量的文件 324
11.1.6 使用find命令找出长期闲置的文件 324
11.1.7 使用find命令找出并删除core文件 325
11.1.8 使用ls命令检测文件的大小 325
11.2 采用标准工具备份与恢复数据 326
11.2.1 利用cpio实现备份和恢复 327
11.2.2 利用tar实现备份和恢复 333
11.2.3 利用dd实现数据的复制 337
11.3 文件系统限额管理 339
11.3.1 限额概述 339
11.3.2 设置限额 341
11.3.3 限额的维护 343
第12章 TCP/IP网络管理 347
12.1 TCP/IP简介 347
12.1.1 TCP/IP协议的层次结构 347
12.1.2 TCP/IP协议如何处理数据通信 349
12.2 网络接口设置 351
12.3 主机名字解析 353
12.4 网络路由设置 354
12.4.1 静态路由 354
12.4.2 动态路由 355
12.5 配置网络服务 356
12.6 网络管理与维护 358
12.6.1 使用ifconfig命令维护网络接口 358
12.6.2 使用netstat命令监控网络状态 359
12.6.3 使用ping命令测试远程主机的连通性 363
12.6.4 使用ftp命令检测网络主机的传输性能 364
12.6.5 使用traceroute命令跟踪路由信息 365
第13章 TCP/IP网络应用 367
13.1 OpenSSH 367
13.1.1 sshd_config配置文件 367
13.1.2 ssh_config配置文件 370
13.1.3 使用SSH注册到远程系统 372
13.1.4 使用SSH执行远程系统中的命令 373
13.1.5 使用SCP替代FTP 373
13.1.6 使用SFTP替代FTP 374
13.1.7 SSH与SCP的无密码注册 375
13.1.8 OpenSSH的安全考虑 377
13.2 Telnet远程系统注册 378
13.3 FTP文件传输 379
13.3.1 连接FTP服务器 381
13.3.2 FTP应用 382
13.3.3 FTP访问控制 384
13.3.4 FTP自动注册 384
第14章 网络文件系统 386
14.1 NFS简述 386
14.2 配置NFS服务器 387
14.3 配置NFS客户系统 390
14.3.1 安装远程文件系统 390
14.3.2 设置/etc/vfstab文件 392
14.4 NFS自动安装 392
14.4.1 主映射文件 393
14.4.2 直接映射文件 394
14.4.3 间接映射文件 394
第15章 系统启动与关机 396
15.1 磁盘分区与初始引导 396
15.1.1 磁盘分区 396
15.1.2 初始引导过程 399
15.1.3 系统初始化 400
15.2 init进程与系统生成 402
15.2.1 运行级 403
15.2.2 /etc/inittab文件 405
15.2.3 处理方式 405
15.2.4 /etc/inittab文件举例 406
15.2.5 启动用户定义的应用程序 409
15.3 用户注册过程 409
15.3.1 用户注册的处理过程 409
15.3.2 utmpx和wtmpx文件 410
15.4 系统关机过程 411
15.4.1 使用shutdown命令关闭系统 411
15.4.2 使用init命令关闭系统 412
15.4.3 使用其他命令关机 412
15.5 应用实例 413
第16章 文件系统内部组织 415
16.1 文件系统的组织结构 415
16.2 超级块 417
16.3 信息节点 418
16.3.1 特权标志位 418
16.3.2 数据块地址数组 420
16.4 数据区与空闲数据存储块的组织 421
16.5 信息节点的分配与释放 421
16.6 数据块的分配与释放 422
16.7 信息节点与目录和文件的关系 424
16.8 UFS文件系统 424
16.8.1 UFS文件系统的组织结构 424
16.8.2 引导块 425
16.8.3 超级块 425
16.8.4 柱面组信息块 426
16.8.5 信息节点区与信息节点 428
16.8.6 数据块区 429
16.8.7 数据块的分配与释放过程 429
16.8.8 信息节点的分配与释放过程 430
第17章 文件系统管理 432
17.1 创建文件系统 432
17.1.1 使用mkfs命令创建UFS文件系统 432
17.1.2 使用newfs命令创建文件系统 436
17.2 使用labelit命令命名文件系统 438
17.3 安装、卸载文件系统 438
17.3.1 安装文件系统 438
17.3.2 /etc/vfstab文件 439
17.3.3 安装文件系统 441
17.3.4 卸载文件系统 442
17.4 确定文件系统的类型 444
17.5 检测与修复文件系统 446
17.5.1 何时需要检测文件系统 447
17.5.2 文件系统检测的内容 448
17.5.3 交互检测与修复UFS文件系统 452
17.5.4 自动检测与修复UFS文件系统 454
17.5.5 恢复严重受损的超级块 454
17.5.6 解决fsck命令无法修复的UFS文件系统问题 455
17.5.7 fsck的阶段处理方式 456
17.5.8 利用其他工具修复文件系统 463
参考文献 466
猜您喜欢

读书导航