linux 分析和排查系统故障

日志分类:
?系统日志:存放系统产生的消息,由syslog统一管理
?用户日志:记录系统用户登录、退出、登录失败等相关信息
?程序日志:由各种应用程序独立管理的日志文件,格式不统一。(安装的每个程序都会产生自己的日志)

用户日志:
?lastlog: 每个用户登录历史
?secure: 用户登录的安全方面
?wtmp: 退出消息
?btmp: 登录失败消息

日志格式:日期时间 主机名 服务名 详细描述
下方每行代表一条日志,开头是日期时间,主机名,服务名,最后是产生日志的详细信息

日志管理工具: rsyslog (默认运行)


debug:调试,开启后会产生大量调试信息(不管做什么都会产生信息)
info:消息,一般信息
err:错误,运行某些内容出现错误

查看当前登入用户:users 、 who
查看最近登入历史:last
查看登入失败日志:lastb
查看安全日志记录:vim /var/log/secure

MBR(主引导程序):一块磁盘的第一个柱面的第一个扇区的第一个磁道是MBR的起点,直到第512字节。里面包含了系统引导程序、硬盘分区表。前446字节是引导程序 + 64字节的磁盘分区表 + 2字节的校验
root=’hd0,msdos1’ //指定/boot所在的分区,第一块磁盘的第一个分区

提前备份MBR:因MBR里存在分区表,所以不能备份在本硬盘里,需备份到另一块磁盘中。
添加一块硬盘——格式化——分区——挂载——备份
dd if=/dev/sda of=/123/ban bs=512 count=1 //从/dev/sda中拿出一个512字节放在/123(挂载sdb的文件夹)中,名字叫做ban(随意一个名字) (一般的引导文件都存放在/dev/sda下

模拟故障: dd if=dev/zero of=/dev/sda bs=512 count=1 //从dev/zero中拿出512字节覆盖/dev/sda的前512字节。

修复故障:进入救援模式——选择第二项——按1回车进入救援模式终端——创建文件夹并且挂载sdb——恢复
Dd if=/atm/sda.mbr.bak of=/deev/sda bs=512 count=1 //将备份的文件覆盖到MBR的前512字节。

模拟故障之后重启,插入光盘显示如下界面,选择第三项(救援模式)。第一项和第二项都是安装系统

同样选择第二项(救援模式)

根据描述与需求选择不同数字 (这里的大意是将/目录放在/mut/sysimage)1 表示保存

进入救援模式终端

进入救援模式之后,新建一个目录,将/dev/sdb挂载在目录之下(由于文件是写在磁盘之下的,挂载之后磁盘里的文件会自动出现在目录中),然后将备份的文件覆盖到MBR的前512字节。

GRUB2 //引导程序,存在MBR前446字节中。(引导内容是先找到内核,然后加载系统)
Grub2故障现象:无法找到系统。
配置文件地址:/boot/grub2/grub.cfg
Linux16 //引导内核
Initrdi16 //引导系统

模拟故障:rm -rf /boot/grub2/grub.cfg //删除grub配置文件
修复过程:F2进入bios——光盘启动——进入救援模式

进入救援终端之后——挂载一下根——重新安装grub——手动生成配置文件
chroot /mnt/sysimage //挂载根
grub2-install /dev/sda //重新安装grub2
grub2-mkconfig -o /boot/grub2/grub.cfg //生成配置文件
exit //退出
reboot //重启
重启之后:进入BIOS——恢复正常启动

恢复root密码
?进入救援模式:passwd root 新密码 //更改新密码
?启动项姐们,按e,在linux16………root 后加入 rw init=/sysroot/bin/sh
然后ctrl+X进入单用户模式
Chroot /sysroot //挂载根
Passwd root //更改密码
Exit
Reboot

在这个界面上按e修改启动项

将ro改成rw init=/sysroot/bin/sh


直接更改密码(输入两次新密码,第二次是确认新密码)然后重启

xfs repair /dev/sdb1 //修复文件系统
i节点耗尽故障(等同于文件数限制,若出现此故障,则需要删除一些文件)
df?–i?/backup??? //查看/backup的i节点数
创建32M分区
mkfs.xfs?–f?/dev/sdb1???//强制格式化
vim?atm?.sh
#!/bin/bash
!=1
While[$i?–le?17000]
do
touch?/backup/file$i
let?i++
done
chmod?+x?atm.sh?????????//赋予atm.sh执行权限
sh?atm.sh???????????????//执行

原文地址:http://blog.51cto.com/13968682/2348826

时间: 02-06

linux 分析和排查系统故障的相关文章

linux分析和排查系统故障

一.日志文件 日志文件目录: /var/log/messages:记录linux内核消息及各种应用程序的公共日志信息 /var/log/cron:记录crond计划任务产生的事件信息 /var/log/maillog:记录进入或发出系统的电子邮件活动 /var/log/dmesg:记录linux系统在引导过程中的各种事件 /var/log/lastlog:记录每个用户最近的登陆事件 /var/log/secure:记录用户认证相关的安全事件信息 /var/log/wtmp:记录每个用户登录,注销

基于Xenomai的实时Linux分析与研究

