《超容易的Linux系统管理入门书》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:宋士伟编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2014
  • ISBN:9787302343523
  • 页数:556 页
图书介绍:本书共17章,分为Linux基础篇、系统管理篇、Shell应用篇、网络管理篇、服务搭建篇和性能优化与集群篇6大部分。目录体系涵盖Linux运维工程师需要掌握的各大方面。内容全面而深入,写作理念基于“一线运维写给运维看的书”,本书理论内容由浅而深,内容精炼;管理案例则全面详尽和系统深入。在本书的最后,综合一个实际案例的应用帮助读者更深入的了解Linux知识。

第1章 Linux基础知识 2

1.1 UNIX与Linux的特点及历史 2

1.1.1什么是UNIX 2

1.1.2什么是Linux 2

1.1.3 UNIX与Linux的区别 3

1.1.4 Windows与Linux的区别 3

1.1.5必须认识的GNU公共许可证与授权 3

1.2 Linux的版本 4

1.2.1 Linux的内核版本 4

1.2.2 Linux的发行版本 4

1.3 Linux的应用 5

1.3.1作为服务器 5

1.3.2作为桌面 5

1.4如何更好地学习Linux 6

1.5初学Linux的常见问题 7

1.5.1 Linux服务器也是免费的吗 7

1.5.2 Linux可以多用户登录吗 7

1.5.3 Linux如何读取光盘 7

1.5.4 Linux安装光盘如何获得 8

1.5.5如何进入Linux图形界面 8

1.6小结 9

第2章 Linux安装与登录 11

2.1认识虚拟机 11

2.1.1虚拟机简介 11

2.1.2虚拟机的运行环境 12

2.2安装前的准备 12

2.2.1选择安装版本 12

2.2.2准备相应的硬件资源 13

2.2.3安装方式的选择 13

2.3在虚拟机上安装Linux 14

2.3.1安装VMware虚拟机 15

2.3.2安装Linux 18

2.4 Linux的登录 26

2.4.1本地登录 26

2.4.2远程登录 27

2.5 Linux的终端命令行 29

2.6 Linux的桌面 31

2.6.1 KDE桌面环境 31

2.6.2 GNOME桌面环境 32

2.7安装Linux常见问题 33

2.7.1 Linux分区会不会覆盖我已安装的Windows系统 33

2.7.2如何安装多个Linux发行版 33

2.7.3如何删除Linux 34

2.7.4主机为什么连不上虚拟机安装的Linux系统 35

2.8小结 36

第3章 Linux常用命令 38

3.1 Linux的目录结构 38

3.2文件管理 40

3.2.1复制文件cp 40

3.2.2移动文件mv 42

3.2.3创建文件或修改文件时间touch 44

3.2.4删除文件rm 47

3.2.5查看文件cat tac more less tail 49

3.2.6查找文件或目录find 55

3.2.7过滤文本grep 62

3.2.8比较文件差异diff 67

3.2.9在文件或目录之间创建链接ln 69

3.2.10显示文件类型file 71

3.2.11分割文件split 72

3.2.12合并文件join 75

3.2.13文件权限umask 76

3.2.14文本操作awk和sed 77

3.3目录管理 82

3.3.1显示当前工作目录pwd 82

3.3.2建立目录mkdir 83

3.3.3删除目录rmdir 84

3.3.4改变工作目录cd 86

3.3.5查看工作目录文件ls 86

3.3.6查看目录树tree 90

3.3.7打包或解包文件tar 92

3.3.8压缩或解压缩文件和目录zip/unzip 93

3.3.9压缩或解压缩文件和目录gzip/gunzip 95

3.3.10压缩或解压缩文件和目录bzip2/bunzip2 97

3.4系统管理 99

3.4.1查看命令帮助man 99

3.4.2导出环境变量export 100

3.4.3查看历史记录history 100

3.4.4显示或修改系统时间与日期date 102

3.4.5清除屏幕clear 105

3.4.6查看系统负载uptime 105

3.4.7显示系统内存状态free 106

3.4.8转换或拷贝文件dd 107

3.5任务管理 109

