該筆記主要記錄一下如何排查指定服務器中的指定內存條是否損壞。
1.內存故障排查
因為 68 – 71 軟SBC服務器都是Centos7系統,所以我們可以通過以下命令來排查內存是否出現損壞。
grep "[0-9]" /sys/devices/system/edac/mc/mc/csrow/ch*_ce_count
1> count不為0表示有錯誤
2> mc代表第幾個cpu,
3> csrow內存通道,
4> ch第幾個內存
EDAC即error detection and correction(錯誤檢測與糾正),是Linux系統內部的機制。在上面的日志中,可以清楚地看出是內存讀錯誤。MC即memory controller(內存控制器)。CE則代表correctable error,是ECC內存中可以糾正的錯誤,相對地還有UE(uncorrectable error)。為了摸清是哪些內存出了問題,找出所有內存的CE計數,由上圖可知,第四塊內存出現了故障。
通過 dmidecode -t memory 命令,可以查看每個DIMM
2.CPU排查 cat /sys/devices/system/cpu/cpu*/online