《Linux操作系统 第3版》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:邵国金主编;褚龙现,张娜副主编
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2018
  • ISBN:9787121330469
  • 页数:486 页
图书介绍:基础篇:包含系统简介、系统入门和shell与shell命令等三章。通过本篇的学习,用户可以掌握Linux相关的入门知识,且可以处理一般问题。管理篇:包含用户和密码管理、文件系统管理、进程与任务和管理、系统安装与系统管理、设备管理和网络管理等六章。本篇是UNIX/Linux系统的管理核心,通过本篇的学习,用户可以掌握UNIX/Linux系统的核心管理内容,胜任日常管理工作。编程与开发篇:包含shell编程和C编程环境两章。通过本篇的学习,为系统管理和开发打下基础,从而使用户的管理水平提升一个新层次。网络应用篇:包含DHCP、ftp与tftp、telnet与ssh、samba、防火墙与系统安全、Internet接入与代理服务器、DNS、邮件服务和WEB服务等九章。本篇重点介绍的是Linux的网络应用和网络安全。通过本篇的学习可以使用户了解和掌握常用服务器的工作原理和配置方法。

基础篇 2

第1章 系统简介 2

1.1 UNIX系统简介 2

1.1.1 UNIX系统的发展历史 2

1.1.2 UNIX系统的特点 5

1.2 Linux系统简介 7

1.2.1 Linux系统的发展历史 7

1.2.2 Linux系统的特点 8

1.2.3 Linux系统的发行版本介绍 9

1.2.4 Linux系统的应用 11

习题1 12

第2章 系统入门 13

2.1系统的开机与界面切换 13

2.1.1系统的开机 13

2.1.2两种操作界面及切换 14

2.2用户的登录与注销 15

2.2.1系统的登录 15

2.2.2注销 17

2.2.3 CLI终端仿真界面 18

2.2.4程序的启动 18

2.3 Linux系统的关闭与重启动 19

2.3.1字符界面 19

2.3.2系统的运行级别及切换 20

2.3.3图形界面 21

2.4 Linux系统的图形界面介绍 21

2.4.1 GNOME桌面简介 22

2.4.2 Ubuntu的Unity桌面简介 24

2.4.3设置中心(Settings) 25

2.5 Linux系统的在线帮助与资源 27

2.5.1 man 27

2.5.2 textinfo 29

2.5.3 yelp 29

2.5.4 Linux系统的其他帮助和资源 29

2.6 LibreOffice办公套件简介 30

2.6.1 LibreOffice Writer 31

2.6.2 LibreOffice Calc 31

2.6.3 LibreOffice Impress 32

2.6.4 LibreOffice Draw 32

习题2 32

实验2 33

第3章 shell与shell基本操作 34

3.1 shell基本功能与基本概念 34

3.1.1 shell基本功能 34

3.1.2字符与保留字 34

3.1.3文件命名及文件类型 36

3.1.4目录结构与路径 38

3.1.5 shell命令格式与命令编辑 40

3.1.6标准流与输入/输出重定向 42

3.1.7管道与三通 44

3.1.8环境变量与变量 45

3.1.9引号机制、命令替换与变量替换 46

3.1.10 shell命令的执行 47

3.1.11 shell种类 48

3.2 Linux系统的基本命令 49

3.2.1目录基本操作命令 49

3.2.2文件操作基本命令 51

3.2.3文件属性基本操作 57

3.2.4文本文件编辑与操作基本命令 59

3.2.5日期、时间与时区管理命令 67

3.2.6进程管理基本命令 70

3.2.7文件或目录比较命令 75

3.2.8其他操作命令 79

习题3 85

实验3 86

系统管理篇 88

第4章 用户、组和密码管理 88

4.1 UNIX系统的用户和组 88

4.1.1用户与uid 88

4.1.2组与gid 88

4.2与用户和组管理相关的文件 88

4.2.1 /etc/passwd 88

4.2.2 /etc/shadow 89

4.2.3 /etc/group 90

