Linux 系统的日志目录

摘要:
查看who/var/log/wtmp[Connection Time log]who/var.log/utmp[Connect Time log]ac-p//查看每个用户的连接时间ac-a//查看所有用户的连接速度ac-d//查看用户的每日连接时间系统日志服务由名为syslog的服务管理。以下日志文件由syslog日志服务驱动:

连接时间的日志

连接时间日志一般由/var/log/wtmp和/var/run/utmp这两个文件记录,通过who查看

who /var/log/wtmp          【连接时间日志】
who /var/log/utmp          【连接时间日志】
ac -p     //查看每个用户的连接时间
ac -a     //查看所有用户的连接时间
ac -d     //查看用户每天的连接时间

系统和服务日志

系统日志服务是由名为syslog的服务管理的,以下日志文件都由syslog日志服务驱动的:
       /var/log/lastlog    :记录最后一次用户成功登陆的时间、登陆IP等信息
       /var/log/messages  :记录Linux操作系统常见的系统和服务错误信息
       /var/log/secure   :系统安全日志,记录用户和工作组变坏、用户登陆认证情况
       /var/log/btmp【last】:记录Linux登陆失败的用户、时间以及远程IP地址
       /var/log/cron      :记录crond计划任务服务执行情况

Linux 系统的日志目录第1张

进程监控日志

进程统计监控日志在监控用户的操作指令是非常有效的。当服务器最近发现经常无故关机或者无故被人删除文件等现象时,可以通过使用进程统计日志查看

[root@server ~]# accton /var/account/pacct      //开启进程统计日志监控
[root@server ~]# lastcomm    [root@server ~]# accton     //关闭进程统计日志监控

image

RedHat6日志服务介绍

在Linux系统,大部分日志都是由syslog日志服务驱动和管理的,syslog服务由两个重要的配置文件控制管理,

CentOS 6及其以上:  /etc/rsyslog.conf主配置文件

                                 /etc/init.d/rsyslog是启动脚本

注意:CentOS 6之前版本是:/etc/syslog.conf. 和 /etc/sysconfig/syslog辅助

[root@server rsyslog.d]# grep -v '#' /etc/rsyslog.conf |grep -v '^$'  

image

消息类型:auth,authpriv,security;cron,daemon,kern,lpr,mail,  mark,news,syslog, user,uucp,local0~local7

错误级别:(8级)debug,info,notice,warning|warn;err|error;crit,alert,emerg|panic

动作域:  file,user,console,@remote_ip

vim /etc/ rsyslog.conf文件

*.info;mail.none;authpriv.none;cron.none           /var/log/messages
表示info级别的任何消息都发送到/var/log/messages日志文件,但邮件系统、验证系统
和计划任务的错误级别信息就除外,不发送(none表示禁止)
cron.*             /var/log/cron 表示所有级别的cron信息发到/var/log/cron文件
*.emerg           * 表示emerg错误级别(危险)的所有消息发给所有用户

日志转发原理了解

对于发送消息到服务器的OS,只要在写/etc/syslog.conf主配置文件的时候,作用域为@server-ip就行了

针对218.192.87.24这台服务器,把一台系统的所有info级别的auth信息发给日志服务器
 auth.info           @218.192.87.24  就OK了
# 重启服务
service rsyslog restart

日志转储服务

系统工作到了一定时间后,日志文件的内容随着时间和访问量的增加而越来越多,

日志文件也越来越大。而且当日志文件超过系统控制范围时候,还会对系统性能造成影响。

储方式可以设为每年转储、每月转储、每周转储、达到一定大小转储。

在Linux系统,经常使用“logrotate”工具进行日志转储,结合cron计划任务,可以轻松实现日志文件的转储。

转储方式的设置由“/etc/logrotate.conf”配置文件控制

logrotate查看帮助;man logrotate

