在 centos 6.x 中,日誌服務已經由 rsyslogd 取代了原先的 syslogd。red hat 公司認為 syslogd 已經不能滿足工作中的需求,rsyslogd 相比 syslogd 具有一些新的特點:
rsyslogd 日誌服務更加先進,功能更多。但是,不論是該服務的使用,還是日誌檔案的格式,其實都是和 syslogd 服務相相容的,所以學習起來基本和 syslogd 服務一致。
查詢 linux 中的 rsyslogd 服務是否啟動
[root@localhost ~]# ps aux | grep"rsyslog
" | grep -v "
grep
"root
9170.0
0.1219752
3684 ? ssl 10:23
0:00 /usr/sbin/rsyslogd -n
查詢 rsyslogd 服務的自啟動狀態
[root@localhost ~]# systemctl list-unit-files | greprsyslog
rsyslog.service enabled
系統中的絕大多數日誌檔案是由 rsyslogd 服務來統一管理的,只要各個程序將資訊給予這個服務,它就會自動地把日誌按照特定的格式記錄到不同的日誌檔案中。也就是說,採用 rsyslogd 服務管理的日誌檔案,它們的格式應該是統一的。
在 linux 系統中有一部分日誌不是由 rsyslogd 服務來管理的,比如 apache 服務,它的日誌是由 apache 軟體自己產生並記錄的,並沒有呼叫 rsyslogd 服務。但是為了便於讀取,apache 日誌檔案的格式和系統預設日誌的格式是一致的。
日誌檔案是重要的系統資訊檔案,其中記錄了許多重要的系統事件,包括使用者的登入資訊、系統的啟動資訊、系統的安全資訊、郵件相關資訊、各種服務相關資訊等。這些資訊有些非常敏感,所以在 linux 中這些日誌檔案只有 root 使用者可以讀取。
那麼,系統日誌檔案儲存在什麼地方呢?還記得 /var/ 目錄嗎?它是用來儲存系統動態資料的目錄,那麼 /var/log/ 目錄就是系統日誌檔案的儲存位置。我們通過表 1 來說明一下系統中的重要日誌檔案。
日誌檔案
說 明
/var/log/cron
記錄與系統定時任務相關的曰志
/var/log/cups/
記錄列印資訊的曰志
/var/log/dmesg
記錄了系統在開機時核心自檢的信總。也可以使用dmesg命令直接檢視核心自檢資訊
/var/log/btmp
記錄錯誤登陸的日誌。這個檔案是二進位制檔案,不能直接用vi檢視,而要使用lastb命令檢視。命令如下:
[root@localhost log]#lastb
root tty1 tue jun 4 22:38 - 22:38 (00:00)
#有人在6月4 日 22:38便用root使用者在本地終端 1 登陸錯誤
/var/log/lasllog
記錄系統中所有使用者最後一次的登入時間的曰志。這個檔案也是二進位制檔案.不能直接用vi 檢視。而要使用lastlog命令檢視
/var/iog/mailog
記錄郵件資訊的曰志
/var/log/message
記錄系統裡要佶息的日誌.這個日誌檔案中會記錄linux系統的絕大多數重要資訊。如果系統出現問題,首先要檢查的應該就是這個日誌檔案
/var/log/secure
記錄驗證和授權方面的倍息,只要涉及賬戶和密碼的程式都會記錄,比如系統的登入、ssh的登入、su切換使用者,sudo授權,甚至新增使用者和修改使用者密碼都會記錄在這個日誌檔案中
/var/log/wtmp
永久記錄所有使用者的登陸、登出資訊,同時記錄系統的後動、重啟、關機事件。同樣,這個檔案也是二進位制檔案.不能直接用vi檢視,而要使用last命令檢視
/var/tun/ulmp
記錄當前已經登入的使用者的資訊。這個檔案會隨著使用者的登入和登出而不斷變化,只記錄當前登入使用者的資訊。同樣,這個檔案不能直接用vi檢視,而要使用w、who、users等命令檢視
除系統預設的日誌之外,採用 rpm 包方式安裝的系統服務也會預設把日誌記錄在 /var/log/ 目錄中(原始碼包安裝的服務日誌存放在原始碼包指定的目錄中)。不過這些日誌不是由 rsyslogd 服務來記錄和管理的,而是各個服務使用自己的日誌管理文件來記錄自身的日誌。以下介紹的日誌目錄在你的 linux 上不一定存在,只有安裝了相應的服務,日誌才會出現。服務日誌如表 2 所示。
日誌檔案
說明/var/log/httpd/
rpm包安裝的apache取務的預設日誌目錄
/var/log/mail/
rpm包安裝的郵件服務的額外日誌因錄
/var/log/samba/
rpm色安裝的samba服務的日誌目錄
/var/log/sssd/
守護程序安全服務目錄
只要是由日誌服務 rsyslogd 記錄的日誌檔案,它們的格式就都是一樣的。
日誌檔案的格式包含以下 4 列:
我們檢視一下 /var/log/secure 日誌,這個日誌中主要記錄的是使用者驗證和授權方面的資訊,更加容易理解。命令如下:
[root@localhost ~]# vi /var/log/securejun
503:20:46 localhost sshd[1630]:accepted password for root from 192.168.0.104 port 4229
ssh2
# 6月5日
03:20:46 本地主機 sshd服務產生訊息:接收從192.168.0
.104主機的4229埠發起的ssh連線的密碼
jun
503:20:46 localhost sshd[1630]:pam_unix(sshd:session):session opened for user root by (uid=0
)#時間 本地主機 sshd服務中pam_unix模組產生訊息:開啟使用者root的會話(uid為0)
jun
503:25:04 localhost useradd[1661]:new group:name=bb, gid=501
#時間 本地主機 useradd命令產生訊息:新建立bb組,gid為501
jun
503:25:04 localhost useradd[1661]:new user:name=bb, uid=501, gid=501, home=/home/bb, shell=/bin/bash
jun
503:25:09 localhost passwd:pam_unix(passwd:chauthtok):password changed for bb
擷取了一段日誌的內容,注釋了其中的三句日誌,如果我們的伺服器出現了一些問題,比如系統不正常重啟或關機、使用者非正常登入、服務無法正常使用等,則都應該先查詢日誌。
Linux系統日誌管理
在linux系統上面,系統可以記錄從開機到當前系統上面何時發生了哪些事情,並將其分類,分別寫到特定的日誌檔案當中,如系統自身產生的問題 使用者登入資訊,網路資料資訊等等,我們可以根據這些日誌資訊來解決系統方面的錯誤,網路服務問題等等 1.日誌 歷史事件 時間,地點,人物,事件 日誌級別 事件的關鍵性...
Linux入門之系統日誌管理
在linux系統中,有專門採集資訊的服務rsyslog,它不產生日誌,只起到採集作用。採集日誌的目的則是為了記錄系統中有意義的動作,遇到系統故障,我們可以通過日誌來恢復比較重要的資訊。因此,日誌的採集對我們使用者尤為重要。日誌檔案記錄了時間 地點 人物和事件四大資訊,系統的日誌檔案預設都集中放置到 ...
linux系統管理(日誌)
var log message 系統啟動後的資訊和錯誤日誌,是red hat linux中最常用的日誌之一 var log secure 與安全相關的日誌資訊 var log maillog 與郵件相關的日誌資訊 var log cron 與定時任務相關的日誌資訊 var log spooler 與...