案例需求
——公司中使用的Linux服务器越来越多,经常会有个别服务器出现一些引导故障、文件系统故障等情况,需要管理员熟悉常见的系统故障分析和排除过程,以便在需要时能够及时修复
需求描述
基于syslog构建集中管理的日志服务器
保存另一台Linux主机的cron日志信息
备份磁盘sda的MBR扇区,并学会MBR的恢复过程
系统故障模拟及修复
通过单用户模式进入Linux系统,重设root帐号的密码
将 /etc/inittab文件改名或移动,重启后进行修复
通过重新安装GRUB引导程序的方式,修复GRUB引导故障
使用uptime、free、iostat等命令查看主机的性能状况
实现思路
任务1——
基于syslog构建集中管理的日志服务器
日志服务器需修改/etc/sysconfig/syslog 文件:
SYSLOGD_OPTIONS="-r -x -m 0"
保证网络畅通:
日志客户机需修改 /etc/syslog.conf 文件:
cron.* @192.168.0.1
均需重新加载syslog服务,然后进行验证
备份磁盘sda的MBR扇区,并学会MBR的恢复过程
重启系统:
执行”reboot”重启主机即可
注意:
使用dd命令时要谨慎确认,以免发生数据损坏
备份的目标文件应保存到不同的磁盘中
任务2——
系统故障模拟及修复
通过单用户模式进入Linux系统,重设root帐号的密码
回车确认后,按”b”键将系统引导进入单用户模式修给密码
将 /etc/inittab 文件移动,强制重启后进行修复
解决思路
进入急救模式,从备份文件中恢复
或者,在急救模式中重新安装 initscripts 软件包
rpm -ivh --replacepkgs initscripts-8.45.14.EL.i386.rpm
这里我选择第2种方式
执行”reboot”重启主机即可
通过重新安装GRUB引导程序的方式,修复GRUB引导故障
执行"reboot”重启主机即可
使用uptime、free、iostat等命令查看主机的性能状况
直接执行uptime命令查询CPU的负载情况,输出的信息包括:
主机运行了多长时间、登录到系统中的用户数量、CPU平均负载(最近1、5、15分钟内处理的平均进程数)
通过/proc/loadavg文件,可以查看到从系统启动以后到当前时刻的累计CPU负载情况,输出的信息依次为:
1分钟平均负载、5分钟平均负载、15分钟平均负载、正在运行的进程数/进程总数、最近运行的进程PID号
free命令输出的信息包括物理内存和虚拟内存的使用情况,与vmstat相比更直观些:
Mem输出行是物理内存的使用状况:buffers和cached分别对应vmstat输出的buff和cache
Swap是虚拟内存的使用情况:总计、已使用、未使用
磁盘的I/O(输入/输出)性能是衡量计算机总体性能的一个重要指标,iostat命令的几个常用选项如下:
-d 选项:只输出磁盘数据;-k、-m选项:用于以KB、MB为单位输出信息;-t选项:指定刷新信息的时间间隔(秒)
关于磁盘I/O性能的各字段的含义如下:
Device:块设备名 ;Tps:设备每秒进行传输的数量(每秒的I/O请求数);
Blk_read/s,Blk_wrtn/s:设备每秒读写数据块的数量 ;Blk_read, Blk_wrtn:自从系统启动以来读写的块设备的总量
sysstat软件包还提供了 mpstat 命令,用于显示进程负载信息