?????? MCE(Machine Check Exception)是由CPU偵測出來的錯誤,它錯誤包含兩種主要類型:notice(提示)/warning(警告)厘惦,和fatal exception(致命性的錯誤)偷仿。Warning(警告)將會在你的系統(tǒng)log下輸出一條類似于"Machine Check Event logged"的信息,我們可以通過一些linux的應(yīng)用程序?qū)@部分log進(jìn)行詳細(xì)的信息查看;而fatal MCE(致命的錯誤)會導(dǎo)致機(jī)器停止響應(yīng)炎疆,MCE的詳細(xì)信息也將會輸出到系統(tǒng)的console中卡骂。
什么會導(dǎo)致MCE錯誤出現(xiàn)?
?????? 常見原因有以下幾種:
??????????? 1. 內(nèi)存錯誤或ECC問題
??????????? 2. 冷卻不足形入、CPU過熱
??????????? 3. 系統(tǒng)總線錯誤
??????????? 4. 緩存處理器或硬件錯誤
如何找出MCE錯誤對應(yīng)的含義全跨?
?????? Linux系統(tǒng)下,如果在Console或者系統(tǒng)log中看到MCE的錯誤亿遂,可以運(yùn)行mcelog命令從系統(tǒng)內(nèi)核中讀取詳細(xì)的信息浓若。需要注意的是,一旦運(yùn)行了mcelog蛇数,我們將無法再通過這條命令去查詢已經(jīng)出現(xiàn)的錯誤挪钓,所以最好運(yùn)行mcelog的時候講文本輸出到文件中以做進(jìn)一步的分析,參考命令如下:
?????? root @ localhost:/ root> / usr / sbin / mcelog> mcelog.ou
?????? 有些系統(tǒng)會定期執(zhí)行這個操作耳舅,并將文件輸出到/var/log/mcelog中碌上,因此,如果系統(tǒng)log中發(fā)現(xiàn)了MCE信息浦徊,但是使用mcelog查詢不到任何數(shù)據(jù)時馏予,可以試著查看/var/log/mcelog文件。
致命的MCE錯誤導(dǎo)致機(jī)器停止響應(yīng)后我們需要怎么辦盔性?
?????? 致命的MCE錯誤通常都是由硬件錯誤所引起的霞丧,我們通過重啟設(shè)備重新進(jìn)入系統(tǒng)后,首先需要查看系統(tǒng)log冕香,一個典型的MCE相關(guān)的錯誤log如下:
?????? CPU 1: Machine Check Exception: 4 Bank 4: f600200137080813
?????? TSC b0ce27165dd3 ADDR 180ee1b40
這時我們可以通過mcelog去將這條error log的詳細(xì)信息dump出來蛹尝,命令如下:
?????? root@localhost:/root> /usr/sbin/mcelog --ascii < myerror
得到的詳細(xì)錯誤信息如下:
?????? HARDWARE ERROR. This is *NOT* a software problem!
?????? Please contact your hardware vendor
?????? CPU 1 4 northbridge TSC b0ce27165dd3
?????? Northbridge Chipkill ECC error
?????? Chipkill ECC syndrome = 3700
?????? bit32 = err cpu0
?????? bit45 = uncorrected ecc error
?????? bit57 = processor context corrupt
?????? bit61 = error uncorrected
?????? bit62 = error overflow (multiple errors)
?????? bus error 'local node origin, request didn't time out
?????? generic read mem transaction
?????? memory access, level generic'
?????? STATUS f600200137080813 MCGSTATUS 4
?????? 這表示發(fā)生了Uncorrected ECC error,意味著其中一根內(nèi)存模塊出現(xiàn)了問題悉尾。
Reference:
1. Machine-check exception, https://en.wikipedia.org/wiki/Machine-check_exception
2. What are Machine Check Exceptions (or MCE)?
http://www.advancedclustering.com/act_kb/what-are-machine-check-exceptions-or-mce/