3.5.1单次任务at 109

3.5.2周期任务cron 109

3.6关机命令 111

3.6.1使用shutdown关机或重启 111

3.6.2最简单的关机命令halt 112

3.6.3使用reboot重启系统 112

3.6.4使用poweroff终止系统运行 112

3.6.5使用init命令改变系统运行级别 113

3.7文本编辑器vi的使用 113

3.7.1进入与退出vi 114

3.7.2移动光标 114

3.7.3输入文本 115

3.7.4复制与粘贴 115

3.7.5删除与修改 115

3.7.6查找与替换 116

3.7.7执行Shell命令 116

3.7.8保存文档 117

3.8 Linux命令使用常见问题 117

3.8.1常见的压缩包如何在Linux中解压 117

3.8.2是否可以查看非属主的文件或目录 118

3.8.3如何合并文件 118

3.8.4 Argument list too long如何解决 119

3.8.5如何指定目录解压压缩包 119

3.9综合示例——用脚本备份重要文件和目录 120

3.10小结 122

第4章 Linux文件系统与磁盘管理 125

4.1文件系统概述 125

4.1.1 Linux分区简介 125

4.1.2文件的类型 126

4.1.3文件的属性与权限 127

4.1.4改变文件所有权chown和chgrp 128

4.1.5改变文件权限chmod 129

4.2磁盘管理命令 131

4.2.1查看磁盘空间占用情况df 131

4.2.2查看文件或目录所占用空间du 132

4.2.3调整和查看文件系统参数tune2fs 133

4.2.4格式化文件系统mkfs 134

4.2.5挂载/卸载文件系统mount/umount 135

4.2.6基本磁盘管理fdisk 136

4.3交换空间管理 140

4.4磁盘冗余阵列RAID 140

4.5 Linux磁盘管理常见问题 141

4.5.1 Linux如何添加硬盘 141

4.5.2如何找出占用空间较大的目录或文件 141

4.5.3 No space left on device如何处理 142

4.5.4删除了文件,空间为何没有释放 142

4.5.5如何清空正在读写的超大文件 142

4.6综合示例——监控硬盘空间 143

4.7小结 144

第5章 Linux日志系统 146

5.1 Linux常见日志文件及命令 146

5.2 Linux日志系统syslogd 149

5.2.1 syslogd日志系统简介 149

5.2.2 syslogd配置文件及语法 150

5.3使用日志轮转 152

5.3.1 logrotate命令及配置文件参数说明 152

5.3.2利用logrotate轮转Nginx日志 154

5.4利用系统日志定位问题 155

5.5小结 156

第6章 用户和组的管理 158

6.1 Linux用户管理简介 158

6.1.1 Linux用户登录过程 158

6.1.2 Linux用户类型 159

6.2 Linux用户管理机制 160

6.2.1用户账号文件/etc/passwd 160

6.2.2用户密码文件/etc/shadow 161

6.2.3用户组文件/etc/group 162

6.3 Linux用户管理命令 162

6.3.1 useradd添加用户 162

6.3.2 usermod更改用户 164

6.3.3 userdei删除用户 165

6.3.4 passwd更改或设置用户密码 166

6.3.5 su切换用户 166

6.3.6 sudo普通用户获取超级权限 168

6.4用户组管理命令 169

6.4.1 groupadd添加用户组 169

6.4.2 groupdel删除用户组 169

6.4.3 groupmod修改用户组 170

6.5用户管理常见问题 171

6.5.1 root密码忘记了怎么办 171

6.5.2如何建立多用户 171

6.5.3如何查看用户所在的用户组 172

6.6综合示例——批量添加用户及设定密码 172

6.7小结 174

第7章 应用程序的安装与管理 176

7.1软件包管理基础 176

7.1.1 RPM 176

7.1.2 DPKG 176

7.2 RPM的使用 177

7.2.1安装软件包 177

7.2.2升级软件包 179

7.2.3查看已安装的软件包 179

7.2.4卸载软件包 180

7.3从源代码安装软件 181

7.3.1软件配置 181

7.3.2编译软件 181

