前言
第1章 Linux系统管理入门1
1.1 系统安装1
1.1.1 安装CentOS1
1.1.2 首次启动CentOS14
1.1.3 更多设置14
1.2 系统登录20
1.2.1 本地登录20
1.2.2 远程登录22
1.3 用户管理24
1.3.1 用户和用户组的概念24
1.3.2 新增和删除用户25
1.3.3 新增和删除用户组26
1.3.4 用户切换26
1.4 文件系统27
1.4.1 什么是文件系统27
1.4.2 常见的文件系统27
1.4.3 磁盘分区和创建文件系统28
1.5 文件管理33
1.5.1 文件和目录简介33
1.5.2 文件和目录权限34
1.5.3 文件查找35
1.5.4 文件压缩和打包36
1.6 网络管理37
1.6.1 网络配置管理37
1.6.2 Linux防火墙38
1.6.3 网络连通性诊断40
1.7 进程管理42
1.7.1 什么是进程43
1.7.2 进程的常见状态43
1.7.3 进程优先级的调整43
1.7.4 进程的终止44
1.8 软件安装46
1.8.1 源码编译安装46
1.8.2 使用包管理Yum48
1.8.3 创建自己的Yum仓库49
1.9 系统安全检测与审计51
1.9.1 AIDE系统入侵检测 51
1.9.2 审计53
第2章 系统性能分析56
2.1 性能分析简介56
2.2 系统分析的基本工具56
2.2.1 CPU性能分析工具56
2.2.2 内存性能分析工具60
2.2.3 磁盘性能分析工具62
2.2.4 sar64
2.3 软件分析的基本工具66
2.3.1 ldd66
2.3.2 strace与ltrace66
2.3.3 ipcs71
2.3.4 systemtap73
2.4 与内存相关的那些事情76
2.4.1 内存泄漏76
2.4.2 虚拟内存、物理内存与页缺失78
2.4.3 Out of Memory79
2.4.4 Overcommit79
2.4.5 cache与buffer80
2.5 与磁盘相关的那些事情80
2.5.1 HDD与SSD80
2.5.2 HDD磁盘的调度算法81
2.5.3 文件系统中的日志82
2.6 系统资源限制82
2.6.1 ulimit82
2.6.2 Cgroup84
第3章 用户集中认证91
3.1 openLDAP简介91
3.2 openLDAP的安装91
3.3 openLDAP的配置92
3.4 利用openLDAP集中认证95
第4章 域名服务器DNS97
4.1 DNS服务简介97
4.2 DNS安装配置98
4.2.1 DNS安装过程98
4.2.2 关于chroot的解释99
4.2.3 配置主配置文件99
4.2.4 DNS的正向解析配置100
4.2.5 DNS的反向解析配置101
4.2.6 利用DNS实现负载均衡103
4.3 DNS的主从复制104
4.4 配置纯缓存的DNS服务106
4.5 DNS的客户端配置107
4.5.1 Linux中的配置107
4.5.2 Windows中的配置108
第5章 系统备份109
5.1 为什么要备份109
5.2 常见的备份机制110
5.2.1 完全备份110
5.2.2 增量备份110
5.2.3 差异备份111
5.3 Bacula简介111
5.3.1 什么是Bacula111
5.3.2 Bacula的基本组件112
5.4 Bacula的安装和配置112
5.4.1 Bacula控制器114
5.4.2 Bacula存储守护进程120
5.4.3 Bacula客户端文件守护进程121
5.4.4 Bacula控制台122
5.4.5 启动服务122
5.4.6 Bacula配置综述122
5.5 使用Bacula进行备份和恢复124
5.5.1 执行备份124
5.5.2 文件恢复127
5.6 Bacula的使用和维护129
5.6.1 Bconsole的用法129
5.6.2 使用Bacula进行文件验证130
5.6.3 Catalog的维护和备份131
5.7 备份的策略132
5.7.1 备份什么133
5.7.2 备份到哪里133
5.7.3 备份的时间133
5.7.4 测试和监控备份133
第6章 集群与存储134
6.1 存储的基本概念134
6.2 SAN134
6.2.1 SAN的选择135
6.2.2 iSCSI的配置135
6.3 分布式文件系统与集群文件系统138
6.3.1 分布式文件系统138
6.3.2 GlusterFS的配置138
6.4 高可用集群141
6.4.1 Red Hat HA Cluster简介141
6.4.2 配置一个高可用的Apache集群142
6.5 负载均衡集群151
6.5.1 HAProxy负载均衡151
6.5.2 Nginx负载均衡153
6.5.3 LVS负载均衡155
第7章 Graphite159
7.1 Graphite是什么159
7.1.1 Graphite不是一个告警系统159
7.1.2 Graphite的功能和特色159
7.2 Graphite的基本组件160
7.2.1 Whisper160
7.2.2 Carbon161
7.2.3 Graphite Web162
7.3 Graphite的安装162
7.3.1 安装Whisper数据库163
7.3.2 安装Carbon守护进程163
7.3.3 安装graphite-web163
7.4 Graphite 的配置(单点)164
7.4.1 配置Carbon守护进程164
7.4.2 给Carbon Cache发送数据166
7.4.3 配置Graphite-web167
7.5 Graphite的配置(集群配置)169
7.5.1 配置Carbon Relay170
7.5.2 Relay中的数据复制172
7.5.3 数据聚合172
7.5.4 Graphite Cluster174
7.6 使用Graphite Web175
7.6.1 Graphite的Render API175
7.6.2 Graphite作图函数176
7.6.3 Graphite Dashboard和Grafana178
7.7 Graphite 的性能监控和调整181
7.8 其他182
7.8.1 Whisper文件操作182
7.8.2 压力测试183
7.8.3 其他工具185
第8章 系统大规模部署186
8.1 概述186
8.2 与PXE不得不说的故事186
8.2.1 PXE简介186
8.2.2 PXE实战187
8.3 系统部署工具Cobbler192
8.3.1 Cobbler简介192
8.3.2 Cobbler安装192
8.3.3 Cobbler 配置193
8.3.4 Cobbler应用197
8.3.5 Cobbler API202
8.3.6 Cobbler Replicat
展开