Chinaunix首页 | 论坛 | 博客
  • 博客访问: 306604
  • 博文数量: 84
  • 博客积分: 5016
  • 博客等级: 大校
  • 技术积分: 900
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-30 20:22
文章分类

全部博文(84)

文章存档

2008年(21)

2007年(63)

我的朋友

分类: LINUX

2008-02-16 08:17:07

 
 
syslog
 
   各种重要的日志都可以在/var/log下面找到,当然,如果没有的话可以自己加入。
 
    这些日志有些可以直接tail,有些输入它的名字就可以查看了(我是说,不能cat的那些日志,在$PATH下肯定有一个和它名字相同的程序可以用来查看它)。
 
仅以部分为例:

 文件

 说明

打开方式 

dmesg 

内和缓冲转储 

cat 

lastlog 

各账户最后一次登录时间 

lastlog 

recure 

登录记录 

cat 

syslog 

主要系统日志 

cat 

faillog 

登录失败记录 

faillog 

wtmp 

登录记录 

last/ac 

messages 

主要系统日志 

cat 

 
 
书上都说吧,日志有8个级别,可是吧……我就觉得它有9个级别:
我实在无法翻译得让人一看就能看出来从上向下是按严重级别来划分的,汉语的表述精确度是有限的。

级别

说明

[emerg]

非常状态

[alert]

警报

[crit]

临界

[err]

错误

[warn]

警告

[notice]

注意

[info]

信息

[debug]

debug

[none]

(我认为应该包含的第九个级别)

 注:[none]这个级别比较特殊,会忽略掉syslog.conf中引用它的facility。
 注:有的人将facility翻译为设备,为了避免和device混淆,我就不翻译,直接使用这个单词了。
 
绝大多数日志定义于/etc/syslog.conf
这个文件的语法很直观,一看就懂:
语法:
facility.level                                  action
facility1,facility2,facility3.level      action
facility1.level;facility2.level          action
*.level;facility.none                     action
 
例1:
cron.crit    /var/log/cron.hll
左半部分:当cron产生了crit级别或高于crit级别的消息时;
右半部分:这些消息会被写入/var/log/cron.hll文件。
 
例2:
cron.=crit    /var/log/cron.crit
左半部分:当cron产生了crit级别的消息时;
右半部分:这些消息会被写入/var/log/cron.crit文件。
 
例3:
注:“*”代表“every”,“!”代表“非”,“;”是分隔符,“,”是多个facility间的分隔符。
*.*;news,cron,mail.none    /var/log/message
左半部分:(按语法顺序)当任意facility(第一个*)产生了任意消息(第二个*) 并且 news,cron,mail不记录(最后的none);
     (按汉语语法解释)除了news,cron,mail外的任何facility产生的任何级别的消息;
右半部分:这些消息会被写入/var/log/message文件。
 
 
 
logrotate程序
 
    该程序用于分割日志及自动删除,配置文件为/etc/logrotate.conf。
语法:
/路径/日志文件{
 
#下面一行是声明,声明该段脚本包含了prerotate和postrotate。
    sharedscripts
 
#执行前行为
    prerotate
        命令
    endscript
 
#例:每月执行一次
    monthly
 
#例:保留5份历史
    rotate 5
 
#执行后行为
    postrotate
        命令
    endscript
 
}
阅读(1190) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~