Linux日志系統(tǒng)以及日志文件功能詳解

2016年11月10日11:30:08 發(fā)表評論 4,123 ℃

Linux上的日志系統(tǒng)

syslog

syslog-ng: 開源

日志系統(tǒng):syslog()

A:
B:
D:
syslog服務(wù):

sysload:系統(tǒng),非內(nèi)核產(chǎn)生的信息
klogd:內(nèi)核,專門負(fù)責(zé)記錄內(nèi)核產(chǎn)生的日志信息

kernel-->物理終端(/dev/console)-->/var/log/dmesg

dmesg命令:

cat /var/log/dmesg 內(nèi)核產(chǎn)生的引導(dǎo)信息

日志需要滾動(日志切割):
/sbin/init

/var/log/messages:系統(tǒng)標(biāo)準(zhǔn)錯誤日志信息:非內(nèi)核產(chǎn)生引導(dǎo)信息:各子系統(tǒng)產(chǎn)生的信息
/var/log/maillog:郵件系統(tǒng)產(chǎn)生的日志信息
/var/log/secure: 

syslog:

syslogd
klogd
配置文件:/etc/rsyslog.conf

信息詳細(xì)程序:日志級別


子系統(tǒng):facility,設(shè)施

/etc/rsyslog.conf配置文件定義格式為: facility.priority        action 

facility,可以理解為日志的來源或設(shè)備目前常用的facility有以下幾種: 

    auth       # 認(rèn)證相關(guān)的 

    authpriv    # 權(quán)限,授權(quán)相關(guān)的 

    cron       # 任務(wù)計劃相關(guān)的 

    daemon      # 守護進程相關(guān)的 

    kern        # 內(nèi)核相關(guān)的 

    lpr        # 打印相關(guān)的 

    mail       # 郵件相關(guān)的 

    mark       # 標(biāo)記相關(guān)的 

    news       # 新聞相關(guān)的 

    security    # 安全相關(guān)的,與auth 類似  

    syslog      # syslog自己的 

    user       # 用戶相關(guān)的 

    uucp       # unix to unix cp 相關(guān)的 

    local0 到 local7  # 用戶自定義使用 

    *         # *表示所有的facility 

 

 priority(log level)日志的級別,一般有以下幾種級別(從低到高) 

    debug           # 程序或系統(tǒng)的調(diào)試信息 

    info            # 一般信息

    notice          # 不影響正常功能,需要注意的消息 

    warning/warn      # 可能影響系統(tǒng)功能,需要提醒用戶的重要事件 

    err/error        # 錯誤信息 

    crit            # 比較嚴(yán)重的 

    alert           # 必須馬上處理的 

    emerg/panic       # 會導(dǎo)致系統(tǒng)不可用的 

    *              # 表示所有的日志級別 

    none            # 跟* 相反,表示啥也沒有 

     

 action(動作)日志記錄的位置 

    系統(tǒng)上的絕對路徑      # 普通文件 如: /var/log/xxx 

    |                # 管道  通過管道送給其他的命令處理 

    終端              # 終端   如:/dev/console 

    @HOST             # 遠(yuǎn)程主機 如: @10.0.0.1      

    用戶              # 系統(tǒng)用戶 如: root 

    *                # 登錄到系統(tǒng)上的所有用戶,一般emerg級別的日志是這樣定義的 

定義格式例子: 

mail.info   /var/log/mail.log # 表示將mail相關(guān)的,級別為info及 

                      # info以上級別的信息記錄到/var/log/mail.log文件中 

auth.=info  @10.0.0.1         # 表示將auth相關(guān)的,基本為info的信息記錄到10.0.0.1主機上去 

                       # 前提是10.0.0.1要能接收其他主機發(fā)來的日志信息 

user.!=error                # 表示記錄user相關(guān)的,不包括error級別的信息 

user.!error                 # 與user.error相反 

*.info                    # 表示記錄所有的日志信息的info級別 

mail.*                    # 表示記錄mail相關(guān)的所有級別的信息 