转自:http://blog.csdn.net/cyberlabs/article/details/6967192 引 言 随着嵌入式设备的快速发展,嵌入式设备的功能和灵活性要求越来越高,很多嵌入式设备中都开始使用操作系统.由于工作的特殊性, 很多嵌入式设备要求系统对外部事件的中断响应必须在事先设定的时限范围内完成,使系统具有可预测性,而通用的桌面操作系统大都是非实时或者是软实时的,无 法满足需求,因此就必须使用实时操作系统(Real—Time Operating System,RTOS).  

linux分析apache日志获取最多访问的前10个IP

apache日志分析可以获得很多有用的信息,现在来试试最基本的,获取最多访问的前10个IP地址及访问次数. 既然是统计,那么awk是必不可少的,好用而高效. 命令如下: awk '{a[$1] += 1;} END {for (i in a) printf("%d %s\n", a[i], i);}' 日志文件 | sort -n | tail 首先用awk统计出来一个列表,然后用sort进行排序,最后用tail取最后的10个. 以上参数可以略作修改显示更多的数据,比如将tail加上-

Linux 连接数过多排查思路

## 在连接数报警的机器上,查看某个端口tcp连接来源,并排序 netstat -natl |grep ^tcp |grep ":2181" |awk '{print $5}'|awk -F":" '{count[$1]++}; END{for(ip in count) print ip, ": " count[ip]}' |sort -n -k3 -r ## 找到最多的tcp对应的机器,在那台机器上查看哪个进程占用最多连接 ## 进程号 net

linux常见故障及解决方案

分析和排查系统故障 要求: 日志文件分析 将/etc/Bluetooth文件夹改名:然后启动Bluetooth服务,观察故障现象:通过分析/var/log/messages文件中的相关记录,判断故障原因,并修复该故障. 步骤: 1.     将/etc/bluetooth目录改名为/etc/bluetooth.bak,执行"service Bluetooth start"命令尝试启动服务,将出现错误提示信息"Can't open RFCOMM config file:No s

我的Linux,我做主!

最近比较忙,一直没有更新博客的机会,今天看到这个很有吸引力的topic,就想跟大家一起聊聊,我与linux的不解之缘吧. 记得第一次听说linux,还是在上大学的时候,对于我们这些被windows"洗脑"太深人来说才知道原来世界上还有不同的操作系统,unix,unix like,linux,由于是大学的一门课程,没有太多实践的机会,老师的介绍也仅仅是照本宣科,但是那已经足够拓展了我们的视野和思路,为日后更深入的了解做了良好的铺垫,算是美好的"邂逅"吧,记得那时候业余

致DBA:为什么你经常犯错,是因为你做的功课不够

专职做DBA已经6年多的事件了,看同行.同事犯了太多的错误,自己也犯了非常多的错误.一路走来,感触非常深.然而绝大多数的错误其实都是很低级的错误.有的是因为不了解某个引擎的特性导致:有的是因为对线上环境不了解导致:有的是因为经验不足导致:一路上,跌跌撞撞,从小公司DBA,到腾讯高级DBA,再到现在的金融数据库DBA. 不由得想起5年前的我,刚进入DBA行业,缺乏经验,经常犯错误,不是我不够努力,更多的是初来咋到的我根本不知道应该在哪方面下功夫.本文就是基于这方面的考虑,根据自己在DBA这个职业上

龙芯GO!龙芯平台上构建Go语言环境指南

龙芯软件生态系列——龙芯GO!龙芯平台上构建Go语言环境指南2016-07-05 龙芯中科1初识Go语言Go语言是Google公司于2009年正式推出的一款开源的编程语言,是由Robert Griesemer.KenThompson和Rob Pike等世界顶尖计算科学家精心打造的系统编程语言.Go语言最显著的特点是编码简洁迅速.支持高效并发和自动内存管理等.此外,Go语言还面向网络服务器.存储系统和数据库等领域的编程进行了优化设计,并且简化了应用系统的安装和部署.因此,Go语言受到了广大程序员的

[转载]腾讯专家:论高级DBA的自我修养

作者介绍: 张秀云:2007年开始从事运维方面的工作,经历过网络管理员.linux运维工程师.DBA.分布式存储运维等多个IT职位.对linux运维.mysql数据库.分布式存储有丰富的经验.2012年加盟腾讯,目前在腾讯负责腾讯云数据库平台和分布式存储运维平台的运维规划工作. 微信:feihongwuhen 前言 专职做DBA已经6年多的事件了,看同行.同事犯了太多的错误,自己也犯了非常多的错误.一路走来,感触非常深.然而绝大多数的错误其实都是很低级的错误. 有的是因为不了解某个引擎的特性导致

苹果系统中有些程序无法强制退出导致无法正常关机怎么办?

建议用系统自带的磁盘工具检查系统盘,并修复权限 很简单,就是在实用工具中,运行磁盘工具,然后在左边的窗口选择系统分区,然后右边大框子下边左右硬干分辨有两个按钮,左边的是检查和修复权限,右边的是检查和修复磁盘错误的~都是上边的是检查,下边的是修复~ 全检查并修复,然后重启,看看情况是不是依然存在,一般很多奇怪的问题都能解决~ 建议每次系统升级前都做这步,减少升级失败等奇怪的问题 如果这样做了情况依旧,那么看看是不是该软件本身的问题,一般测试版容易出这个问题,到软件官方网站看看有没有新版本升级或者补