linux系统死机分析及解决方法

一、常见死机原因

二、日志分析

日志系统,通过rsyslog.service服务进行控制,分别用于记录系统内核和各应用程序的日志信息。配置文件/etc/rsyslog.conf

/var/log/messages    记录系统内核消息及各种应用程序的公共日志信息,包括启动、IO错误、网络错误、程序报错等,对于未使用独立日志文件的应用程序或服务,一般都可以从该文件获得相关事件的日志记录信息。
/var/log/cron    记录crond计划任务产生的事件消息
/var/log/dmesg    记录系统在引导过程中的各种事件信息
/var/log/maillog    记录进入或发出系统的电子邮件活动
/var/log/lastlog    最近几次成功登录时间和最后一次不成功的登录事件
/var/log/rpmpkgs    记录系统安装各rpm包列表信息
/var/log/secure    记录用户登录认证过程中的事件信息
/var/log/wtmp    记录每个用户登录,注销及系统启动和停机事件信息,不能cat查看,只能last/lastb查看

通常情况下,内核及大多数系统消息都被记录到公共日志文件/var/log/messages中,而其他程序消息被记录不同的日志文件中,日志消息还能够记录特定的存储设备中,或者直接向用户发送。

2.2 日志消息的重要程度

linux系统中根据日志消息的重要程度,分为不同的优先级别(数字越小,优先级越高,消息越重要)

>0 EMERG(紧急):会导致主机系统不可用的情况。 
>1 ALERT(警告):必须马上采取措施解决的问题。 
>2 CRIT(严重):比较严重的情况。 
>3 ERR(错误):运行出现错误。 
>4 WARNING(提醒):可能影响系统功能,需要提醒用户的重要事件。 
>5 NOTICE(注意):不会影响正常功能,但是需要注意的事件。 
>6 INFO (信息):一般信息。 
>7 BEBUG(调试):程序或系统调试信息等。

2.3 日志记录格式

由rsyslog服务统一管理的大部分日志文件,日志记录格式基本是相同的。例如公共日志文件/var/log/messages记录内核及系统日志的基本格式

日志每行表示一条消息,每个消息均由四个字段的固定格式

>:时间标签:消息发出的日期和时间。   
>:主机名:生成消息的计算机的名称。   
>:子系统名称:发出消息的应用程序的名称。   
>:消息:消息的具体内容。

一般将日志信息发送到其他设备存储,即使黑客入侵后想清除相应的痕迹,使管理员难以发现。

2.4 用户日志

wtmp/utmp/lastlog等都是用户日志文件,保存系统用户登录、退出等的相关信息,都是二进制文件,不能直接tail/cat查看,需通过who/w//last/lastb/ac等命令查询

2.5 日志文件管理策略

>:日志备份和归档:日志文件也是重要的数据资料,同样需要进行备份和归档。
>:延长日志保存期限:在存储空间富裕的情况下,日志数据保留的时间应尽可能长。
>:控制日志访问权限:日志数据中可能会包含各类敏感信息,如:账号、口令等。所以需要严格控制其访问权限。
>:集中管理日志:使用集中的日志服务器管理各服务器发送的日志记录等。其好处在于方便对日志的收集、整理和分析,杜绝意外的丢失、恶意篡改或删除等。

2.6 日志集中管理

2.6.1 日志服务器A

/etc/sysconfig/rsyslog 将SYSLOGD_OPTIONS变量的内容改为“-r -x -m 0”即可。

-r    表示允许接受其他服务器发送过来的日志记录

-x    表示不进行DNS域名解析

-m    表示记录日志的时间间隔,0表示禁用该功能

2.6.2 客户机B

修改/etc/rsyslog.conf配置文件

vi /etc/syslog.conf 
cron.*                         @173.17.17.3 
service syslog restart

2.6.3 验证

在B上修改crontab中内容,观察A上是否记录相应日志。

时间: 2024-08-02 02:46:02

linux系统死机分析及解决方法的相关文章

嵌入式/X86下linux系统死机及内存优化

一.  CPU 过高或死锁导致系统卡死 1. CPU占用过高 (1)开线程太多导致CPU占用过高,系统卡死 解决:优化应用层业务逻辑,有些业务不必开线程就不开 (2)频繁清缓存导致读spi-flash频繁,引起CPU过高 解决:在内核中文件系统部分进行处理,不去清缓存,然后在应用层用后台服务进程清缓存.这样可能导致系统内存不够用,这样就需要再对系统内存进行优化 2. CPU死锁 (1)Spinlock+死等导致死锁 (2)应用层pthread_mutex_lock死锁 3.  CPU过热导致系统

宏碁本安装linux系统找不到操作系统的解决方法。

最近在笔记本上安装linux,ubuntu15.04系统.自己做了一个U盘启动盘安装,安装完进入blos设置ubuntu为第一启动项. 之后之后,重启电脑就显示“无法找到操作系统”,完蛋了.没办法,估计是启动项的问题,网上搜了搜,找到了一个超级厉害的万能解决办法,贴下来: 就是Boot-repair, ubuntu特有的傻瓜型修复引导工具.无论是win不能引导, 还是ubuntu不能引导,还是死在grub提示符..反正就是安装ubuntu后启动出问题了, 都可以用这个方法解决, 唯一的要求是安装

解决Oracle+weblogic系统死机的问题

前段时间发布的系统(Oracle+weblogic)频繁挂掉,每天早上9点.下午2点高峰期就挂,纠结了很长时间,最终解决,方法描述下. 执行select count(*),status from v$session group by status;指令,发现不活动连接数比较大,当上升到一定数值之和,就挂. 做了下面优化,包括数据库的优化和WebLogic的优化. 1.数据库优化 1)  创建pfile SQL>create pfile from spfile 检查 oracle/product/

Windows变慢原因分析及解决方法

<p>Windows变慢原因分析及解决方法  <br/> <br/> <br/> <br/> 谁都希望计算机一开机就可以立即进入Windows 系统而不用等待,或者是系统在使用的时候不会越来越慢,但由于种种原因常常使这些愿望不能实现,甚至一开机就死机或者用着用着就越来越慢的情况也经常发生.其实有些时候Windows 启动速度缓慢并不是它本身的问题,而是一些设备或软件造成的.本文就是软件.硬件和病毒三大方面来分析系统速度变慢的原因,并且提供了针对系

嵌入式 Linux 系统移植——BSP分析

嵌入式 Linux 系统移植--BSP分析 一.BSP简介 嵌入式系统由硬件环境.嵌入式操作系统和应用程序组成,硬件环境是操作系统和应用程序运行的硬件平台,它随应用的不同而有不同的要求.硬件平台的多样性是嵌入式系统的主要特点,如何使嵌入式操作系统在不同的硬件平台上有效地运行,是嵌入式系统开发中需要解决的关键问题.解决的方法是在硬件平台和操作系统之间提供硬件相关层来屏蔽这些硬件的差异,给操作系统提供统一的运行环境,硬件相关层就是嵌入式系统中的板级支持包 BSP(Board Support Pack

linux系统web日志分析脚本

linux系统web日志分析这方面工具比较多,比如logwatch或awstats等使用perl语言开发,功能都非常强大.但这些软件都需要进行一些配置,很多朋友往往在技术方面没有投入太多力量,即便参照互联网上图文教程也无从下手.对于此情况我编写了一个web日志分析脚本,功能比较简单,无需配置,有需要的朋友可以再尝试一下.  脚本地址: gbk版(一般ssh客户端不用调整直接可用: wget http://jinxiang.oss-cn-hangzhou.aliyuncs.com/weblogch

SQL Server2005索引碎片分析和解决方法

SQL Server2005索引碎片分析和解决方法 本文作者(郑贤娴),请您在阅读本文时尊重作者版权. 摘要: SQL Server,为了反应数据的更新,需要维护表上的索引,因而这些索引会形成碎片.根据工作量的特征,这些碎片会影响对应的工作性能.此文帮助决定是否需要整理碎片以改善性能的信息.SQL Serve提供一些命令来实现索引的碎片整理.这里比较其中两个命令:DBCC DBREINDEX 和 DBCC INDEXDEFRAG. 关键词: SQL Server;索引碎片;数据库优化毫无疑问,给

MySQL死锁问题实例分析及解决方法

MySQL死锁问题的相关知识是本文我们主要要介绍的内容,接下来我们就来一一介绍这部分内容,希望能够对您有所帮助. 1.MySQL常用存储引擎的锁机制 MyISAM和MEMORY采用表级锁(table-level locking) BDB采用页面锁(page-level locking)或表级锁,默认为页面锁 InnoDB支持行级锁(row-level locking)和表级锁,默认为行级锁 2.各种锁特点 表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低 行级锁

Linux一直启动不了的解决方法

Linux一直启动不了的解决方法 虚拟机里的Linux启动不起来 决定开机 按住esc键,看一下到底启动到哪一步出错 从图中可以看出是挂载文件系统的时候出错,文件系统是CIFS, 是samba,Unable to find suitable address 说明机器找不到samba服务器的地址 先用单用户模式启动,编辑/etc/fstab文件 vi  /etc/fstab 注释掉挂载samba那一行 然后重启机器,发现还是不行, 发现这次轮到挂载NFS出问题 再次注释掉NFS那一行重新启动机器