Linux系統管理初步(九)系統日誌與screen程序
系統日誌是我們了解系統狀況,服務啟動情況,學會閱讀日誌是我們了解系統運行狀況並進行管理的基本技能。
(一)/var/log/messages
系統中的各種操作都會記錄到系統日誌中,日誌儲存在/var/log/目錄中,日誌會被系統的logrotate程序自動切割,就是日誌文件達到你設定的條件時,就自動結束,然後重新生成一個文件開始記錄日誌。
1、查看系統日誌
tail /var/log/messages
確實可以記錄下不少內容的
2、通過/logrotate.conf文件配置日誌記錄機制
cat /etc/logrotate.conf
把主要的內容列在這個
# rotate log files weekly
# keep 4 weeks worth of backlogs
rotate 4 多少份替換掉最舊一份日誌,就是你最多能保存幾份日誌文件,這裏是4,就是說如果你有4份日誌文件了那麽再多出來的一份就會把第一份覆蓋掉,就像監控中你最可以回放的錄像天數。
# create new (empty) log files after rotating old ones
create
# use date as a suffix of the rotated file
dateext
# uncomment this if you want your log files compressed
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
可以把需要使用
# no packages own wtmp and btmp -- we‘ll rotate them here
這個語句下面可以把你要logrotate程序切割的日誌文件的路徑加進來,讓程序自動幫你切割日誌文件,常見的比如Nginx日誌之類。
比如處理:
/usr/local/nginx/logs/*.log {
daily
dateext
compress
rotate 7
sharedscripts
postrotatekill -USR1cat /var/run/nginx.pid
endscript
}
/var/log/wtmp {
monthly
create 0664 root utmp
minsize 1M
rotate 1
}
/var/log/btmp {
missingok
monthly
create 0600 root utmp
rotate 1
}
# system-specific logs may be also be configured here.
(二)dmseg命令
dmesg命令可以顯示系統的啟動信息及硬件錯誤信息,系統某個硬件有問題時,可使用該命令排障。
註意這個命令顯示的日誌與/var/log/dmseg日誌關系不大。
(三)last命令與lastb命令
last命令與lastb命令用於查看系統的登陸用戶,它通過調用系統日誌/var/log/wtmp與/var/log/btmp來顯示系統最近的用戶登陸情況,在進行安全防範時要使用該命令。
>last
>lastb
日誌/var/log/wtmp與/var/log/btmp是二進制文件,不能直接cat
與系統安全相關的日誌還有secure日誌(/var/log/secure),他記錄了用戶嘗試登陸系統,或者暴力破解系統密碼時的信息,幫助你進行下一步處理,比如用fail2ban來鎖定攻擊IP。
二、screen工具
screen是一個虛擬終端工具,一些程序的執行時間很長不能中途中斷,而我們登陸服務器時是遠程登陸的,為了防止系統意外中斷時仍能持續運行一個程序我們就可以使用screen工具。註意即使我們斷開
screen工具非系統自帶,首先需要yum安裝
工具選項
ctrl+A 再+D:新建一個screen
screen -S “自定義名字” :自定義終端名新建screen
screen -ls :列出系統中存在的screen
screen -r id號或者自定義名字:進入特定的screen
操作示例
1、新建一個screen並運行vnstat 1命令
screen
vmstat 1
ctrl+A 再+D
他就移到後臺了
2、切換回到剛在的screen
screen -r 1960
screen -r test1
兩個都可以,後一個是用screen -s test1生成的。
3、殺死一個已經detached的screen會話
screen -X -S (id號或者screen名字) quit
Linux系統管理初步(九)系統日誌與screen程序