linux 宕機日志在哪

linux宕機日志在“/var/log/”中;linux下的“/var/log/”的log日志,包括message、內核報錯日志demsg等;其中sa記錄是記錄cpu、內存等運行的性能文件;利用sa文件可以查看宕機時CPU和內存情況。

linux 宕機日志在哪

本教程操作環境:linux5.9.8系統、Dell G3電腦。

linux 宕機日志在哪?

linux主機宕機排查思路

原因分析

服務器分類,web服務器,數據庫服務器,文件服務器,中間件,其它服務器。

web服務器分析:常見的web應用apache,nginx,IIS等。

宕機原因很多,cpu,內存,IO磁盤,應用BUG,內核BUG,硬件等

系統和內核版本

linux 宕機日志在哪

流程

1.查看宕機的時間記錄和歷史登陸還有重啟時間

last reboot

linux 宕機日志在哪

last -F |grep crash

linux 宕機日志在哪

查看歷史登陸有沒有異常的用戶

last

linux 宕機日志在哪

2.首先查看系統日志。如linux下的/var/log/下的log日志,包括message,內核報錯日志demsg等等,sa記錄,是記錄cpu,內存等運行的性能文件,記錄著運行時的cpu的運行狀態如圖所示。

利用sa文件查看宕機時CPU情況

linux 宕機日志在哪

利用sa文件查看宕機時內存情況

linux 宕機日志在哪

日志量往往很大

還可以進行模糊查詢,如

查看報錯

tail?-200?/var/log/messages?|grep?"Error" cat?/var/log/dmesg?|grep?"Error"

查看內核崩潰日志

tail?-200?/car/log/messages?|grep?"crash"

查看是否出現OOM,一般會出現kill殺死進程的情況

cat?/var/log/messages?|grep?-i?"kill"

還可以查看宕機時間段的日志,查看12月11日15點的日志

cat?/vat/log/messages?|grep?"Feb?11?15*"

3.查看內存使用

free -m,查看swap的使用和內存剩余情況和緩存。如果swap用了,且available也不夠了,具體還要查看參數cat /proc/sys/vm/swappiness,如果設置為0,說明內存不夠了。

linux 宕機日志在哪

4.查看io和文件系統使用

觀察idle和iowait。磁盤讀寫時會用到緩存,一般為系統內存的40%,但是中間有一個緩沖時間120秒,將要用完這個緩存時,且會等待120秒,才會寫入磁盤,在讀寫頻繁的時候容易造成hang住的情況。

linux 宕機日志在哪

查看IO的讀寫速度,如果很慢說明磁盤性能出現瓶頸。

linux 宕機日志在哪

文件系統使用

linux 宕機日志在哪

5.查看安全日志

安全日志為/var/log/secure,查看history記錄,查看是否有人登陸主機并做了惡意動作,例如關機。

linux 宕機日志在哪

6.利用kdump和crash工具分析內核

檢查服務器開啟了kdump服務,并在/var/crash目錄找到了當天生成的vmcore文件,使用crash工具分析vmcore文件。

Kdump 用于對內存鏡像的轉儲,它不但可以轉儲內存鏡像到本地硬盤,還可以將內存鏡像通過NFS,SSH 等協議轉儲到不同機器的設備上。

Kdump 分為兩個組件:Kexec 和Kdump。

Kexec 是一種內核的快速啟動工具,可以使新的內核在正在運行的內核(生產內核)的上下文中啟動,而不需要通過耗時的BIOS 檢測,方便內核開發人員對內核進行調試。

Kdump 是一種有效的內存轉儲工具,啟用 Kdump 后,生產內核將會保留一部分內存空間,用于在內核崩潰時通過 Kexec 快速啟動到新的內核,這個過程不需要重啟系統,因此可以轉儲崩潰的生產內核的內存鏡像。

7.查看服務日志和監控軟件

如果在能找到宕機時進程的占用情況,可以根據占用異常的服務查看其日志。

服務日志一般有數據庫和web服務,中間件,框架等。

還可以查看監控軟件的歷史記錄圖像,找到峰值點和宕機時間點的圖像分析如下圖。

linux 宕機日志在哪

8.總結

系統宕機的原因很多,需要我們細心的按照流程分析,

linux 宕機日志在哪

linux 宕機日志在哪

相關推薦:《Linux視頻教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊14 分享