天天看點

Linux 系統日志的組成

Linux 系統日志的組成

主要的日志子系統:

1.連接配接時間日志--由多個程式執行,把記錄寫入到/var/log/wtmp和/var/run/utmp,login等程式更新wtmp和utmp檔案,使系統管理者能夠跟蹤誰在何時登入到系統。

2.程序統計--由系統核心執行。當一個程序終止時,為每個程序往程序統計檔案(pacct或acct)中寫一個紀錄。程序統計的目的是為系統中的基本服務提供指令使用統計。

3.錯誤日志--由syslogd(8)執行。各種系統守護程序、使用者程式和核心通過syslog(3)向檔案/var/log/messages報告值得注意的事件。另外有許多UNIX程式建立日志。像HTTP和FTP這樣提供網絡服務的伺服器也保持詳細的日志。

常用的日志檔案如下:

     access-log          記錄HTTP/web的傳輸

   acct/pacct          記錄使用者指令

   aculog            記錄MODEM的活動

   btmp            記錄失敗的紀錄

   lastlog           記錄最近幾次成功登入的事件和最後一次不成功的登入

   messages          從syslog中記錄資訊(有的連結到syslog檔案)

   sudolog           紀錄使用sudo發出的指令

  sulog           紀錄使用su指令的使用

   syslog           從syslog中記錄資訊(通常連結到messages檔案)

   utmp            紀錄目前登入的每個使用者

   wtmp            一個使用者每次登入進入和退出時間的永久紀錄

   xferlog           紀錄FTP會話

直接删除日志:

   1. 删除所有的日志:find   /var   -type   f   -exec   rm   -v   {}   \;(最後的分号也是必須指令的一部分)

   2. 設定/etc/logrotate.d/syslog檔案控制日志檔案的大小。

   3. 如果實在想自己手工清空某些日志檔案的話, 可以使用指令:>   /var/log/message。這個指令的功能是把檔案message中的内容清空。 也可以将此指令加入到cron任務中。

linux詳細日志解析:

unix系統日志檔案通常是存放在"/var/log and /var/adm"目錄下的。通常我們可以檢視syslog.conf來看看日志配置的情況.如:cat /etc/syslog.conf

其中sunos的在/var/log和/var/adm下.還有/usr/adm為/var/adm的連結.

redhat的在/var/log 和 /var/run下.

下面的是sun os5.7中的日志樣本.

# ls /var/adm

acct    log      messages.1    passwd    sulog   vold.log

aculog   messages   messages.2    sa      utmp    wtmp

lastlog   messages.0  messages.3    spellhist   utmpx   wtmpx

# ls /var/log

authlog      syslog    syslog.1   syslog.3

sysidconfig.log  syslog.0   syslog.2   syslog.4

下面的是redhat6.2中的日志樣本.

boot.log   dmesg       messages.2    secure     uucp

boot.log.1  htmlaccess.log  messages.3    secure.1    wtmp

boot.log.2  httpd       messages.4    secure.2    wtmp.1

boot.log.3  lastlog      netconf.log   secure.3    xferlog

boot.log.4  mailllog      netconf.log.1  secure.4    xferlog.1

cron     maillog      netconf.log.2  sendmail.st   xferlog.2

cron.1    maillog.1     netconf.log.3  spooler     xferlog.3

cron.2    maillog.2     netconf.log.4  spooler.1    xferlog.4

cron.3    maillog.3     news       spooler.2

cron.4    maillog.4     normal.log    spooler.3

daily.log   messages     realtime.log   spooler.4

daily.sh   messages.1     samba       transfer.log

# ls /var/run

atd.pid    gpm.pid    klogd.pid   random-seed    treemenu.cache

crond.pid   identd.pid   netreport   runlevel.dir   utmp

ftp.pids-all inetd.pid   news      syslogd.pid

一般我們要清除的日志包括如下:

lastlog

utmp(utmpx)

wtmp(wtmpx)

messages

syslog

繼續閱讀