第1章 故障排除的最佳实践 1
1.1划分问题空间 2
1.2协同工作时的良好沟通 3
1.2.1电话会议 3
1.2.2直接对话 4
1.2.3电子邮件 5
1.2.4实时聊天室 6
1.2.5备用沟通方法 7
1.3首选快速、简单的测试,而不是缓慢、复杂的测试 7
1.4多尝试过去的解决方案 8
1.5记录问题和解决方案 9
1.6了解改动 11
1.7了解系统如何工作 12
1.8谨慎使用Internet 13
1.9抵制重启 14
第2章 服务器为什么这么慢?耗尽了CPU、RAM和磁盘I/O资源 15
2.1系统负载 16
2.2使用top命令解决负载问题 18
2.2.1了解top命令的输出 19
2.2.2解决高用户时间的问题 21
2.2.3解决内存不足的问题 22
2.2.4解决高I/O等待时间问题 24
2.3问题发生后的高负载处理 27
2.3.1配置sysstat 27
2.3.2查看CPU统计信息 28
2.3.3查看RAM统计信息 29
2.3.4查看磁盘统计信息 29
2.3.5查看之前的统计信息 30
第3章 为什么系统无法启动?解决启动问题 32
3.1 Linux启动流程 32
3.1.1 BIOS 33
3.1.2 GRUB和Linux启动载入程序 33
3.1.3内核与初始RAM磁盘 35
3.1.4 /sbin/init 35
3.2 BIOS启动顺序 42
3.3修复GRUB 43
3.3.1没有GRUB提示 44
3.3.2阶段1.5 GRUB提示 45
3.3.3配置错误的GRUB提示 46
3.3.4从活动系统中修复GRUB 46
3.3.5通过恢复磁盘修复GRUB 47
3.4禁止启动界面 47
3.5无法挂载根文件系统 48
3.5.1根内核参数 48
3.5.2根设备更改 49
3.5.3根分区损坏或失效 52
3.6无法挂载二级文件系统 52
第4章 为什么磁盘无法写入?解决磁盘满或者磁盘损坏的问题 53
4.1磁盘满 53
4.1.1保留区块 54
4.1.2找到占用空间最大的目录 55
4.2节点不足 57
4.3文件系统只读 58
4.4修复损坏的文件系统 58
4.5修复软RAID 60
第5章 服务器宕机了?追踪网络问题的根源 63
5.1服务器A不能和服务器B通信 64
5.1.1客户端或者服务器问题 64
5.1.2链路接通了吗 64
5.1.3接口是否启用 66
5.1.4是否连通本地网络 66
5.1.5 DNS是否工作正常 68
5.1.6是否可以路由到远程主机 70
5.1.7远程端口是否开放 71
5.1.8在本地测试远端主机 72
5.2网络速度较慢的故障排除 74
5.2.1 DNS的问题 74
5.2.2通过traceroute查找网络缓慢的原因 75
5.2.3使用iftop查看带宽使用情况 76
5.3抓取数据包 79
5.3.1使用tcpdump 80
5.3.2使用Wireshark 83
第6章 为什么主机名无法解析?解决DNS服务器的问题 87
6.1 DNS客户端故障排除 88
6.1.1未配置名称服务器或者无法访问名称服务器 89
6.1.2丢失查询路径或者名称服务器问题 91
6.2 DNS服务器故障排除 91
6.2.1了解dig的输出 92
6.2.2跟踪DNS查询 95
6.2.3递归名称服务器的问题 97
6.2.4什么情况下没有执行更新 101
第7章 为什么无法收发邮件?追踪邮件问题 112
7.1追踪邮件请求 113
7.2了解邮件头信息 116
7.3邮件发送的问题 118
7.3.1客户端无法与外部邮件服务器通信 119
7.3.2出站邮件服务器不允许转发 123
7.3.3出站邮件服务器无法与目标服务器通信 124
7.4接收邮件的问题 127
7.4.1 telnet测试无法连接 129
7.4.2 telnet可以连接,但消息却被拒绝了 130
7.4.3研究邮件日志 130
第8章 网站宕机了?追踪Web服务器问题 133
8.1服务器是否正在运行 134
8.1.1远程端口是否开放 134
8.1.2在本地测试远程主机 135
8.2使用命令行测试Web服务器 137
8.2.1使用curl测试Web服务器 137
8.2.2使用telnet测试Web服务器 139
8.3 HTTP状态码 141
8.3.1 1 ××信息状态码 141
8.3.2 2 ××成功状态码 141
8.3.3 3 ××重定向状态码 142
8.3.4 4 ××客户端错误状态码 143
8.3.5 5 ××服务器错误状态码 144
8.4分析Web服务器的日志 145
8.5获取Web服务器统计数据 149
8.6解决常见的Web服务器问题 154
8.6.1配置问题 154
8.6.2权限问题 155
8.6.3 Web服务器性能迟缓或不可用 157
第9章 为什么数据库这么慢?追踪数据库问题 161
9.1查找数据库日志 162
9.1.1 MySQL 162
9.1.2 PostgresSQL 162
9.2数据库还在运行吗 163
9.2.1 MySQL 164
9.2.2 PostgresSQL 165
9.3获得数据库度量值 166
9.3.1 MySQL 166
9.3.2 PostgresSQL 168
9.4识别查询缓慢的问题 171
9.4.1 MySQL 171
9.4.2 PostgresSQL 173
第10章 这是硬件问题!诊断常见的硬件问题 174
10.1硬盘驱动器无法工作 175
10.2测试内存错误 178
10.3网卡故障 180
10.4服务器过热 181
10.5电源供电故障 183