图书介绍

UNIX原理与应用 第4版PDF|Epub|txt|kindle电子书版本网盘下载

UNIX原理与应用 第4版
  • (印度)SUMITABHADAS著;吴文国译 著
  • 出版社: 北京:清华大学出版社
  • ISBN:7302166900
  • 出版时间:2008
  • 标注页数:635页
  • 文件大小:61MB
  • 文件页数:658页
  • 主题词:UNIX操作系统

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

UNIX原理与应用 第4版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第Ⅰ部分 初级篇3

第1章 入门3

1.1 什么是操作系统4

1.2 UNIX操作系统5

1.3 了解自己的机器5

1.4 一个简单的会话过程7

1.4.1 用账号和口令登录7

1.4.2 命令9

1.4.3 显示日期和时间的命令date9

1.4.4 两个重要的事实10

1.4.5 清屏命令——tput10

1.4.6 日历命令——cal10

1.4.7 检查当前用户命令——who11

1.4.8 查看进程命令——ps12

1.4.9 文件列表命令——ls12

1.4.10 把输出重定向到文件13

1.4.11 统计文件的行数命令——wc13

1.4.12 命令之间的导向作用14

1.4.13 shell指令的编程特性14

1.4.14 退出命令——exit14

1.5 UNIX简史15

1.5.1 UNIX的BSD版15

1.5.2 UNIX的其他版本16

1.5.3 Internet时代16

1.5.4 来自Windows的挑战17

1.6 Linux与GNU17

1.7 小结17

第2章 UNIX的体系结构与命令用法20

2.1 UNIX的系统结构21

2.1.1 任务分工——内核和壳21

2.1.2 文件与进程22

2.1.3 系统调用23

2.2 UNIX系统的主要特性23

2.2.1 UNIX是一个多用户系统23

2.2.2 UNIX是一个多任务系统24

2.2.3 UNIX系统采用积木构建法24

2.2.4 UNIX的工具包25

2.2.5 模式匹配25

2.2.6 编程工具25

2.2.7 帮助文档26

2.3 POSIX和单一UNIX规范26

2.4 定位命令文件27

2.5 内部命令与外部命令28

2.6 命令格式28

2.6.1 可选项29

2.6.2 文件名参数30

2.6.3 例外情形30

2.7 命令的灵活使用31

2.7.1 组合命令31

2.7.2 命令自动换行与多行命令31

2.7.3 在前一个命令结束之前输入命令32

2.8 浏览在线帮助文档的man命令32

2.9 man文档的组成34

2.9.1 man帮助页的组成35

2.9.2 利用man文档了解man的用法35

2.10 利用man-k、apropos和whatis命令得到的帮助36

2.11 出错时的处理37

2.12 小结40

第3章 通用命令介绍43

3.1 日历命令——cal44

3.2 显示系统日期命令——date45

3.3 回显命令——echo45

3.4 用printf命令取代echo命令47

3.5 计算器命令——bc48

3.6 会话过程记录命令——script49

3.7 电子邮件基础50

3.8 万能的邮件处理工具——mailx51

3.8.1 发送邮件51

3.8.2 接收邮件52

3.8.3 mailx的内部命令53

3.9 口令修改命令passwd55

3.10 查看系统当前用户的命令——who56

3.11 了解系统特性的命令——uname57

3.12 获取终端名称的命令——tty58

3.13 显示和设置终端特性的命令——stty59

3.14 小结60

第4章 文件系统63

4.1 文件63

4.1.1 普通文件64

4.1.2 目录文件64

4.1.3 设备文件65

4.2 文件的命名规则65

4.3 父目录与子目录的关系66

4.4 HOME变量——主目录67

4.5 显示当前目录命令——pwd68

4.6 改变当前目录命令——cd68

4.7 创建目录命令——mkdir69

4.8 删除目录命令——rmdir70

4.9 绝对路径71

4.10 相对路径72

4.11 目录列表命令——ls74

4.12 UNIX文件系统77