4.2.4 /etc/login.defs 90

4.2.5其他文件 90

4.3用户管理命令 91

4.3.1增加用户(useradd) 91

4.3.2用户删除(userdel) 93

4.3.3用户修改(usermod) 93

4.4组管理命令 93

4.4.1组创建(groupadd) 94

4.4.2组删除(groupdel) 94

4.4.3组修改(groupmod) 94

4.5密码管理 95

4.5.1密码管理综述 95

4.5.2密码管理命令(passwd) 95

4.5.3密码管理示例 96

4.6用户、组和密码管理图形界面 96

4.6.1添加用户 97

4.6.2用户属性修改 97

4.6.3用户删除 98

4.7与用户身份和位置相关的其他命令 98

4.7.1显示与用户和组相关的身份信息(id) 98

4.7.2显示已登录用户的信息(who) 99

4.7.3显示使用者的用户名(whoami) 100

4.7.4向系统中的指定用户发信息(write) 100

4.7.5向系统中已登录的所有用户发信息(wall) 100

4.7.6确定用户所使用的终端设备(tty) 100

4.7.7不退出系统而将自己切换成其他用户(su) 101

4.7.8以其他用户身份执行程序(sudo) 102

习题4 104

实验4 104

第5章 文件系统管理及使用 105

5.1文件系统权限及管理 105

5.1.1三种权限 105

5.1.2三类人 105

5.1.3权限控制 105

5.1.4默认权限与umask 106

5.2权限管理命令 107

5.2.1设置文件创建掩码(umask) 107

5.2.2改变文件的权限(chmod) 108

5.2.3改变文件的所有者(chown) 108

5.2.4改变文件的组(chgrp) 109

5.2.5 ext2+文件系统的新增属性及其管理 109

5.3文件系统管理 111

5.3.1 UNIX/Linux支持的文件系统 111

5.3.2 UNIX/Linux系统使用的存储设备 113

5.3.3磁盘分区管理与文件系统的创建 114

5.3.4文件系统的使用 119

5.3.5文件系统的检查、修复与同步 124

5.4与文件系统管理相关的其他命令 126

5.4.1文件综合查找命令(find) 126

5.4.2文件按名查找命令(locate) 128

5.4.3文件复制命令(dd) 129

5.4.4链接管理命令(ln) 130

5.4.5特别文件创建(mknod,mkfifo) 130

5.4.6磁盘空间和文件系统的使用情况统计(df) 131

5.4.7目录使用磁盘空间情况统计(du) 132

5.4.8数据备份与文件归档管理(tar,cpio) 132

5.4.9文件的压缩与解压缩 136

5.5图形界面下的文件和目录管理 139

习题5 140

实验5 141

第6章 进程、任务与作业管理 142

6.1程序和进程的概念 142

6.1.1程序、进程、作业和任务 142

6.1.2调度策略与优先级的计算 142

6.1.3 Linux操作系统的启动 142

6.1.4 0#进程与1#进程 143

6.1.5进程状态及查询(ps) 144

6.1.6三类进程 145

6.2登录shell的启动与定制 146

6.2.1用户登录过程与登录shell的启动 146

6.2.2用户登录控制与shell的定制 147

6.3 Linux系统的启动过程分析 148

6.3.1 SysVinit 148

6.3.2 upstart 151

6.3.3 systemd 154

6.4服务管理 158

6.4.1 systemctl 158

6.4.2早期的服务管理 159

6.4.3超级服务器(xinetd) 161

6.4.4 rc-local.service 164

6.5进程管理与调度命令 164

6.5.1可执行文件的setuid、setgid权限和目录的sticky属性 164

6.5.2进程管理与调度命令 166

6.5.3改变进程的家目录(chroot) 170

6.6任务的自动调度 172

6.6.1 at和batch 172

6.6.2 crontab 174

6.6.3系统crontab 176

6.7进程管理图形界面 176

习题6 176

实验6 177

第7章 系统安装、扩充、启动与管理 178

