Ubuntu 故障排除
我的電腦一直無法訪問,重新啟動可以解決問題。它的負載有些重(高 cpu 和高記憶體使用率),但大部分情況下看起來很穩定。
有什麼好方法可以確定它為什麼會死在我身上?我需要在電腦處於負載/生產狀態時執行此操作。
例如:
- 在什麼日誌中尋找什麼?(常見問題的說明?任何好的日誌解析器可以按硬體組件或常見執行緒排序?如何找到重啟的時間戳/日誌條目?按錯誤級別排序?(嚴重,警告等))
- 如何從遠端確定ram是否良好?(memtest,可以與系統的其餘部分一起執行,類似於 Hgi Design for windows 的 memtest)
- 如何判斷硬碟是否有壞扇區?(如何在作業系統級別查找讀/寫錯誤?智能資訊充其量是不准確的,不適合確定問題的程度 imo。-尋找類似於 windows 事件查看器“磁碟錯誤”類別的東西)
- 如何在日誌中找到重啟之前的最後一個錯誤(什麼是解析日誌的好方法) - Bulleric 部分回答,但想要一個如何找到重啟條目/時間戳的具體範例:)
- 如何從日誌中確定(在任何重新啟動後),是什麼導致它變得無響應(EG 尋找耗盡的 ram 信號,如果網路斷開,核心恐慌) - 在 Windows 中,意外的重新啟動事件被記錄為“嚴重”,帶有在此事件之前很有可能有用的日誌條目 - 在 ubuntu 中搜尋什麼來找到它?
*編輯:
根據答案,我想我應該澄清一些:
負載很高,因為它是生產伺服器,而不是因為程序洩漏記憶體,或者在某個無限循環中燒毀 CPU。這是正常的,並且會導致大量日誌,逐行讀取是不切實際的。我熟悉 htop、cacti、nagios、munin - 這些都沒有解決我要問的問題,因為它們只表明系統負載很重(我已經知道了)。
你必須搜尋問題的開始
在什麼日誌中尋找什麼?
第一件事是打開頂部或者如果安裝了 htop
並蒐索重載任務.. 許多活動儲存,程序載入..
如果您發現任何內容,請查看日誌
tail -f /var/log/syslog
tail -f /var/log/ dmesg
並查找以您在 top 或 htop 中找到的最終重載任務命名的錯誤或警告。
在 /var/log/ 中有許多程序的許多日誌文件。
如何從遠端確定ram是否良好?
對於這個問題,您可以使用基於 Web 的分析工具,例如 Munin
編寫一個小的 bash 腳本來測試 ram 並在遇到問題時發送郵件。或者使用
nagios –> 當您收到郵件時遇到 ram 問題時,它是一個監控工具。
如何判斷硬碟是否有壞扇區?
找出你的主硬碟是什麼或者你要測試的硬碟是什麼
fdisk -l
並使用 fsck 檢查硬碟(filesystemcheck:fsck 檢查和修復 Linux 文件系統)
如何在重新啟動之前在日誌中找到最後一個錯誤(什麼是解析日誌的好方法)
您可以使用帶有 lines 選項的 tail 命令
tail -200 /var/log/syslog
tail -200 /var/log/dmesg
搜尋執行級別更改或關閉序列 init 6 是重新啟動執行級別
,當您使用尋呼機(更少)時它可以提供幫助
tail -200 /var/log/系統日誌|少
我希望我能提供一點幫助:)
祝你成功