linux日志基础知识

最近,又复习了一下,linux中的日志管理制度;大致可以分为系统日志、程序日志、用户日志三类

系统日志:包括/var/log/{secure,cron,maillog,dmesg,boot.log}等,具体可以通过cat /etc/rsyslog.conf 查看;这些日志文件统一由系统服务rsyslog管理;

rsyslog 安装方法:yum install rsyslog* -y  (注意:空格)

程序日志:顾名思义,就是 一些程序 运行过程中 记录的 日志信息;例如:mysql,apache,nginx,vsftpd程序产生的日志文件;

用户日志:就是和 用户登录或退出系统、认证相关的日志信息;


日志的级别
*debug:错误调试,最低级别。在搭建、测试服务器时需要记录全部信息可以设置为debug, 缺点:占用大量内存
*info:一般记录普通信息,不会导致服务器停掉
*notice:记录不严重,但需注意的
*warn:警告信息,可能有问题,但不会影响到某个daemon(后台程序)运行的信息;基本警告和警告以下级别不会是系统运行不了; 
*err:重大错误信息,这个是很值得去查看的信息,通常它可以帮助我们解决很多问题,比如服务启动不了
*crit:比err还要严重的错误,这个错误已经很严重了
*alert:问题非常严重,比crit更加严重,级别越高表示越严重
*emerg:级别最高,紧急情况,系统几乎要面临死机,通常只有硬件出了问题导致整个内核无法顺利运行,才有这样的信息出现

一直以来,我都不知道 如何 记忆  这些 日志级别;我觉得 好难记忆, 本身就不 经常用, 再 加上 没有 什么 规律 可以 寻找,很是 伤 脑筋,那么怎么 办呢?

【解决办法】调试(debug)  信息(info) ,需要 注意(notice)  警告(warn) 错误(error) ;一旦 出现 重大 错误(crit) 或者 无法 挽救 的错误 (alert),事态 就 很紧急(emerg) 了 。

注意:以上,只是 个人 记忆 方法, 读者 自己 选择  适合 自己 就好 了;每种 日志 级别 都是 英文或英文的简写,学好 英语 真的 很重要...


安装完,rsyslog服务后,会 在 /etc/init.d/目录下,产生 rsyslog的服务启动脚本文件 【区别于 程序启动文件】

----------------------------------------------------
  /var/log下的常见日志文件内容介绍
----------------------------------------------------
boot.log:记录服务启动,记录dhcp(自动分配IP给用户)
dmesg:记录系统的引导、系统开机启动内核检测过程所产生的信息存放在这个文件
wtmp:记录用户登录、注销及系统开关机的信息
lastlog:记录系统最后登录信息
cron:计划任务有没有执行,执行过程中出错没,编写计划任务是否有问题,都记录在这里
faillog:错误登录信息记录在这个文件
messages:记录大部分系统和应用程序的信息,如果系统出现故障,那么这个日志文件是必须查看的日志文件之一
maillog:与邮件服务有关的日志就存放在这里
/var/log/secure:记录用户登录、用户切换等信息,基本上输入帐号密码的事情都会记录在这个文件里,比如ssh,su,sudu,telnet等一些命令都会被记录

其中,用户日志文件有:

/var/log/lastlog:最近的用户登录事件
/var/log/wtmp:用户登录,注销及系统开、关机时间事件;之前登录的活动用户    wtmp = = who temperary == who current  命令 每次显示的内容 写入文件的结果
/var/run/utmp:当前登录的每个用户的详细信息;当前登录的活动用户      utmp == user temperary == users current  好吧,我瞎扯 的 ...
/var/log/btmp:记录用户错误的登录信息      btmp == lastb tmp == lastb 命令 记录 的 日志 信息
以上都属于数据库文件,不能直接用cat,more,less等工具查看

用户登录分析:
who,w,user,last(查看最近哪些用户登录过系统),ac,lastlog(查看所有的用户是否登录过系统)
who 默认调用utmp文件内容(当前的登录活动用户)
w 默认调用utmp文件内容(当前的登录活动用户可以说 w 是 who 的缩写,两者 看的 内容是 一样的, 前者 信息 少,后者信息 多点 
last  =  who /var/log/wtmp (显示时间是倒置的)         查看用户登录记录   显示当前登陆过的用户 和 以前 登陆 的 用户信息
lastlog :查看系统用户最后一次登录系统时间(会出现某些用户从来未登录的信息)       lastlog == last login log == 上次/最近 一次 用户登陆 信息
ac -d -p :统计用户总共登录的时间(查看wtmp的信息进而汇总)


日志类型:

authpriv :主要与认证有关的机制,例如:login,ssh,su
cron :就是计划任务 cron/at等产生信息记录的地方  
daemon :与各个daemon有关的信息
kern :就是内核(kernel)产生信息的地方
lpr :打印机相关信息
mail :只要与邮件收发有关的信息记录都属于这个
news :与新闻群组服务器有关的东西
rsyslog :就是rsyslogd本身产生的服务
mark :syslog内部功能用于生成时间戳
user :用户程序生成的信息
uucp :由uucp生成的信息
local0~local7 :自定义程序使用,如local5为ssh功能
* :代表除了mark以外的所有服务,就是通配符,只是不能匹配mark


消息发送位置:

本地文件:通常就是文件的绝对路径
打印机:例如/dev/lp0 这个打印机装置
用户名称:显示给用户
远程主机:例如@10.0.10.20
* :所有在线的人
-:异步记录,即不马上写入磁盘,优点:减小磁盘的读写时间,一次性存入磁盘。缺点:断电,日志丢失

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值