7.1系统安装 178

7.1.1安装任务与准备 178

7.1.2硬盘的物理结构与分区划分 178

7.1.3安装Linux系统所需的基本分区 182

7.1.4安装过程 183

7.1.5虚拟机的安装与使用 187

7.2引导器(grub) 188

7.2.1 grub常用术语 188

7.2.2操作界面 189

7.2.3 grub及其配置 190

7.2.4系统的启动及启动参数修改 195

7.3软件包管理 197

7.3.1红帽系统的软件包管理 197

7.3.2 ubuntu的软件包管理 201

7.3.3其他格式的软件包管理 204

7.3.4图形界面 206

7.4系统升级 206

7.5日志管理 207

7.5.1日志系统 207

7.5.2常见日志文件及阅读 209

7.5.3日志滚动 211

7.6系统管理 212

7.6.1系统管理的任务 212

7.6.2系统管理的工具与命令 213

7.7内核配置与参数在线调整 218

7.7.1内核配置、编译与安装 219

7.7.2编译与安装新内核 221

7.7.3模块管理 222

7.7.4内核参数在线调整 223

习题7 223

实验7 224

第8章 设备管理 225

8.1设备管理概述 225

8.1.1 Linux系统支持的设备 225

8.1.2设备发现与udev简介 226

8.1.3系统设置与查看 227

8.2打印机的管理与使用 229

8.2.1 cups的安装 230

8.2.2打印机的安装与配置 230

8.2.3 cups系统的启动管理 233

8.2.4打印机使用 234

8.2.5打印任务管理 235

8.2.6 cups的配置文件 236

8.3交换区管理 236

8.3.1概述 236

8.3.2使用交换设备 237

8.3.3使用交换文件 238

8.4串口的管理与使用 238

8.4.1 Linux系统的串口设备 238

8.4.2串口管理程序(setserial) 239

8.4.3串口和调制解调器管理及通信程序(minicom) 240

习题8 242

实验8 243

第9章 网络配置、管理与基本应用 244

9.1 TCP/IP基础知识 244

9.1.1 IP地址 244

9.1.2端口及服务 246

9.1.3物理地址与逻辑地址 247

9.1.4主机名及设置 247

9.1.5网卡命名方案 248

9.2 TCP/IP配置 249

9.2.1与网络有关的配置文件 249

9.2.2网络服务及管理 254

9.2.3 IP地址配置 255

9.3网络管理命令 258

9.3.1测试网络是否通(ping) 258

9.3.2检查网络状态(netstat) 259

9.3.3地址解析协议缓存中的项目管理(arp) 261

9.3.4网络接口配置(ifconfig) 262

9.3.5网络IP管理(ip) 263

9.3.6网络接口的启用与停止(ifup/ifdown) 264

9.3.7路由表维护(route) 264

9.3.8主机及地址查询(nslookup/host) 266

9.3.9网络路由跟踪(traceroute) 267

9.4网络应用常用命令简介 267

9.4.1远程登录 267

9.4.2文件传输 268

9.4.3邮件收发 268

9.4.4文件下载 270

习题9 270

实验9 271

第10章 Linux系统的安全 272

10.1 Linux系统安全概述 272

10.1.1 Linux操作系统的基本安全机制 272

10.1.2 Linux系统可能遇到的安全问题及防范策略 273

10.2检查和监督系统的运行情况 276

10.2.1检查网络 276

10.2.2用ps或pstree检查进程 276

10.2.3检查系统的日志文件 276

10.2.4停止不需要的服务 276

10.2.5去掉多余的具有SUID和SGID属性的文件 277

10.3入侵检测和事件报告 277

10.3.1使用完整性检查工具 277

10.3.2事件报告制度 278

10.4防火墙 279

10.4.1 iptables 279

10.4.2 Firewalld 281

10.4.3 ufw 285

10.5 SELinux 286

10.5.1 SELinux中的安全类型和角色 286

10.5.2 SELinux中的策略 288

