美文网首页
Linux系统故障排查(笔记)

Linux系统故障排查(笔记)

作者: 任总 | 来源:发表于2022-03-02 13:24 被阅读0次
    • 以下内容仅当本人学习备忘之用,如有侵权,请联系删除。


      故障排查步骤
    for i in `rpm -qa`; do rpm -V $i &> /dev/null || echo $i; done
    

    查询RPM版本信息,防止病毒修改

    明确故障

    找到故障现象直接表现,基本上能找到故障问题。

    故障举例:无法通过ssh登录系统?

    ssh他是一个用户态的应用程序,来回的传送指令,同时它会用到网络、tcp连接、存储方面的,他自身还有一些认证机制。
    查看它发生时间和频率,是不固定的发生,还是固定那个时间段发生,分析是不是业务使用高负载时间段,明确这个故障,源端、客户端有没有其他方法登录ssh。


    信息收集

    1.ssh -v查看客户端debug信息
    2.采集信息分析,有没有可能高负载时候,ssh无法连接


    重要日志项
    rceslogd服务分拣和转发日志 ,/var/log/secure只存储着sshd服务端的信息,没有客户端日志。
    /var/log/dmesg里面存储的是上次启动
    sos软件包

    sosreport --batch 自动输出的tar包,包含收集来的日志信息

    收集的日志分类

    收集了有启动、块设备、内核、pci等等的相关日志。


    以sos执行的命令,为文件名

    这些是sosreport执行的命令,来搜集相关的日志信息。

    提出假设
    使用各种方法,提出各自问题接近问题的原因。
    验证假设
    熟悉内部逻辑,开辟新的方向,验证可能的因素。
    故障解决
    故障排查需要的能力
    寻求帮助
    案例网站:https://access.redhat.com

    man命令

    man命令介绍
    main文档
    查看系统调用类别 系统调用类别main文档

    硬件故障

    识别硬件命令
    模块程序查看

    modprobe是加载和卸载内核模块,-r参数是卸载相关联的模块。
    dmesg是从启动到当前,系统内核模块存储到缓冲buff内核日志。


    排查手段
    常见硬件故障的日志形态

    启动故障的排查

    启动故障举例
    启动流程
    排查手段

    进入单用户模式

    红帽7进入单用户模式
    确认根目录可读写

    进入救援模式

    使用镜像启动救援模式,注意镜像版本不得小于当前系统版本


    救援模式
    修复挂载方式
    选择3手动挂载根目录进行修复
    挂载启动目录 重新生成initfs
    常见启动故障的日志形态
    查看启动时候根目录在哪,分别启动那些
    查看启动时候lv

    文件系统故障

    文件系统故障
    EXT文件系统结构
    XFS文件系统结构
    文件系统常用工具
    • /proc/mounts 查询文件变成只读
    • tune2fs 查看超级块信息
    • dumpe2efs 查看数据块信息
    • e2fsck 检查ext2、ext3、ext4等文件系统的正确性


      fsck注意
      文件系统只读
      inode问题
      空间未释放
    • 利用空间未释放的问题,可以恢复误删除文件,先找到文件进程pid,然后在/proc/[pid]/fd/下找到文件,拷贝出来。


      文件系统日志故障
    • 注意:修复必须先umount


      存储故障
    LVM Metadata描述 vg查询
    vg内部记录
    • status正常时候有三个,有问题会提示


      pv丢失,一般按照这个流程删除,否则会报错PV丢失
      多路径软件
      scsi debug日志等级收集调试,FFFFFF代表收集所有日志
      数据操作,需要谨慎操作
      常见的存储系统故障的日志形态
    • 一个报错DID都是硬件故障

    网络故障

    网络故障举例
    网络的分层模型
    网络不通使用的命令
    BROADCACST支持广播、 MULTICAST支持多播、up代表协议开启、 LOWER_UP物理链路已开启
    • tcpdump参数 -i 指定网卡 -s 指定数据包 -w 抓包结果以二进制形式存储到文件 -r 解析抓包的文件内容 -nn以数字形式显示结果,尽量使用二进制方式抓包信息比较完整,使用wireshark查看二进制文件。


      找出丢包点
      网络延迟高判断
      常见网络故障日志形态

    应用故障

    应用故障举例
    应用运行的环境
    • 查询应用的依赖库是否缺失,应用的依赖库和系统的库发生冲突或者名称重复,需要隔离,解决是不同用户运行不通的应用和容器化,yum源尽量使用一个不能用不同版本。
    • strace命令追踪使用https://www.cnblogs.com/machangwei-8/p/10388883.html
      strace命令
      应用debug方法
      kdupmp
      kdupmp配置,高配置的服务器不建议使用auto,512M适用大多场景
      触发事件
      kdump测试,soft lookup内核锁触发
      panic开关配合开启
      可以临时打开,重启后失效

    相关文章

      网友评论

          本文标题:Linux系统故障排查(笔记)

          本文链接:https://www.haomeiwen.com/subject/msolnltx.html