一些注意的地方:
日志文件所需的主要服务有与进程有syslogd和klogd。ubuntu10.04下,sysklogd包含了两者。
查看linux是否启动该服务:
ps aux|grep syslog
ps aux|grep klogd
1.日志文件的服务,syslogd
syslog也是一个daemon,他的配置文件主要为/etc/syslog.conf,记录了服务名称、服务等级以及需要被记录到哪里。
自行增加日志文件功能也是记录在这个配置文件中
#vim /etc/syslog.conf
添加如下信息
*.info /var/log/Lily.log
#/etc/init.d/sysklogd restart
#ll /var/log/Lily.log
就可以看到所有的信息记录在Lily.log中了。
由于日志文件如果被改动过会导致不再写入该文件新的内容,因此需要重新启动,让日志文件可以继续写入。
2.安全性设置
如果希望日志文件不被删改,则需要加入隐藏属性 a
加入属性a后,则只可以被增加,而不能被删除
#chattr +a /var/log/messages
#lsattr /var/log/messages
可以看到该文件具备了a属性。
虽然添加隐藏属性可以有效的保护了系统日志的安全,但是也让文件无法被删除与修改,不便于日志文件的轮替操作logrotate
所以在添加了属性a的日志文件在轮替操作时需要将这个属性去掉。
3.日志文件的轮替logrotate
logrotate将日志文件进行轮替操作,配置文件位于
/etc/logrotate.conf
/etc/logrotate.d/ 该目录下的文件会被读到logrotate中执行
logrotate中包括日志文件的绝对路径,执行的操作,需要注意的就是对隐藏属性的处理
如果文件被设置为属性a,则需要去掉,例如上面的messages文件:
...
sharedscripts
prerotate
/usr/bin/chattr -a /var/log/messages
endscripts
sharedscripts
/usr/bin/killall -HUP sysklogd 重新启动
/usr/bin/chattr +a /var/log/messages
endscripts
...
测试:logrotate -v /etc/logrotate.conf
日志文件的分析课通过last,dmesg等。
阅读(2798) | 评论(1) | 转发(0) |