10.5.3 SELinux的Targeted策略 288

10.5.4 SELinux的策略及改变 289

10.5.5 SELinux中的布尔值及改变 290

10.5.6检查SELinux的状态 290

10.5.7 SELinux安全上下文管理 291

10.5.8 SELinux的应用 293

习题10 295

实验10 295

编程与开发篇 297

第11章 bshell编程 297

11.1正则表达式 297

11.1.1字符集 297

11.1.2 shell正则表达式 299

11.2流编辑(sed) 299

11.2.1功能及用法 299

11.2.2参数与说明 300

11.2.3脚本命令 300

11.2.4 sed示例 301

11.3模式搜索与处理(awk) 302

11.3.1功能及用法 302

11.3.2参数说明 302

11.3.3记录和域 302

11.3.4变量 302

11.3.5操作符 303

11.3.6控制语句 304

11.3.7常用函数 304

11.3.8 awk程序的执行 305

11.3.9 awk使用示例 305

11.4 Boume shell及其编程 306

11.4.1特殊字符 306

11.4.2 I/O重定向 307

11.4.3变量与参数 308

11.4.4 shell的状态 309

11.4.5 shell的调用与变量传递 310

11.4.6 shell程序设计 311

11.4.7命令行参数与选项的处理 324

11.4.8 shell程序调试 328

11.4.9 shell脚本程序格式 329

习题11 332

实验11 333

第12章 C/C++及其他编程环境 335

12.1编译器 335

12.1.1功能及用法 335

12.1.2参数及说明 336

12.1.3示例 336

12.1.4 gcc/g++的工作过程 338

12.2头文件 338

12.3链接器与库文件 339

12.4静态库 339

12.4.1静态库的管理 339

12.4.2构造静态库 340

12.4.3使用自己的库 340

12.5共享库 341

12.5.1共享库构造 341

12.5.2共享库的管理 341

12.5.3共享库编程 342

12.5.4共享库使用示例 343

12.6 make与Makefile 344

12.6.1 make的用法简介 344

12.6.2 Makefile文件 345

12.6.3 Makefile示例 347

12.7调试器(gdb) 350

12.7.1 gdb功能 350

12.7.2 gdb基本命令 351

12.7.3程序调试方法 351

12.8 UNIX/Linux其他编程工具简介 353

12.8.1常用库与GNOME/GTK开发 353

12.8.2 KDevelop/Qt开发 354

12.8.3 eclipse 354

12.8.4 Java开发 355

12.8.5 Perl开发 356

12.8.6数据库开发 357

12.8.7 PHP开发 358

12.8.8 Objective-C开发 358

12.8.9 Python 359

12.8.10 R语言 360

12.8.11虚拟化、云计算和大数据应用 363

习题12 364

实验12 365

网络服务与应用篇 367

第13章 网络时间服务NTP 367

13.1 NTP协议 367

13.1.1 NTP简介 367

13.1.2 NTP的工作模式 367

13.1.3 NTP服务器选择 368

13.2通过ntp配置NTP 368

13.2.1软件包的安装 368

13.2.2服务管理 368

13.2.3配置文件及配置 369

13.2.4文件/etc/sysconfig/ntpd和/etc/default/ntp 371

13.2.5防火墙设置 371

13.2.6配置文件实例 371

13.2.7配置测试 372

13.2.8无NTP服务的NTP客户端 374

13.3通过chrony配置NTP 375

13.3.1 chrony软件包的安装 375

13.3.2服务管理 375

13.3.3配置文件chrony.conf及默认配置 376

13.3.4配置实例 377

13.3.5配置测试 378

13.3.6其他说明 380

习题13 380

实验13 380

第14章 基础服务OpenSSH和VNC 381

14.1 OpenSSH 381

14.1.1 OpenSSH协议 381

14.1.2软件安装与启动管理 381

14.1.3配置文件与服务器设置 382

14.1.4客户端及应用 385

14.1.5与防火墙和SELinux的关系 387