4.13 小结78

第5章 普通文件81

5.1 显示和创建文件命令——cat82

5.1.1 cat命令的可选项(-v和-n)82

5.1.2 用cat命令创建文件82

5.2 文件复制命令——cp83

5.3 文件删除命令——rm85

5.4 文件重命名命令——mv86

5.5 分页输出命令——more87

5.5.1 导航88

5.5.2 重复参数89

5.5.3 搜索匹配模式89

5.5.4 在管道中使用more命令89

5.6 lp子系统——文件打印命令90

5.6.1 lp命令可选项90

5.6.2 lp子系统的其他命令91

5.7 文件类型识别命令file92

5.8 统计行数、字数和字符数的命令——wc92

5.9 数据的八进制显示命令od93

5.10 文件比较命令cmp94

5.11 查找两个文件相同之处的命令comm95

5.12 文件转换命令diff96

5.13 实现DOS与UNIX文件的转换:dos2unix和unix2dos命令96

5.14 文件压缩与文件归档98

5.15 压缩和解压缩命令:gzip和gunzip98

5.16 归档程序tar100

5.16.1 创建归档文件(-c)100

5.16.2 解压归档文件(-x)101

5.16.3 浏览归档文件的内容(-t)101

5.17 将压缩与归档功能合二为一的命令:zip和unzip102

5.18 小结103

第6章 文件的基本属性106

6.1 显示文件属性命令——ls-l107

6.2 用-d可选列出目录的属性108

6.3 文件所有权109

6.4 文件权限109

6.5 改变文件权限命令——chmod110

6.5.1 相对权限设置111

6.5.2 绝对权限设置112

6.5.3 安全隐患114

6.5.4 递归模式的chmod命令(-R)114

6.6 目录权限115

6.7 改变文件的所有权115

改变文件所有权命令——chown116

6.7.2 改变组所有者命令——chgrp116

6.8 小结117

第7章 vi编辑器120

7.1 初识vi编辑器121

7.1.1 重复因子123

7.1.2 .exrc文件123

7.1.3 几个小技巧123

7.2 输入模式——文本输入和文本替换124

7.2.1 插入文本(i和a命令)124

7.2.2 在行首行尾插入文本125

7.2.3 新建一行(o或O命令)125

7.2.4 文本替换(r、s、R和S命令)126

7.3 保存文件和退出ex模式127

7.3.1 保存文件(:w)128

7.3.2 保存和退出命令(:x和:wq)128

7.3.3 放弃编辑命令(:q)129

7.3.4 保存所选的行129

7.3.5 暂时返回到shell的命令(:sh或[Ctrl+z])130

7.3.6 从紧急事故中恢复数据(:recover和:r)130

7.4 导航命令130

7.4.1 移动命令(h、j、k和l)131

7.4.2 单词导航(b、e和w)131

7.4.3 移动行首行尾(0、|和$)132

