Linux學習之日誌管理(二十一)

 

Linux學習之日誌管理

 

目錄

日誌管理

  1. 日誌服務
  2. rsyslogd的新特色
  3. 啓動日誌服務
  4. 常見日誌的做用
  5. 日誌文件的通常格式

rsyslogd日誌服務

  1. /etc/rsyslog.conf配置文件
  2. 服務名稱
  3. 鏈接符號
  4. 日誌等級
  5. 日誌記錄位置

日誌輪替

  1. 日誌文件命名
  2. logrotate配置文件
  3. logrotate命令

 

 

 日誌管理

 

 日誌服務

在Centos6.x中日誌服務已經由rsyslogd取代了原先的syslogd服務。rsyslogd日誌服務更加先進,功能更多。可是不論該服務的使用,仍是日誌文件的格式其實都是和syslogd服務相兼容
,因此學習起來基本和syslogd服務一致。

  

 

rsyslogd的新特色

基於TCP網絡協議傳輸日誌信息
更安全的網絡傳輸方式
有日誌消息的及時分析框架
後臺數據庫
配置文件中能夠寫簡單的邏輯判斷
與syslog配置文件相兼容

  

 

啓動日誌服務

(默認開機自動啓服務)
查看服務是否啓動
ps aux | grep rsysogd

查看服務是否自啓動
chkconfig --list | grep rsyslog

 

常見日誌的做用

日誌文件                說明
/var/log/boot.log	該文件記錄了系統在引導過程當中發生的事件,就是Linux系統開機自檢過程顯示的信息。


/var/log/cron		記錄了系統定時任務相關的日誌,該日誌文件記錄crontab守護進程crond所派生的子進程的動做,前面加上用戶、登陸時間和PID,以及派生出的進程的動做。CMD的一個動做是cron派生出一個調度進程的常見狀況。
REPLACE(替換)動做記錄用戶對它的cron文件的更新,該文件列出了要週期性執行的任務調度。RELOAD動做在REPLACE動做後不久發生,這意味着cron注意到一個用戶的cron文件被更新而cron須要把它從新裝入內存。該文件可能會查到一些反常的
狀況。 /var/log/cpus/ 記錄打印信息的日誌 /var/log/cups/ 記錄了系統在開機時內核自檢的信息。也能夠使用dmesg命令直接查看內核自檢信息 /var/log/btmp 記錄錯誤登陸日誌。這個文件是二進制文件,不能直接vi查看,須要使用lastb命令查看 /var/log/lastlog/ 記錄系統中全部用戶最後一次登陸時間的日誌,這個文件也是二進制,不能直接vi,而要使用lastlog命令查看 /var/log/mailog 記錄郵件信息,該日誌文件記錄了每個發送到系統或從系統發出的電子郵件的活動。它能夠用來查看用戶使用哪一個系統發送工具或把數據發送到哪一個系統。 /var/log/message 記錄系統出現重要的日誌,這個日誌文件中會記錄Linux系統的絕大數重要信息,若是系統出現問題時,首先要檢查的就應該是這個日誌文件。 /var/log/secure 記錄驗證和受權方面的信息,只要涉及帳戶和密碼的程序都會記錄,好比說系統的登陸,ssh的登陸,su切換用戶,sudo受權,甚至添加用戶和修改用戶密碼都會添加用戶和修改用戶密碼都會記錄在這個日誌文件 /var/log/wtmp 永久記錄全部用戶的登陸、註銷信息,同時記錄系統的啓動、重啓、關機事件,一樣這個文件也是一個二進制文件,不能直接vi,而須要使用last命令來查看 /var/run.utmp 記錄當前已經登陸的用戶的信息,這個文件會隨意隨着用戶的登陸和註銷而不斷變化,只記錄當前登陸用戶的信息。一樣這個文件不能直接vi,而要使用w,who,users等命令來查詢 /var/log/xferlog 該日誌文件記錄FTP會話,能夠顯示出用戶向FTP服務器或從服務器拷貝了什麼文件。該文件會顯示用戶拷貝到服務器上的用來入侵服務器的惡意程序,以及該用戶拷貝了哪些文件供他使用。 該文件的格式爲:第一個域是日期和時間,第二個域是下載文件所花費的秒數、遠程系統名稱、文件大小、本地路徑名、傳輸類型(a:ASCII,b:二進制)、與壓縮相關的標誌或tar,或"_"(若是沒有壓縮的話)、傳輸方向(相對於服務器而言:
i表明進,o表明出)、訪問模式(a:匿名,g:輸入口令,r:真實用戶)、用戶名、服務名(一般是ftp)、認證方法(l:RFC931,或0),認證用戶的ID或"*"。 Wed Sep 4 08:14:03 2002 1 UNIX 275531 /var/ftp/lib/libnss_files-2.2.2.so b _ o a -root@UNIX ftp 0 * c /var/log/kernlog

  

/var/log/httpd/		RPM包安裝的apache服務的默認日誌目錄


/var/log/mail/		RPM包安裝的郵件服務的額外日誌目錄


/var/log/samba/		RPM包安裝的samba服務的日誌目錄


/var/log/sssd/		守護進程安全服務目錄

  

日誌文件的通常格式

 

基本日誌格式包含如下四列:
事件產生的時間
發生事件的服務器的主機名
產生事件的服務名或程序名
事件的具體信息

  

 

 

 

 

/etc/rsyslog.conf配置文件

 

etc/rsyslog.conf配置文件

rsyslog.conf是rsyslogd的主配置文件,rsyslog是linux系統上用來記錄系統日誌的.rsyslog.conf向後兼容syslogd的syslog.conf文件,因此能夠直接使用syslog.conf。

  

服務名稱

 

 

鏈接符號

 

 

 

日誌等級

 

 


日誌記錄位置

 

 

 

 

 

日誌輪替

 

 

日誌文件命名

在配置文件中擁有"dateext"參數,那麼日誌會用日期做爲日誌文件的後綴
例如:log.20190105
這樣的話日誌文件名就不會重疊,因此也就不須要日誌文件的更名,只須要保存指定的日誌個數,刪除多餘的日誌文件便可。

  

 

logrotate配置文件(/etc/logrotate.conf)

daily    	日誌的輪替週期是天天
weekly   	日誌的輪替週期是每週
monthly  	日誌的輪替週期是每個月
rotate 數字	保留的日誌文件的個數。0指沒有備份
compress	日誌輪替時,舊的日誌進行壓縮
create mode owner group 創建新日誌,同時指定新日誌的權限與全部這和所屬組。如create 0600 root utmp

  

 

logrotate命令

logrotate [選項] [配置文件名]
選項:
若是此命令沒有選項,則會安裝配置文件中的條件進行日誌輪替
-v:顯示日誌輪替過程。加了-v選項,會顯示日誌的輪替的過程
-f:強制進行日誌輪替。無論日誌輪替的條件是否已經符合,強制配置文件中全部日誌進行輪替。

  

 

RPM包安裝的服務不須要進行日誌輪替,自動進行。
只有源碼包安裝的服務才須要自行定義

把apache日誌加入輪替
vi /etc/logrotate.conf
/usr/local/apache2/logs/access_log{
  daily
  create
  rotate 30
}
相關文章
相關標籤/搜索