14.2 VNC 388

14.2.1红帽的TigerVNC 388

14.2.2客户端及使用 390

14.2.3 Ubuntu的xllvnc 390

习题14 391

实验14 391

第15章 Web服务器Apache 392

15.1 Apache概述 392

15.2 Apache的安装和启动 392

15.2.1 Apache的安装 392

15.2.2 Apache服务器启动管理 393

15.2.3 Apache服务的测试 394

15.3 Apache的配置文件和配置指令 394

15.3.1 Apache主配置文件的结构 394

15.3.2 Apache的配置指令 395

15.4 Web服务器配置实例 404

15.4.1 Web服务器配置实例 405

15.4.2 Fedora的图形配置工具 409

15.5 httpd与防火墙和SELinux的关系 409

15.5.1 httpd与防火墙的关系 410

15.5.2 httpd与SELinux的关系 410

习题15 411

实验15 411

第16章 DHCP服务器 412

16.1 DHCP介绍 412

16.1.1 DHCP协议 412

16.1.2 DHCP的工作过程 413

16.2 DHCP服务器的安装与启动管理 414

16.2.1 DHCP服务器软件安装 414

16.2.2启动管理 414

16.3 DHCP的配置 415

16.3.1配置文件 415

16.3.2配置文件中的定义、参数和选项及意义 417

16.4 DHCP规划 419

16.4.1在不同的网络中使用DHCP 419

16.4.2设置DHCP中继 419

16.4.3设置备份DHCP 420

16.5 DHCP客户端设置 421

16.6 DHCP与防火墙的关系 421

习题16 422

实验16 422

第17章 FTP与TFTP服务器 423

17.1 FTP与FTP服务器概述 423

17.1.1 FTP的相关概念 423

17.1.2 Linux系统的FTP服务器 425

17.2 vsftpd服务器 426

17.2.1 vsftpd服务器的安装与启动 426

17.2.2 vsftpd的配置 427

17.2.3 vsftpd.conf的常见应用配置 432

17.3 FTP服务器的使用 435

17.3.1用浏览器访问 435

17.3.2使用客户端命令ftp 435

17.4 TFTP与TFTP服务器的使用简介 439

17.4.1 TFTP协议 439

17.4.2 TFTP的安装和配置及应用 439

17.5与防火墙和SELinux的关系 441

17.5.1与防火墙的关系 441

17.5.2与SELinux的关系 442

习题17 442

实验17 443

第18章 网络资源共享服务 444

18.1网络资源共享简介 444

18.2 Samba服务 444

18.2.1 SMB协议与Samba 444

18.2.2 Samba的安装与启动管理 446

18.2.3 Samba的配置 447

18.2.4配置共享打印机 452

18.2.5 Samba共享服务使用 453

18.2.6 Samba图形界面配置 455

18.2.7关于防火墙和SELinux的说明 456

18.3 NFS服务器 457

18.3.1 NFS介绍 457

18.3.2 NFS文件系统配置 458

18.3.3 NFS系统的使用 461

18.3.4 NFS的其他功能 462

18.3.5关于NFS的其他说明 465

习题18 466

实验18 466

第19章 域名服务器DNS 467

19.1 DNS概述 467

19.1.1 IP与域名的转换 467

19.1.2域名空间和区域 468

19.1.3 DNS查询 469

19.1.4客户端与域名解析相关的配置文件 470

19.1.5 DNS服务器的类型 470

19.2 BIND 471

19.2.1 BIND简介 471

19.2.2安装BIND 471

19.2.3 bind的启动管理 472

19.2.4 DNS服务器的运行方式及工作目录 472

19.2.5 DNS服务器配置基础 473

19.3 DNS服务器配置示例 479

19.4测试DNS服务器 481

19.5 DNS与防火墙及SELinux的关系 483

19.5.1 DNS与防火墙的关系 483

19.5.2 DNS与SELinux的关系 484

习题19 484

实验19 484

参考文献 485