从基础知识入手,系统讲解了Linux系统结构、shell、主流服务器搭建及故障排除、用户权限管理、磁盘存储管理、文件系统管理、内存管理和系统进程管理等关键技术,深入研究了系统性能优化思路、系统性能评估与优化、集群技术、负载均衡等Linux热点主题。
强调学习方法以及技术能力的培养,在每个知识点后都给出了大量操作案例,括了详细的操作步骤,具有很强的可操作性,并对案例进行分析,提供了解决问题的思路和方法,做到了授人以渔。
适合希望系统、全面学习Linux技术的初学者作为教材,也适合Linux系统管理员、数据库管理人员、网络安全管理人员、系统集员和系统架构师参考。
作者简介
内容提要
前言
谈谈Linux学习方法
本书结构和主要内容
本书读者对象
勘误和支持
致谢
第一篇基础知识篇
第1章学习Linux的经验与技巧
1.1Linux在各领域发展的现状与趋势
1.1.1Linux与开源软件
1.1.2Linux在服务器领域的发展
1.1.3Linux在桌面领域的发展
1.1.4Linux在移动嵌入式领域的发展
1.1.5Linux在云计算/大数据领域的发展
1.2选择适合自己的Linux发行版
1.2.1常见的Linux发行版
1.2.2初学者入门首选——CentOS系列
1.2.3桌面平台首选——UbuntuLinux
1.2.4企业级应用首选——RHEL/CentOS系列
1.3养成良好的Linux操作习惯
1.3.1一定要习惯命令行方式
1.3.2理论结合实践
1.3.3学会使用Linux联机帮助
1.3.4学会独立思考问题,独立解决问题
1.3.5学习专业英语
1.3.6Linux学习路线图
1.4用虚拟机技术学习Linux
1.4.1虚拟机技术
1.4.2使用虚拟机技术的好处
1.4.3虚拟机的运行环境和硬件需求
1.4.4虚拟机的安装与使用
1.5Linux学习资源
1.5.1网络资源、搜索引擎、论坛
1.5.2有本书在身边
第2章Linux系统的安装与基础配置
2.1安装需求
2.2Linux的几种安装方式
2.2.1硬盘安装方式
2.2.2U盘安装方式
2.2.3网络安装方式
2.2.4光驱安装方式
2.3光驱安装过程
2.3.1分区命名方案
2.3.2开始安装
2.4U盘安装过程
第3章Linux系统基本结构
3.1Linux控制台的使用
3.2系统与硬件
3.2.1Linux硬件资源管理
3.2.2Linux外在设备的使用
3.3文件系统结构介绍
3.3.1目录结构
3.3.2系统核心组成
3.4运行机制介绍
3.4.1Linux初始化init系统
3.4.2runlevel到target的改变
3.4.3系统关机过程
3.5系统服务管理工具systemd
3.5.1启动、停止、重启服务
3.5.2查看、禁止、启用服务
3.5.3systemd命令和sysvinit命令对比
3.6Linux与SecureCRT
3.6.1SecureCRT概述
3.6.2SecureCRT的安装与使用
3.6.3与SecureCRT相关的Linux命令
第4章Linux常用命令及使用技巧
4.1Linux下的shell简介
4.1.1什么是shell
4.1.2shell命令的语法分析
4.2系统管理与维护
4.2.1ls命令
4.2.2pwd命令
4.2.3cd命令
4.2.4date命令
4.2.5passwd命令
4.2.6su命令
4.2.7clear命令
4.2.8man命令
4.2.9who命令
4.2.10w命令
4.2.11uname命令
4.2.12uptime命令
4.2.13last命令
4.2.14dmesg命令
4.2.15free命令
4.2.16ps命令
4.2.17top命令
4.3文件管理与编辑
4.3.1mkdir命令
4.3.2more命令
4.3.3cat命令
4.3.4diff命令
4.3.5grep命令
4.3.6rm命令
4.3.7touch命令
4.3.8ln命令
4.3.9file命令
4.3.10cp命令
4.3.11find命令
4.3.12split命令
4.3.13mv命令
4.4压缩与解压
4.4.1zip/unzip命令
4.4.2gzip/gunzip命令
4.4.3bzip2/bunzip2命令
4.4.4tar命令
4.4.5dd命令
4.4.6cpio命令
4.5磁盘管理与维护
4.5.1df命令
4.5.2du命令
4.5.3fsck命令
4.5.4sync命令
4.5.5eject命令
4.5.6mount/umount命令
4.6网络设置与维护
4.6.1ifconfig命令
4.6.2scp命令
4.6.3netstat命令
4.6.4traceroute命令
4.6.5telnet命令
4.6.6wget命令
4.7文本编辑工具vi
第5章Linux下软件的安装与管理
5.1源码安装方式
5.1.1下载、解压源码
5.1.2分析安装平台环境
5.1.3编译、安装软件
5.1.4通过源码安装ApacheHttpserver
5.2RPM包方式安装
5.2.1RPM介绍
5.2.2RPM包的种类和组成
5.2.3RPM工具的使用
5.3yum安装方式
5.3.1yum的安装与配置
5.3.2yum的特点与基本用法
5.3.3几个不错的yum源
5.4二进制软件安装方式
5.4.1安装“*.tar.gz”、“*.bz2”二进制软件包
5.4.2提供安装程序的软件包
第二篇服务器搭建篇
第6章Linux服务器网络配置
6.1网卡驱动的安装
6.1.1网卡驱动安装的一般思路
6.1.2编译安装网卡
6.2配置Linux网络
6.2.1不同Linux发行版的网络配置文件
6.2.2网络配置文件详解
6.3Linux网络应用
6.3.1Linux下的IP别名功能
6.3.2开启Linux代理转发功能
6.3.3路由的概念与配置
6.3.4Linux路由器的架设
第7章架设Linux服务器
7.1使用OpenSSH远程管理Linux服务器
7.2Web服务器的搭建
7.2.1Apache与Tomcat整合的必要性
7.2.2Apache和Tomcat连接器
7.2.3Apache与Tomcat以及JK模块的安装
7.2.4Apache与Tomcat整合配置
7.3LAMP服务器的搭建
7.3.1LAMP与WordPress概述
7.3.2LAMP服务环境的搭建
7.3.3测试LAMP环境安装的正确性
7.4DNS服务器的搭建
7.4.1DNS服务器概述
7.4.2DNS服务器的搭建
7.5Samba服务器的搭建
7.5.1Samba的概念和功能
7.5.2Samba的安装与配置
第8章构建高性能的MySQL数据库系统
8.1MySQL与MariaDB
8.2常见的高可用MySQL解决方案
8.2.1主从复制解决方案
8.2.2MMM高可用解决方案
8.2.3Heartbeat/SAN高可用解决方案
8.2.4Heartbeat/DRBD高可用解决方案
8.2.5MySQLCluster高可用解决方案
8.3通过Keepalived搭建MySQL双主模式的高可用集群系统
8.3.1MySQL复制介绍
8.3.2MySQL复制的实现原理
8.3.3MySQL复制的常用架构
8.3.4MySQL主主互备模式架构图
8.3.5MySQL主主互备模式配置
8.3.6配置Keepalived实现MySQL双主高可用
8.3.7测试MySQL主从同步功能
8.3.8测试Keepalived实现MySQL故障切换
8.4通过MMM构建MySQL高可用集群系统
8.4.1MMM高可用MySQL方案简介
8.4.2MMM典型应用方案
8.4.3MMM高可用MySQL方案架构图
8.4.4MMM的安装与配置
8.4.5MMM的管理
8.4.6测试MMM实现MySQL高可用功能
8.5MySQL读、写分离解决方案
8.5.1常见的MySQL读、写分离方案
8.5.2通过Amoeba实现MySQL读、写分离
第9章Linux服务器安全策略
9.1网络安全概述
9.1.1常见攻击类型
9.1.2防范攻击策略
9.2操作系统常用安全策略
9.2.1软件的升级
9.2.2端口与服务
9.2.3密码登录安全
9.2.4其他安全设置
9.3Linux软件防火墙iptables
9.3.1iptables的使用环境
9.3.2iptables的使用规范与语法
9.3.3防火墙规则的查看与清除
9.3.4制定防火墙规则
9.4Linux系统的备份
9.4.1为何要备份Linux系统
9.4.2Linux系统需要备份的数据
9.4.3备份的介质与方式
9.4.4制定备份策略
9.4.5备份工具的选择
第10章Linux故障排查思路与案例
10.1Linux下常见系统故障的处理
10.1.1处理Linux系统故障的思路
10.1.2忘记Linuxroot密码
10.1.3Linux系统无法启动的解决办法
10.2Linux下常见网络故障处理
10.3“Read-onlyfilesystem”错误与解决案例
10.4通过su命令切换用户带来的困惑
10.5因NAS存储故障引起的Linux系统恢复案例
10.5.1故障现象描述
10.5.2问题判断思路
10.5.3问题处理过程
10.5.4解决问题
第三篇系统管理篇
第11章Linux用户权限管理
11.1用户与用户组管理概述
11.1.1用户与组的概念
11.1.2用户配置文件概述
11.2用户管理工具介绍
11.2.1groupadd/newgrp/groupdel命令
11.2.2useradd/usermod/userdel命令
11.3文件与权限的设定
11.3.1查看文件的权限属性
11.3.2利用chown改变属主和属组
11.3.3利用chmod改变访问权限
第12章Linux磁盘存储管理
12.1磁盘管理的基本概念
12.1.1磁盘设备在Linux下的表示方法
12.1.2设备的挂载与使用
12.1.3磁盘分区的划分标准
12.2利用fdisk工具划分磁盘分区
12.2.1fdisk参数含义介绍
12.2.2fdisk实例讲解
12.3利用parted工具规划磁盘分区
12.3.1parted简介
12.3.2parted使用方法
12.3.3parted应用实例
12.4LVM
12.4.1LVM的基本概念
12.4.2LVM中的术语
12.4.3安装LVM工具
12.4.4LVM的创建与管理
第13章Linux文件系统管理
13.1文件系统概述
13.1.1什么是文件系统
13.1.2为什么要使用文件系统
13.1.3文件系统的使用流程
13.2Linux下常用文件系统介绍
13.2.1ext3和ext4文件系统
13.2.2ReiserFS
13.2.3XFS
13.3选择文件系统的标准
13.4NFS的使用
13.4.1NFS简介
13.4.2NFS的实现原理
13.4.3NFS的安装与配置
13.5Linux下常用的数据恢复工具
13.5.1如何使用“rm-rf”命令
13.5.2extundelete与ext3grep的异同
13.5.3extundelete的恢复原理
13.5.4安装extundelete
13.5.5extundelete用法详解
13.5.6实战:通过extundelete恢复数据的过程
第14章Linux内存管理
14.1物理内存和虚拟内存
14.2内存的监控
14.3交换空间的使用
14.4查看进程占用内存
第15章Linux系统进程管理
15.1进程的概念和分类
15.2进程的监控与管理
15.2.1利用ps命令监控系统进程
15.2.2利用pstree监控系统进程
15.2.3利用top监控系统进程
15.2.4利用lsof监控系统进程与程序
15.2.5利用pgrep查询进程ID
15.3任务调度进程crond的使用
15.3.1crond简介
15.3.2crontab工具的使用
15.3.3使用crontab工具的注意事项
15.4用kill和killall终止进程
15.4.1用kill终止进程
15.4.2用killall终止进程
第四篇性能调优篇
第16章Linux系统优化思路
16.1性能问题综述
16.2影响Linux性能的因素
16.2.1系统硬件资源
16.2.2操作系统相关资源
16.2.3应用程序软件资源
16.3分析系统性能涉及的人员
16.3.1Linux运维人员
16.3.2系统架构设计人员
16.3.3软件开发人员
16.4系统性能分析工具
16.5系统性能分析标准
16.6本章总结
第17章Linux系统性能评估与优化案例
17.1CPU性能评估
17.1.1vmstat命令
17.1.2sar命令
17.1.3iostat命令
17.1.4uptime命令
17.1.5本节小结
17.2内存性能评估
17.2.1free命令
17.2.2通过watch与free相结合动态监控内存状况
17.2.3vmstat命令监控内存
17.2.4“sar–r”命令组合
17.2.5本节小结
17.3磁盘I/O性能评估
17.3.1“sar–d”命令组合
17.3.2“iostat–d”命令组合
17.3.3“vmstat–d”命令组合
17.3.4本节小结
17.4网络性能评估
17.4.1通过ping命令检测网络的连通性
17.4.2通过“netstat–I”命令组合检测网络接口状况
17.4.3通过“netstat–r”命令组合检测系统的路由表信息
17.4.4通过“sar–n”命令组合显示系统的网络运行状态
17.4.5本节小结
17.5基于Web应用的性能分析及优化案例
17.5.1基于动态内容的网站优化案例
17.5.2基于动态、静态内容结合的网站优化案例
第五篇虚拟化与集群应用篇
第18章虚拟化云计算平台ProxmoxVE
18.1OpenVZ简介
18.2KVM简介
18.3ProxmoxVE简介
18.4安装ProxmoxVE
18.5ProxmoxVE的使用
18.5.1ProxmoxVE功能选项说明
18.5.2创建OpenVZ虚拟机
18.5.3创建KVM
第19章高性能集群软件Keepalived
19.1集群的定义
19.2集群的特点与功能
19.2.1高可用性与可扩展性
19.2.2负载均衡与错误恢复
19.2.3心跳监测与漂移IP地址
19.3集群的分类
19.3.1高可用集群
19.3.2负载均衡集群
19.3.3分布式计算集群
19.4HA集群中的相关术语
19.5Keepalived简介
19.5.1Keepalived的用途
19.5.2VRRP与工作原理
19.5.3Keepalived工作原理
19.5.4Keepalived的体系结构
19.6Keepalived安装与配置
19.6.1Keepalived的安装过程
19.6.2Keepalived的全局配置
19.6.3Keepalived的VRRPD配置
19.6.4Keepalived的LVS配置
19.7Keepalived基础功能应用实例
19.7.1Keepalived基础HA功能演示
19.7.2通过vrrp_script实现对集群资源的监控
19.7.3Keepalived集群中Master和Backup角色选举策略
第20章负载均衡集群LVS与HAProxy
20.1LVS简介
20.2LVS体系结构
20.3LVS集群的特点
20.3.1IP负载均衡与负载调度算法
20.3.2高可用性
20.3.3高可靠性
20.3.4适用环境
20.3.5开源软件
20.4LVS的安装与使用
20.4.1安装IPVS管理软件
20.4.2ipvsadm的用法
20.5通过Keepalived搭建LVS高可用性集群系统
20.5.1实例环境
20.5.2配置Keepalived
20.5.3配置RealServer节点
20.5.4启动Keepalived+LVS集群系统
20.6测试高可用LVS负载均衡集群系统
20.6.1高可用性功能测试
20.6.2负载均衡测试
20.6.3故障切换测试
20.7高性能负载均衡软件HAProxy
20.7.1HAProxy简介
20.7.24层和7层负载均衡器的区别
20.7.3HAProxy与LVS的异同
20.8HAProxy基础配置与应用实例
20.8.1快速安装HAProxy集群软件
20.8.2HAProxy基础配置文件详解
20.8.3通过HAProxy的ACL规则实现智能负载均衡
20.8.4管理与维护HAProxy
20.8.5使用HAProxy的Web监控平台
20.9搭建HAProxy+Keepalived高可用负载均衡系统
20.9.1搭建环境描述
20.9.2配置HAProxy负载均衡服务器
20.9.3配置主、备用Keepalived服务器
20.10测试HAProxy+Keepalived高可用负载均衡集群
20.10.1测试Keepalived的高可用功能
20.10.2测试负载均衡功能
下载