1. 程式人生 > >Linux學習總結(二十九)系統日誌

Linux學習總結(二十九)系統日誌

log dmesg last xargs screen

系統日誌記錄了系統每天發生的各種各樣的事情,比如檢測系統狀況,檢測服務的啟動狀況,用戶的登陸情況等。我們可以通過日誌找出某個錯誤發生的原因,或者追蹤到攻擊者留下的蛛絲馬跡。

1 /var/log/messages

它是核心系統日誌文件,包含了系統啟動時的引導信息,以及系統運行時的其他狀態信息。I/O錯誤、網絡錯誤和其他系統錯誤都會記錄到這個文件中。比如
某個人的身份切換為root,以及用戶自定義安裝的軟件(apache)的日誌也會在這裏記錄。
該日誌文件時做故障診斷第一要檢查的文件。許多應用的狀態信息都要記錄在此,為了讓我們查找方便,系統啟動了一個日誌輪詢的機制,每星期切換一個日誌,切換後的日誌名字類似於messages-20170322,會存放在/var/log/目錄下面,連同message一共有5個這樣的日誌文件。這裏的20170322就是切割日誌的標識日期,通過logrotate工具實現,它的配置文件為/etc/logrotate.conf

先看下message文件
技術分享圖片
/var/log /message 是由rsyslogd這個守護進程產生的,如果停止該服務,系統將不會產生該日誌,所以該服務不要停止。rsyslogd服務的配置文件為/etc/rsyslog.conf.這個文件定義日誌的級別。該文件不要輕易修改。

2 dmesg

該命令可以顯示系統的啟動信息,比如你的硬盤或者網卡有問題,用該命令可以看到,
可以嘗試用 dmesg |grep error 找到對應記錄。該打印信息沒有記錄在日誌裏,只存在於當前內存中
技術分享圖片

3 安全日誌

last命令用來查看登陸linux的歷史信息,具體用法如下:
last |head
技術分享圖片
從左往右依次為:賬戶名稱,登陸終端,登陸客戶端ip,登陸日期,登出時間,駐留時長。

該命令的輸出信息實際上市讀取了二進制文件/var/log/wtmp,當然不能用cat直接查看。
另外/var/log/secure 也是和登陸信息相關的日誌文件。該文件記錄驗證和授權方面的信息。比入ssh登陸系統成功或失敗時,相關的信息都會記錄在此。
以後要養成隨時查看日誌的習慣,比如當apache啟動失敗時,就可以更具日誌查找原因。

4 xargs 與 exec

這二者都能替代一個命令的輸出結果,exec主要是個find一起配合使用。
xargs 用作替換工具,讀取輸入數據重新格式化後輸出

echo "hello ,world" > a.txt
ls a.txt |xargs cat

技術分享圖片
如果xargs 後面的命令要帶雙選項,則用-i 選項,示例如下:

find ./ -name "*txt" |xargs -i mv {} b.txt
技術分享圖片
exec 應用
找出當前目錄創建時間大於10天的文件並刪除
find ./ -mtime +10 -exec rm -rf {} \;
批量更改文件名:
技術分享圖片

5 screen 工具

為了不讓一個任務意外中斷
nohup command &
screen是一個虛擬終端
yum install -y screen 沒有的話安裝一下
screen直接回車就進入了虛擬終端
ctral a組合鍵再按d退出虛擬終端,但不是結束
screen -ls 查看虛擬終端列表
screen -r id 進入指定的終端,退出虛擬終端用exit
screen -S lv 指定名稱創建一個虛擬終端
screen -r lv 用名稱登陸
技術分享圖片

Linux學習總結(二十九)系統日誌