7.3.3软件安装 181

7.4安装软件常见问题 185

7.4.1如何查看RPM包的安装位置 185

7.4.2如何查看一个文件属于哪个RPM包 185

7.4.3如何查看已经安装的RPM包的文件列表 186

7.4.4如何获取RPM包的说明信息 186

7.4.5源码安装是否一定要安装在/usr/local下面 187

7.4.6普通用户如何安装常用软件 187

7.5 Linux函数库概述 188

7.6综合示例——从源码安装Web服务软件Nginx 190

7.7小结 195

第8章 Shell的使用及管道与重定向 197

8.1 Shell简介 197

8.2 bash的使用 198

8.2.1别名的使用 198

8.2.2命令历史的使用 199

8.2.3命令补齐 200

8.2.4命令行编辑 200

8.2.5通配符 201

8.3管道与重定向 202

8.3.1标准输入与输出 202

8.3.2输入重定向 203

8.3.3输出重定向 204

8.3.4错误输出重定向 205

8.3.5管道 206

8.4环境变量的配置 207

8.4.1 Shell变量 207

8.4.2 Shell环境变量的配置文件 209

8.5常见问题 210

8.5.1如何显示所有的环境变量 210

8.5.2如何清除环境变量 210

8.5.3使用命令时如何避免使用绝对路径 210

8.5.4设置的环境变量如何在系统重启后仍然保持 211

8.6小结 212

第9章 Shell编程基础 214

9.1 Linux Shell编程简介 214

9.2最简单的例子——Hello World 214

9.3 Shell脚本的执行 215

9.3.1 Shell程序的执行 215

9.3.2 Shell程序的调试 217

9.4 Shell基本语法 219

9.4.1 Shell中的变量 219

9.4.2 Shell中变量的作用域 221

9.4.3 Shell转义字符 223

9.4.4 Shell单引号、双引号和反引号 223

9.5流程控制 225

9.5.1流程控制语句 225

9.5.2 for循环 226

9.5.3 while循环 227

9.5.4 until循环 228

9.6函数 228

9.7 Shell编程常见问题 231

9.7.1除了Bourne外系统是否存在其他Shell环境 231

9.7.2脚本放到crontab为什么不能正常执行 232

9.7.3如何将脚本放到后台执行 232

9.7.4 Shell中数组如何定义和使用 233

9.8综合示例——分析Apache日志 235

9.9小结 236

第10章 系统启动控制与进程管理 238

10.1启动管理 238

10.1.1 GRUB管理器概述 238

10.1.2 Linux系统的启动过程 239

10.1.3 Linux运行级别 240

10.1.4 Linux初始化配置脚本/etc/inittab的解析 241

10.1.5 Linux启动服务的控制 243

10.2 Linux进程管理 245

10.2.1进程的概念 245

10.2.2进程管理工具与常用命令 246

10.2.3综合示例——进程监控 253

10.3启动控制与进程管理常见问题 255

10.3.1如何更改Linux的默认运行级别 255

10.3.2如何更改sshd默认端口22 255

10.3.3如何查看某一个用户的所有进程 256

10.3.4如何确定占用内存比较高的程序 256

10.3.5如何终止进程 256

10.3.6如何终止属于某一个用户的所有进程 257

10.3.7如何根据端口号查找对应进程 257

10.3.8 service mysql start原理 257

10.4小结 258

第11章 Linux网络管理 260

11.1网络管理协议介绍 260

11.1.1 TCP/IP概述 260

11.1.2 UDP与ICMMP协议简介 262

11.2网络管理命令 263

11.2.1检查网络是否通畅或网络连接速度ping 263

11.2.2配置网络或显示当前网络接口状态ifconfig 265

11.2.3显示添加或修改路由表route 267

11.2.4拷贝文件至其他系统scp 267

11.2.5拷贝文件至其他系统rsync 268

11.2.6显示网络连接、路由表或接口状态netstat 271

11.2.7探测至目的地址的路由信息traceroute 272

11.2.8测试、登录或控制远程主机telnet 274

11.2.9下载网络文件wget 275