7.4.4 翻页命令([Ctrl+f]、[Ctrl+b]、[Ctrl+d]和[Ctrl+u]132

7.4.5 绝对移动命令133

7.5 编辑文本133

7.5.1 删除文本(x和dd)134

7.5.2 移动文本(p)135

7.5.3 复制文本(y和p)135

7.5.4 行合并命令(J)135

7.6 撤消最近一次的编辑操作(u和U)136

7.7 重复上次操作(.)136

7.8 模式搜索(/和?)137

7.9 替换命令(:s)139

7.10 小结140

第8章 shell143

8.1 shell的命令解释过程144

8.2 shell的类型145

8.3 模式匹配——通配符145

8.3.1 *和?通配符146

8.3.2 匹配“.”147

8.3.3 字符类147

8.3.4 无规律的匹配模式148

8.3.5 总结149

8.4 转义和引用149

8.4.1 转义机制150

8.4.2 引用151

8.4.3 echo命令中的转义字符152

8.5 重定向符与三个标准文件152

8.5.1 标准输入153

8.5.2 标准输出154

8.5.3 标准错误155

8.5.4 连接标准输出和标准输入的过滤器157

8.6 两个特殊文件:/dev/null和/dev/tty158

8.7 管道符159

8.8 分叉符命令tee162

8.9 命令替换163

8.10 shell变量164

8.10.1 引号和转义的作用165

8.10.2 什么情形下使用shell变量166

8.11 小结167

第9章 进程171

9.1 进程的基本概念172

9.1.1 shell进程172

9.1.2 父进程与子进程173

9.1.3 父进程等待或不等待子进程的死亡173

9.2 显示进程状态命令ps173

9.3 系统进程(-e或-A)176

9.4 进程创建的机制177

9.5 内部命令和外部命令179

9.6 进程状态和僵尸状态179

9.7 在后台运行作业180

9.7.1 后台运行命令——&180

9.7.2 nohup命令180

9.8 降低优先级命令——nice181

9.9 用信号方式终止进程182

9.10 作业控制183

9.11 在将来某个时刻运行——at和batch命令185

9.11.1 一次性自动执行命令——at185

9.11.2 批处理命令batch186

9.12 周期性执行作业的命令——cron186

9.13 查看进程运行时间的命令——time188

9.14 小结188

第10章 环境设置191

10.1 shell的演变192

10.2 环境变量192

10.3 常用的环境变量193

10.4 别名(bash和Korn shell)197

10.5 命令的历史记录(bash和ksh)198

10.5.1 根据事件代号访问历史命令(!和r)199

10.5.2 根据上下文执行历史命令200

10.5.3 在先前的命令中执行替换200

10.5.4 使用前面命令的最后一个参数($_)200

10.5.5 历史变量201

10.6 行编辑命令(bash和ksh)201

10.6.1 编辑命令行201

10.6.2 在历史列表中搜索先前的命令202

10.7 其他特性(bash和ksh)202

10.7.1 使用set-o命令203

10.7.2 代字符的替换作用203

10.8 启动脚本204

10.8.1 启动文件(.profile和.bash_profile)204

10.8.2 rc文件(bash和ksh)205

10.9 小结206

第11章 文件的其他属性209

11.1 文件系统与文件的inode结点210

11.2 硬链接211

11.2.1 建立硬链接——ln命令212

11.2.2 硬链接的应用212

11.3 符号连接和ln命令213

11.4 目录214

11.4.1 读权限215

11.4.2 写权限215

11.4.3 执行权限215

11.5 设置文件和目录默认权限——umask命令216

11.6 修改和访问时间217

11.7 定位文件命令find218

11.7.1 查找条件220

11.7.2 find命令的操作符(!,-o和-a)222

11.7.3 动作部分的可选项222

11.8 小结223

第12章 简单的过滤器226

12.1 实例数据库227

12.2 分页命令pr227

12.3 显示文件头命令——head229

12.4 显示文件尾——tail命令229

12.5 垂直截取——cut命令231

12.5.1 按列截取(-c)231

12.5.2 用cut命令截取字段(-f)231

12.6 粘贴——paste命令232

12.7 排序命令sort234

12.8 定位重复行和非重复行命令——uniq237

12.9 字符变换命令tr239

12.10 一个实例——单词统计表241

12.11 小结242

第13章 使用正则表达式的过滤器——grep与sed244

13.1 模式搜索命令grep245

13.2 初探基本正则表达式(BRE)248

13.2.1 字符类249

13.2.2 直接前缀符(*)250

13.2.3 点的作用——匹配单个字符251

13.2.4 位置匹配(^和$)251

13.2.5 元字符不起作用的情形252

13.3 扩展正则表达式(ERE)和grep命令253

13.3.1 +和?253

13.3.2 多模式匹配(|、(和))254

13.4 流编辑命令sed254

13.5 行地址256

13.6 使用多个指令(-e和-f)257

13.7 根据上下文寻址257

13.8 把选取的行写入文件(w)258

13.9 文本编辑259

13.9.1 行插入和修改指令(i、a、c)259

13.9.2 删除行(d)260

13.10 替换操作(s)260

13.11 再识基本正则表达式263

13.11.1 重复模式(&)263

13.11.2 间隔正则表达式263

13.11.3 带标志的正则表达式264

13.12 小结266

第14章 shell程序设计基础269

14.1 shell脚本270

14.2 read命令——脚本的交互式执行271

14.3 使用命令行参数272

14.4 exit命令和命令的退出状态274

14.5 逻辑运算符&&和||——有条件执行275

14.6 if条件语句276

14.7 利用test和[]符号计算表达式的值277

14.7.1 数值比较277

14.7.2 字符串比较279

14.7.3 文件测试281

14.8 case条件语句282

14.8.1 匹配多个模式284

14.8.2 在case结构中使用通配符284

14.9 数值计算和字符串处理命令expr284

14.9.1 数值运算285

14.9.2 字符串处理285

14.10 脚本程序的另外一种调用方法——$0287

14.11 while循环结构288

14.11.1 利用while循环等待一个文件289

14.11.2 设置无限循环290

14.12 for循环——作用在列表上的循环290

14.12.1 各种列表291

14.12.2 修改文件的扩展名——basename命令292

14.13 操作位置参数命令:set和shift293

14.13.1 位置参数左移命令shift294

14.13.2 执行命令替换的set--命令295

14.14 here文档(<<)295

14.15 程序中断命令trap297

14.16 用set-x命令调试shell脚本298

14.17 数据验证和数据录入实例298

14.17.1 代码列表搜索程序valcode.sh298

14.17.2 数据录入脚本程序dentryl.sh299

14.18 小结301

第15章 系统管理基础305

15.1 系统管理员的登录身份——root306

15.2 系统管理员的特权307

15.2.1 设置系统日期——date命令307

15.2.2 向用户传达消息——wall命令307

15.2.3 设置文件大小的最大值——ulimit命令308

15.2.4 控制用户使用at和cron308

15.3 安全维护308

15.3.1 passwd命令可以修改任何口令308

15.3.2 临时权限SUID309

15.3.3 粘着位310

15.4 用户管理311

15.4.1 创建组——groudadd命令311

15.4.2 创建用户——useradd命令312

15.4.3 用户配置文件:/etc/passwd和/etc/shadow312

15.4.4 修改和删除用户——usermod和userdel命令313

15.5 启动和关机过程313

15.6 管理磁盘空间315

15.6.1 报告磁盘可用空间——df命令315

15.6.2 报告磁盘使用情况——df命令316

15.7 设备文件317

15.7.1 块设备和字符设备318

15.7.2 主设备号和次设备号318

15.8 操作软盘设备319

15.8.1 软盘格式化命令——format和fdformat319

15.8.2 磁盘复制命令——dd320

15.8.3 操作DOS磁盘320

15.9 备份程序cpio321

15.9.1 备份文件(-o)322

15.9.2 恢复文件(-i)323

15.9.3 显示归档文件里的文件列表(-it)324

15.9.4 其他可选项325

15.10 tar命令325

15.10.1 备份文件(-c)326

15.10.2 文件恢复(-x)327

15.10.3 显示归档文件的内容(-t)328

15.10.4 其他可选项328

15.11 小结329

第Ⅱ部分 高级篇335

第16章 X Window系统335

16.1 X系统基础336

16.2 通用桌面环境338

16.3 启动和退出X系统339

16.4 终端仿真程序340

16.5 剪切和粘贴操作341

16.5.1 使用鼠标按钮342

16.5.2 高级的剪切和粘贴操作:xclipboard342

16.6 远程运行X客户端程序343

16.6.1 显示程序343

16.6.2 使用DISPLAY变量343

16.6.3 使用-display可选项344

16.7 命令行可选项344

16.7.1 窗口位置和大小(-geometry)345

16.7.2 设置颜色(-fg,-bg和-rv)345

16.7.3 其他可选项346

16.8 一些标准的X客户端程序346

16.8.1 文件管理器dtfile346

16.8.2 时钟模拟器xclock347

16.8.3 计算器xcalc347

16.8.4 邮件通知程序xbiff348

16.8.5 显示系统负荷命令xload348

16.8.6 终止窗口命令xkill349

16.9 启动文件349

16.10 X系统的资源350

16.10.1 装载资源命令——xrdb350

16.10.2 -xrm可选项——使配置文件无效351

16.11 小结351

第17章 网络工具353

17.1 TCP/IP基础354

17.1.1 TCP/IP工作原理354

17.1.2 TCP/IP的特点354

17.1.3 IP地址355

17.1.4 守护进程和端口355

17.2 域名解析356

17.3 TCP/IP应用程序357

17.4 检查网络是否连通——ping命令358

17.5 远程登录命令——telnet358

17.6 文件传输协议ftp359

17.6.1 文件和目录基本操作命令360

17.6.2 传输文件361

17.6.3 匿名ftp登录362

17.7 密码学基础363

17.7.1 对称密钥算法363

17.7.2 非对称密钥算法364

17.8 SSH——安全外壳364

17.8.1 主机认证365

17.8.2 rhosts/shosts认证模式365

17.8.3 用对称算法进行用户认证366

17.8.4 利用SSH代理实现非交互式登录367

17.9 SSH工具368

17.9.1 远程登录和命令的执行——ssh和slogin369

17.9.2 安全的文件传输命令——sftp和scp369

17.10 域名系统(DNS)370

17.11 电子邮件服务373

17.12 MIME——处理邮件中的二进制附件374

17.13 万维网375

17.13.1 统一资源定位器(URL)376

17.13.2 Web协议HTTP377

17.13.3 执行外部程序377

17.13.4 网页设计语言——HTML378

17.13.5 Web浏览器379

17.14 Web上的多媒体——再论MIME协议379

17.15 小结380

第18章 高级过滤器——awk命令383

18.1 awk命令简单的过滤功能384

18.2 把一行拆分成字段385

18.3 printf格式化输出386

18.4 变量和表达式386

18.5 比较运算符387

18.5.1 正则表达式运算符:~和!~388

18.5.2 数值比较389

18.6 数值运算390

18.7 变量390

18.8 -f可选项——把awk程序保存到一个文件里391

18.9 BEGIN段和END段391

18.10 内置变量392

18.11 数组393

18.11.1 关联(哈希)数组394

18.11.2 环境数组ENVIRON[]395

18.12 函数395

18.13 流程控制——if语句397

18.14 for循环398

18.15 while循环400

18.16 小结400

第19章 perl——最重要的文本处理器403

19.1 petl概述404

19.2 chop截尾函数——删除最后一个字符405

19.3 变量与运算符406

19.4 字符串处理函数407

19.5 在命令行中说明文件名408

19.6 默认变量$_410

19.7 当前行号($.)和范围运算符(..)410

19.8 列表与数组411

19.8.1 命令行参数ARGV[]413

19.8.2 修改数组元素414

19.9 列表循环——foreach414

19.10 split函数——把一行拆分成列表或数组415

19.10.1 拆分到变量里416

19.10.2 拆分到数组里416

19.11 join命令——合并列表417

19.12 dec2bin.pl——把十进制转化为二进制418

19.13 用grep在数组中搜索一个模式419

19.14 关联数组420

19.15 正则表达式与模式替换422

19.15.1 s和tr函数422

19.15.2 识别空白符、数字和单词424

19.15.3 IRE和TRE用法424

19.15.4 在位编辑文件425

19.16 文件的处理425

19.17 文件属性测试426

19.18 子程序427

19.19 小结429

第20章 vi编辑器的高级功能433

20.1 操作符433

20.1.1 删除、移动文本(d、p和P命令)434

20.1.2 文本复制(y命令)434

20.1.3 修改文本(c命令)435

20.1.4 过滤文本(!命令)435

20.2 ex模式——多文件操作437

20.2.1 文件切换437

20.2.2 插入文件和命令执行结果438

20.3 符号缓冲区——保存多个文本段439

20.4 标号缓冲区——取消多个行删除操作440

20.5 输入控制符([Ctrl+v])441

20.6 字符搜索442

20.7 标签文本442

20.8 定制vi编辑器443

20.8.1 set命令443

20.8.2 map——建立快捷键映射表444

20.8.3 abbr——定义文本输入缩写符445

20.9 小结446

第21章 高级shell程序设计449

21.1 shell与子shell450

21.2 组运算符——()和{}450

21.3 export命令——导出shell变量451

21.4 在当前shell运行脚本——.命令452

21.5 let运算命令(ksh和bash)453

21.6 数组(ksh和bash)454

21.7 字符串处理(ksh和bash)455

21.7.1 字符串的长度455

21.7.2 根据模式的匹配结果求子串456

21.8 带条件的参数替换457

21.9 流的合并458

21.10 shell函数459

21.10.1 利用系统日期生成一个文件名460

21.10.2 函数返回值460

21.10.3 验证输入日期的有效性461

21.11 eval命令——两次求值462

21.12 exec语句464

21.13 小结467

第22章 程序开发工具469

22.1 处理多文件C语言应用程序470

22.2 一个多文件应用程序470

22.2.1 编译和连接程序472

22.2.2 保留.o文件的原因473

22.3 make命令——保持程序更新474

22.3.1 删除冗余内容476

22.3.2 make的其他功能:文件清理和备份476

22.3.3 宏477

22.4 ar命令——建立一个库文件(归档文件)478

22.4.1 使用库文件479

22.4.2 用make命令维护库文件480

22.5 静态库和共享库480

22.6 版本控制工具——SCCS和RCS481

22.7 一次SCCS会话482

22.7.1 admin命令——创建一个SCCS文件483

22.7.2 get命令——检出版本484

22.7.3 delta——检入命令485

22.7.4 unget命令——取消修改486

22.8 活动和历史信息486

22.8.1 sact——显示活动状态信息486

22.8.2 prs命令——显示SCCS历史记录487

22.9 用SCCS继续编辑487

22.9.1 get-r命令改变默认的数字编号488

22.9.2 使用标识关键字489

22.10 修订控制系统(RCS)489

22.10.1 用ci建立一个RCS文件490

22.10.2 co和ci——检出和检入命令491

22.10.3 设置版本号492

22.10.4 rlog命令——查看版本状态492

22.10.5 ident命令——使用标识关键字493

22.11 小结493

第23章 系统程序设计(上)——文件496

23.1 系统调用基础497

23.1.1 系统调用与库函数497

23.1.2 系统调用的执行过程497

23.1.3 原子操作498

23.2 打开和关闭文件498

23.2.1 打开或建立一个文件——open命令499

23.2.2 close系统调用——关闭文件500

23.3 I/O系统调用501

23.3.1 read调用——读取文件501

23.3.2 write调用——写入文件502

23.3.3 ccp.c——文件复制程序502

23.3.4 lseek调用——定位偏移指针503

23.3.5 reverse_read.c——逆序读取文件504

23.3.6 截断文件——truncate和ftruncate505

23.4 带缓冲和不带缓冲的读写操作506

23.5 umask命令——文件创建与权限修改507

23.6 错误处理508

23.6.1 strerror函数508

23.6.2 perror函数509

23.6.3 带错误处理的文件逆序读取程序reverse_read2.c510

23.7 文件共享512

23.7.1 文件描述表513

23.7.2 文件表513

23.7.3 vnode表514

23.8 目录浏览515

23.9 读取目录文件516

23.10 修改目录文件的记录517

23.10.1 建立和删除目录——mkdir和rmdir系统调用518

23.10.2 建立硬连接和符号连接——link和symlink调用518

23.10.3 unlink:删除连接518

23.10.4 rename:重命名文件名、目录名和连接文件名519

23.11 stat——读取inode519

23.11.1 attributes.c显示文件部分属性520

23.11.2 作用于st_mode成员上的S_IFMT屏蔽字521

23.11.3 用S_IS系列宏判断文件类型522

23.11.4 lsdir.——只列出目录522

23.12 查看文件的存取权限524

23.12.1 check_all_perm.c——查看12个权限位524

23.12.2 access——查看文件所有者的权限526

23.12.3 SUID对文件存取的影响528

23.13 修改文件属性529

23.13.1 chmod和fchmod——修改文件权限529

23.13.2 chown——修改文件所有权530

23.13.3 utime——修改文件的时间戳530

23.13.4 atimetime.c——创建具有相同时间戳的文件531

23.14 小结532

第24章 系统程序设计(下)——进程控制536

24.1 进程的几个抽象概念537

24.1.1 虚拟地址空间537

24.1.2 进程表538

24.2 process.c程序——查看进程的权限539

24.3 创建一个进程540

24.3.1 fork系统调用——复制当前进程540

24.3.2 fork.c——一个简单的子进程创建程序540

24.3.3 getenv和setenv——使用环境变量542

24.3.4 childenv.c——传递环境542

24.4 _exit和exit——终止进程544

24.5 等待状态——读取子进程的退出状态值545

24.5.1 wait——等待子进程死亡545

24.5.2 wait.c——说明wait和WEXISTATUS的用法545

24.5.3 waitpid——一个功能更强大的等待机制546

24.6 进程组547

24.7 僵尸进程和孤儿进程548

24.8 exec——进程创建中的最后一个步骤549

24.8.1 execl——“l”系列中最重要函数549

24.8.2 execv——v组中最重要的函数551

24.8.3 exec_and_fork.c——在子进程执行exec551

24.8.4 l家族和v家族的其他成员552

24.9 shell.c——一个类似于shell的程序553

24.10 文件描述符的使用555

24.10.1 dup——复制文件描述符556

24.10.2 dup2——复制描述符的一种更好方法557

24.10.3 fcntl——比dup和dup2更好的函数558

24.11 pipe系统调用——进程之间的通信559

24.11.1 pipe与fork一起使用560

24.11.2 pipe2.c——管道中运行UNIX命令561

24.12 信号机制562

24.12.1 信号处理562

24.12.2 内核处理信号的过程563

24.12.3 与信号有关的系统调用564

24.13 signal调用——设置信号处理程序564

24.13.1 响应SIGALRM信号565

24.13.2 为什么signal调用不可靠566

24.13.3 捕获来自键盘终端的信号567

24.14 killprocess.c——用kill产生信号568

24.15 小结570

第25章 高级系统管理573

25.1 安全措施574

25.1.1 口令老化机制574

25.1.2 受限的shell574

25.1.3 只允许一个用户关机575

25.2 分区与文件系统575

25.2.1 引导块576

25.2.2 超级块576

25.2.3 inode块577

25.2.4 数据块577

25.3 常用的文件系统和类型578

25.4 fdisk——建立分区579

25.5 mkfs——创建文件系统580

25.6 加载和卸载文件系统581

25.6.1 用mount加载文件系统581

25.6.2 umount——卸载文件系统582

25.6.3 /etc/fstab文件——配置mount命令582

25.6.4 mount的可选项583

25.7 用fsck命令检查文件系统584

25.8 系统启动和init命令585

25.8.1 init命令——控制运行级586

25.8.2 使用/etc/inittab文件586

25.8.3 init和getty587

25.8.4 rc脚本程序588

25.9 关机操作和sync操作589

25.10 备份590

25.10.1 用find命令进行增量备份(-newer)590

25.10.2 用find命令备份文件系统590

25.10.3 xargs——建立动态命令行591

25.10.4 保存备份文件的列表591

25.11 小结592

附录A C shell的结构594

附录B vi/vim命令手册601

附录C 命令反查表609

附录D 测试题答案614

热门推荐