[root@51cto ~]# cat /etc/logrotate.conf
# see "man logrotate" for details              //可以查看帮助文档
# rotate log files weekly
weekly                  //设置每周转储
# keep 4 weeks worth of backlogs
rotate 4               //最多转储4次
# create new (empty) log files after rotating old ones
create                  //当转储后文件不存储时创建它
# uncomment this if you want your log files compressed
#compress                   //以压缩方式转储
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d             //其他日志文件的转储方式,包含在该目录下
# no packages own wtmp -- we'll rotate them here
/var/log/wtmp {                       //设置/var/log/wtmp日志文件的转储参数
    monthly                              //每月转储
    create 0664 root utmp        //转储后文件不存在时创建它,文件所有者为root,所属组为utmp,对应的权限为0664
    rotate 1                                 //转储一次
}
       /var/log/news/* {
           monthly                     
           rotate 2
           olddir /var/log/news/old
           missingok           //若日志文件不存在,则跳过。
           postrotate
               kill -HUP ‘cat /var/run/inn.pid‘      //完成后重启news新闻组服务
           endscript           
           nocompress         //转储时不压缩
       } 

自定义转储服务

1、修改/etc/rsyslog.conf文件使得如下: 

[root@51cto ~]# tail -1 /etc/syslog.conf       //查看该文件的最后一行
	*.info                  /var/log/test.log

2、重启syslog服务:
[root@51cto ~]# /sbin/service syslog restart
3、创建/etc/logrotate.d/test.log日志转储参数配置文件,添加如下:
[root@51cto ~]# vim /etc/logrotate.d/test.log
[root@51cto ~]# cat /etc/logrotate.d/test.log
/var/log/test.log{
    rotate  10
    size = 50k
    compress
    postrotate
    killall -HUP  syslog
    endscript

}

4、查看文件/etc/cron.daily/logrotate:

5、查看转储后的文件

[root@51cto log]# ls /var/log/test.log*

【更多参考】

日志服务器转发功能:

https://yq.aliyun.com/ziliao/25149

https://www.cnblogs.com/hanyifeng/p/5463338.html

免责声明:文章转载自《Linux 系统的日志目录》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Navicat Premium 修改MySQL密码(忘记密码的情况下)《放弃繁琐的if-else》开启Assert断言的新时代下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

关于如何获取剪切板的多个图片处理

  说实话真的没办法,剪切板是个很坑人的东西,它对于放进去的东西就是一次性,如果你想放进去一张图片,然后再塞一张,这是不可能的,但是如果对于不同格式,比如一个是图片格式,一个是文本格式,它是可以放多个不同格式的。   这段时间我也是一直在研究如何来解决这个问题,可是得出来的结论就是:对于你想要将多个图片放在剪切板就只能自己新定义一个剪切板的格式,然后自己识...

java学习手记:推荐编辑器UltraEdit及其配置

 如果不是进行大型的项目开发,只是自己初步学习java,而其中不免要编写测试书上的好多程序,这时我们不用下载安装像Eclipse、JBuilder这些庞大的集成开发环境(IDE)。在这里向大家推荐一款小巧的文本编辑工具UltraEdit。           UltraEdit 是一套功能强大的文本编辑器,可以编辑文本、十六进制、ASCII 码,完全可以取...

LINUX下简单的编译和使用动态链接库[compile .so use c++ in linux]

对动态链接库的概念其实还很模糊,自己的理解是:把一些常用的代码,如函数,类等,编译成一个"包"即DLL(WINDOWS下)或者SO(LINUX下)文件,然后供其它程序使用时直接调用里面封闭的函数即可,实现的代码的重用,也节省了硬盘空间(这点可能是次要的吧).在WIDOWS下利用VC++可方便的生成DLL,在LINUX下则需要通过各种编译命令来实现,对于像我...

linux常见故障处理

目录 一. 文件和目录类 1.1 File exist 文件已经存在 1.2 No such file or directory 没有这个文件或目录(这个东西不存在) 1.3 command not found 命令找不到(没有这个命令) 1.4 invalid option 无效的参数(不可用的参数) 1.5 overwrite 覆盖 1.6 r...

Monkey学习笔记(一)

(一)adb相关命令语句: 1、 查看连接设备信息:adb devices                                  2、安装app到手机上:adb install [-r]  [apk文件存在地址].apk                    3、将文件放入设备/模拟器:adb push [本地文件路径]            ...

mysql查看binlog日志

mysql查看binlog日志    业内目前推荐使用的是row模式,准确性高,虽然说文件大,但是现在有SSD和万兆光纤网络,这些磁盘IO和网络IO都是可以接受的。 那么,大家一定想问,为什么不推荐使用mixed模式,理由如下假设master有两条记录,而slave只有一条记录。master的数据为 +----+--------------------...