11.3 Linux网络配置 276

11.3.1 Linux网络相关配置文件 277

11.3.2配置Linux系统的IP地址 277

11.3.3设置主机名 278

11.3.4设置默认网关 279

11.3.5设置DNS服务器 279

11.4 Linux网络配置常见问题 279

11.4.1如何使用scp而不用密码 280

11.4.2一个网卡是否可以设置多个IP 281

11.5综合示例——监控网卡流量 282

11.6小结 284

第12章 Linux高级网络管理 286

12.1 Linux防火墙iptables 286

12.1.1 Linux内核防火墙的工作原理 286

12.1.2 Linux软件防火墙iptables 289

12.1.3 iptables配置实例 292

12.2 Linux高级网络配置工具 295

12.2.1高级网络管理工具iproute2 296

12.2.2网络数据采集与分析工具tcpdump 298

12.3动态主机配置协议DHCP 301

12.3.1 DHCP的工作原理 301

12.3.2配置DHCP服务器 302

12.3.3配置DHCP客户端 303

12.4 Linux域名服务DNS 304

12.4.1 DNS简介 304

12.4.2 DNS服务器配置 305

12.4.3 DNS服务测试 308

12.5网络常见问题 309

12.5.1如何使IP设置永久生效 309

12.5.2 VMWare虚拟机中如何测试DHCP功能 310

12.5.3如何使一个域名解析到多个IP 310

12.6综合示例——利用iptables阻止外网异常请求 310

12.7小结 312

第13章 Linux网络文件共享NFS、Samba和FTP 314

13.1网络文件系统NFS 314

13.1.1网络文件系统NFS简介 314

13.1.2配置NFS服务器 314

13.1.3配置NFS客户端 318

13.2文件服务器Samba 319

13.2.1 Samba服务简介 319

13.2.2 Samba服务的安装与配置 319

13.3 FTP服务器 323

13.3.1 FTP服务概述 323

13.3.2 vsftp的安装与配置 324

13.3.3 proftpd的安装与配置 329

13.4常见问题 332

13.4.1如何在Windows和Linux之间共享文件 332

13.4.2 Linux文件如何在Windows中编辑 332

13.4.3如何设置FTP才能实现文件上传 333

13.5小结 333

第14章 MySQL服务安装与管理 335

14.1 MySQL简介 335

14.2 MySQL服务的安装与配置 335

14.2.1 MySQL的版本选择 336

14.2.2 MySQL的版本命名机制 336

14.2.3 MySQL rpm包安装 336

14.2.4 MySQL源码安装 338

14.2.5 MySQL程序介绍 339

14.2.6 MySQL配置文件介绍 340

14.2.7 MySQL启动与停止 342

14.3 MySQL数据类型和函数 348

14.3.1 MySQL常见数据类型 348

14.3.2 MySQL常用函数 352

14.4 MySQL基本管理 359

14.4.1 MySQL登录方式 359

14.4.2 MySQL存储引擎 361

14.4.3 MySQL数据库操作 364

14.4.4 MySQL表操作 366

14.4.5 MySQL索引 371

14.4.6 MySQL视图 374

14.4.7 MySQL分区 378

14.4.8 MySQL事务 380

14.4.9 MySQL事务隔离级别 381

14.4.10 InnoDB锁机制 382

14.4.11 MySQL事务控制语句 384

14.5 MySQL日常维护 389

14.5.1 MySQL权限管理 389

14.5.2 MySQ L日志管理 393

14.5.3 MySQ L备份与恢复 398

14.5.4 MySQL复制 405

14.5.5 MySQL复制搭建过程 407

14.6 MySQL服务安装与管理常见问题 411

14.6.1 MySQL的root密码忘记如何处理 411

14.6.2如何利用MySQL提供的系统帮助 412

14.6.3如何给MySQL分配用户权限 414

14.6.4如何复制表 414

14.6.5是否可以通过复制物理文件备份InnoDB数据库 415

14.6.6如何根据MySQL错误码提示定位问题物理 418

14.6.7如何在同一个系统中启动多个MySQL实例 418

14.7小结 421