*.*                      # 你懂的. 

cron.info;mail.info           # 多個日志來源可以用";" 隔開 

cron,mail.info              # 與cron.info;mail.info 是一個意思 

mail.*;mail.!=info           # 表示記錄mail相關(guān)的所有級別的信息,但是不包括info級別的

日志文件功能詳解

1./var/log/messages — 包括整體系統(tǒng)信息,其中也包含系統(tǒng)啟動期間的日志。此外,mail,cron,daemon,kern和auth等內(nèi)容也記錄在var/log/messages日志中。

2./var/log/dmesg — 包含內(nèi)核緩沖信息(kernel ring buffer)。在系統(tǒng)啟動時,會在屏幕上顯示許多與硬件有關(guān)的信息??梢杂胐mesg查看它們。

3./var/log/auth.log — 包含系統(tǒng)授權(quán)信息,包括用戶登錄和使用的權(quán)限機制等。

4./var/log/boot.log — 包含系統(tǒng)啟動時的日志。

5./var/log/daemon.log — 包含各種系統(tǒng)后臺守護進程日志信息。

6./var/log/dpkg.log – 包括安裝或dpkg命令清除軟件包的日志。

7./var/log/kern.log – 包含內(nèi)核產(chǎn)生的日志,有助于在定制內(nèi)核時解決問題。

8./var/log/lastlog — 記錄所有用戶的最近信息。這不是一個ASCII文件,因此需要用lastlog命令查看內(nèi)容。

9./var/log/maillog /var/log/mail.log — 包含來著系統(tǒng)運行電子郵件服務(wù)器的日志信息。例如,sendmail日志信息就全部送到這個文件中。

10./var/log/user.log — 記錄所有等級用戶信息的日志。

11./var/log/Xorg.x.log — 來自X的日志信息。

12./var/log/alternatives.log – 更新替代信息都記錄在這個文件中。

13./var/log/btmp – 記錄所有失敗登錄信息。使用last命令可以查看btmp文件。例如,”last -f /var/log/btmp | more“。

14./var/log/cups — 涉及所有打印信息的日志。

15./var/log/anaconda.log — 在安裝Linux時,所有安裝信息都儲存在這個文件中。

16./var/log/yum.log — 包含使用yum安裝的軟件包信息。

17./var/log/cron — 每當(dāng)cron進程開始一個工作時,就會將相關(guān)信息記錄在這個文件中。

18./var/log/secure — 包含驗證和授權(quán)方面信息。例如,sshd會將所有信息記錄(其中包括失敗登錄)在這里。

19./var/log/wtmp或/var/log/utmp — 包含登錄信息。使用wtmp可以找出誰正在登陸進入系統(tǒng),誰使用命令顯示這個文件或信息等。

20./var/log/faillog – 包含用戶登錄失敗信息。此外,錯誤登錄命令也會記錄在本文件中。

除了上述Log文件以外, /var/log還基于系統(tǒng)的具體應(yīng)用包含以下一些子目錄:

/var/log/httpd/或/var/log/apache2 — 包含服務(wù)器access_log和error_log信息。

/var/log/lighttpd/ — 包含light HTTPD的access_log和error_log。

/var/log/mail/ –  這個子目錄包含郵件服務(wù)器的額外日志。

/var/log/prelink/ — 包含.so文件被prelink修改的信息。

/var/log/audit/ — 包含被 Linux audit daemon儲存的信息。

/var/log/samba/ – 包含由samba存儲的信息。

/var/log/sa/ — 包含每日由sysstat軟件包收集的sar文件。

/var/log/sssd/ – 用于守護進程安全服務(wù)。

除了手動存檔和清除這些日志文件以外,還可以使用logrotate在文件達到一定大小后自動刪除。可以嘗試用vim,tail,grep和less等命令查看這些日志文件。

【騰訊云】云服務(wù)器、云數(shù)據(jù)庫、COS、CDN、短信等云產(chǎn)品特惠熱賣中

發(fā)表評論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: