liunx基本命令(十一)系統日誌管理
一、系統日誌預設分類
/var/log/messages ##系統服務及日誌,包括服務的資訊,報錯等等/var/log/secure ##系統認證資訊日誌
/var/log/maillog ##系統郵件服務資訊
/var/log/cron ##系統定時任務資訊
/var/log/boot.log ##系統啟動資訊
二、日誌管理服務rsyslog
vim /etc/rsyslog.conf##系統日誌配置檔案
日誌裝置(型別).(連線符號)日誌級別 日誌處理方式(action)重啟系統日誌服務後目錄下會有ltmsg目錄。
日誌管理服務有兩個基本作用
(1)負責採集日誌和分類存放日誌(2)日誌分類
systemctl restart rsyslog
1、日誌裝置(型別).(連線符號)日誌級別
(1)日誌裝置(日誌型別)
auth ##pam產生的日誌authpriv ##ssh,ftp等登入資訊的驗證資訊
cron ##時間任務相關
kern ##核心
lpr ##列印
mail ##郵件
mark(syslog)–rsyslog ##服務內部的資訊,時間標識
news ##新聞組
user ##使用者程式產生的相關資訊
uucp ##unix to unix copy, unix主機之間相關的通訊
local 1~7
(2)日誌級別
(7)debug ##除錯級。有調式資訊的,日誌資訊最多(6)info ##通知級。一般資訊的日誌,最常用
(5)notice ##注意級。最具有重要性的普通條件的資訊
(4)warning ##警告級。
(3)err ##錯誤級。阻止某個功能或者模組不能正常工作的資訊
(2)crit ##臨界級。嚴重級別,阻止整個系統或者整個軟體不能正常工作的資訊
(1)alert ##警戒級。需要立刻修改的資訊
(0)emerg ##致命級。核心崩潰等嚴重資訊
none
注意:從上到下,級別從低到高,記錄的資訊越來越少
詳細的可以檢視手冊: man 3 syslog
(3)連線符號
.xxx ##表示大於等於xxx級別的資訊,例如.err 表示34567所有級別的日誌
.=xxx ##表示等於xxx級別的資訊.!xxx ##表示在xxx之外的等級的資訊
三、日誌處理
1. 記錄到普通檔案或裝置檔案
*.* /var/log/file.log ##絕對路徑*.* /dev/pts/0
測試:
logger -p local3.info ‘KadeFor is testing the rsyslog and logger‘ ## logger 命令用於產生日誌
2. 傳送給使用者(需要線上才能收到)
*.* root*.* root,kadefor,westos ## 使用,號分隔多個使用者
*.* * ## *號表示所有線上使用者
3. 忽略,丟棄
local3.* ~ ## 忽略所有local3型別的所有級別的日誌4. 執行指令碼
local3.* ^/tmp/a.sh
# ^號後跟可執行指令碼或程式的絕對路徑
# 日誌內容可以作為指令碼的第一個引數.# 可用來觸發報警
四、日誌同步
首先,關閉雙方的防火牆再配置雙方的配置檔案
日誌傳送方
vim /etc/rsyslog.conf
通過UDP協議把日誌傳送到11主機,@表示UDP,@@表示TCP
日誌接受方
vim /etc/rsyslog.conf
如果是UDP就去掉15,16行的“#”,TCP去掉19,20行的。
最後再重啟雙方的日誌服務
測試;
傳送方重啟sshd服務
日誌接收方執行
> /var/log/messages##清空日誌
tail -f /var/log/message
五、日誌分析工具journal
1、journald
-n 5##顯示最新5條,如果有時間限制,就如上圖所示,顯示前5條。
-p err##顯示報錯
--since --until ## 從什麼時間到什麼時間的日誌
-f##監控日誌
-o verbose ##顯示日誌能夠使用的詳細程序引數
2、systemd-journald服務
可以收集來自核心,啟動過程,標準輸出,系統日誌,守護程序和執行期間的錯誤訊息。預設情況下,systemd日誌儲存在/run/log/journal中,系統重啟時這些日誌會被刪除。
如果將日誌存在/var/log/journal中,就會永久儲存。
實現步驟:
新建日誌目錄
更改目錄許可權
或者
chown root.systemd-journal /var/log/journalchmod 2755 /var/log/journal
重啟日誌服務
目錄下會產生日誌檔案
六、時間同步
1、服務端
yum install chrony -y##安裝服務vim /etc/chrony.conf##主配置檔案
##允許誰去同步我的時間
##刪除30行“#”,表示不去同步任何人的時間,自己作為時間同步伺服器
2、客戶端
vim /etc/chrony.confserver 服務端主機ip iburst
3、雙方重啟時間同步服務,關閉雙方防火牆
systemctl restart chronydsystemctl stop firewalld
測試:chronyc sources -v
七、timedatectl
timedatectl status##顯示當前時間資訊
timedatectlset-time##設定當前時間
timedatectl list-timezone##檢視所有時區
timedatectlset-timezone##設定當前時區
timedatectlset-local-rtc 0|1 ##設定是否使用utc時間(本地時間)