第15章 快速搭建LAMP服务 423

15.1 Apache HTTP服务安装与配置 423

15.1.1 HTTP协议简介 423

15.1.2 Apache服务的安装、配置与启动 425

15.1.3 Apache基于IP的虚拟主机配置 433

15.1.4 Apache基于端口的虚拟主机配置 436

15.1.5 Apache基于域名的虚拟主机配置 438

15.1.6 Apache安全控制与认证 441

15.2 LAM P集成安装、配置与测试实战 447

15.3 LAMP常见问题 451

15.3.1如何给MySQL分配用户权限 451

15.3.2如何在同一系统启动多个MySQL实例 451

15.3.3常见的Web服务器软件有哪些 453

15.3.4 PHP如何新增模块 454

15.3.5 Apache如何新增模块 454

15.3.6为何访问PHP显示为源码 455

15.4小结 456

第16章 Linux性能评估与优化 458

16.1 Linux性能评估与分析工具 458

16.1.1 CPU相关 458

16.1.2内存相关 460

16.1.3硬盘I/O相关 462

16.1.4网络性能评估 463

16.2 Linux内核编译与优化 464

16.2.1编译并安装内核 464

16.2.2常用内核参数的优化 465

16.3性能优化常见问题 467

16.3.1如何安装新内核 467

16.3.2如何查看内核版本 467

16.4小结 468

第17章 轻松搞定Linux集群负载均衡LVS 470

17.1集群技术简介 470

17.2 LVS集群介绍 471

17.2.1 3种负载均衡技术 471

17.2.2负载均衡调度算法 474

17.3 LVS集群的体系结构 475

17.4 LVS负载均衡配置实例 476

17.4.1基于NAT模式的LVS的安装与配置 476

17.4.2基于DR模式的LVS的安装与配置 480

17.4.3基于IP隧道模式的LVS的安装与配置 483

17.5集群负载均衡LVS常见问题 485

17.5.1 RS不能连接 485

17.5.2如何修改RS权重 485

17.5.3如何剔除RS 486

17.5.4如何添加RS 486

17.6小结 486

第18章 Linux集群——双机热备hearbeat与keepalived 488

18.1高可用性集群技术 488

18.1.1可用性和集群 488

18.1.2集群的分类 489

18.2双机热备开源软件Heartbeat 489

18.2.1 Heartbeat概述 489

18.2.2 Heartbeat安装与配置 490

18.2.3 Heartbeat启动与测试 493

18.3双机热备软件keepalived 495

18.3.1 keepal ived概述 495

18.3.2 keepal ived安装与配置 496

18.3.3 keepal ived启动与测试 497

18.4双机热备常见问题 499

18.4.1主机恢复后如何重新接管资源 499

18.4.2 LVS是否一定是HA的 500

18.5小结 500

第19章 MySQL集群、负载均衡与双机热备 502

19.1高可用MySQL运营平台简介 502

19.1.1高可用MySQL运营平台功能 502

19.1.2可选方案对比 503

19.1.3本项目实现方案 504

19.2高可用MySQL运营平台项目实现 504

19.2.1搭建MySQL集群 504

19.2.2搭建负载均衡LVS 513

19.2.3搭建双机热备HA 518

19.2.4项目测试 522

19.3小结 524

第20章 Nginx+PHP+MySQL实战 526

20.1 LNMP服务安装与管理 526

20.1.1 Nginx的安装与管理 526

20.1.2 PHP安装与管理 528

20.1.3 MySQL服务安装与管理 529

20.2 Nginx负载均衡与反向代理 530

20.2.1 Nginx负载均衡设置 530

20.2.2 Nginx反向代理配置 531

20.3集成Nginx与PHP 533

20.3.1 spawn-fcgi集成方式 533

20.3.2PHP-FPM集成方式 536

20.4 PHP+MySQL实战 537

20.4.1第1个PHP程序 537

20.4.2数据库连接 538

20.4.3记录查询 539

20.4.4增加分页 542

20.4.5添加记录 545

20.4.6修改记录 548

20.4.7删除记录 552

20.5小结 556