一、簡介
syslog是Linux系統默認的日志守護進程。默認的主配置文件和輔助配置文件分別是/etc/syslog.conf和/etc/sysconfig/syslog文件。通常,syslog 接受來自系統的各種功能的信息,每個信息都包括重要級。/etc/syslog.conf 文件通知 syslogd 如何根據設備和信息重要級別來報告信息。
二、配置文件
/etc/syslog.conf 文件按照以下格式進行配置
facility.level action
說明 :facility.level為選擇條件,本身分為兩個字段,之間用一個小數點(.)分隔。action和facility.level之間使用TAB隔開。
facility 消息類型,指定 syslog 功能,主要包括:
kern 內核信息,首先通過 klogd 傳遞; user 用戶進程; mail 郵件; daemon 后台進程; authpriv 授權信息; syslog 系統日志; lpr 打印信息; news 新聞組信息; uucp 由uucp生成的信息 cron 計划和任務信息。 mark syslog 內部功能用於生成時間戳 local0----local7 與自定義程序使用,例如使用 local5 做為 ssh 功能
* 通配符代表除了 mark 以外的所有功能
level 消息級別,指定syslog優先級,主要包括:
emerg 或 panic 該系統不可用(最緊急消息) alert 需要立即被修改的條件(緊急消息) crit 阻止某些工具或子系統功能實現的錯誤條件(重要消息) err 阻止工具或某些子系統部分功能實現的錯誤條件(出錯消息) warning 預警信息(警告消息) notice 具有重要性的普通條件(普通但重要的消息) info 提供信息的消息(通知性消息) debug 不包含函數條件或問題的其他信息(調試級-信息量最多) none 沒有重要級,通常用於排錯(不記錄任何日志消息) * 所有級別,除了none
action 動作域,主要包括:
/var/log/lastlog : 記錄每個使用者最近簽入系統的時間
/var/run/utmp : 記錄每個使用者簽入系統的時間, who, users, finger 等指令會查這個檔案. /var/log/wtmp : 記錄每個使用者簽入及簽出的時間, last 這個指令會查這個檔案. 這個檔案也記錄 shutdown 及 reboot 的動作. /var/log/secure : 登錄系統的信息 /var/log/maillog : 記錄 sendmail 及 pop 等相關訊息. /var/log/cron : 記錄 crontab 的相關訊息 ,定時器的信息 /var/log/dmesg : /bin/dmesg 會將這個檔案顯示出來, 它是開機時的畫面訊息. /var/log/xferlog : 記錄那些位址來 ftp 拿取那些檔案. /var/log/messages : 系統大部份的訊息皆記錄在此, 包括 login, check password , failed login, ftp, su 等.
三、編程實例