본문 바로가기

리눅스

CentOS7에서 EDAC(Error Detection And Correction) 로그 확인하는 방법

728x90

CentOS7에서 EDAC(Error Detection And Correction) 로그 확인하는 방법

EDAC (Error Detection And Correction)은 하드웨어 메모리 오류를 감지하고 수정하는 기술입니다. EDAC는 주로 메모리와 관련된 오류를 식별하고 시스템의 안정성을 유지하기 위해 사용됩니다. EDAC 로그는 시스템의 메모리 에러 및 오류 정보를 기록하는 시스템 로그입니다.(EDAC = 오류 감지 및 수정)

 

EDAC 로그는 다양한 리눅스 시스템에서 사용될 수 있으며, 로그 파일의 위치와 이름은 시스템에 따라 다를 수 있습니다. 보통 /var/log/messages, /var/log/syslog 또는 /var/log/edac.log와 같은 파일에 기록됩니다.

테스트 환경

  • 하드웨어 환경
dmidecode -t system
$ dmidecode -t system
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.7 present.

Handle 0x0100, DMI type 1, 27 bytes
System Information
	Manufacturer: HP
	Product Name: ProLiant DL380 G7
	Version: Not Specified
	Serial Number: SXXXXXXXXA
	UUID: 39444835-7926-4753-1346-64344631364E
	Wake-up Type: Power Switch
	SKU Number: XXXXXX-B21
	Family: ProLiant

Handle 0x2000, DMI type 32, 11 bytes
System Boot Information
	Status: No errors detected
  • 운영체제 환경
$ cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)

$ getconf LONG_BIT
64

$ uname -r
3.10.0-1062.18.1.el7.x86_64

1. 시스템 로그 확인(/var/log/messages)

cat /var/log/messages | grep -i edac
kernel: mce: [Hardware Error]: Machine check events logged
kernel: EDAC MC0: 1 CE error on CPU#0Channel#0_DIMM#0 (channel:0 slot:0 page:0x0 offset:0x0 grain:8 syndrome:0x0)

2. dmesg 명령을 사용하여 로그 확인

sudo dmesg | grep -i edac

kernel: EDAC MC0: 1 CE error on CPU#0Channel#0_DIMM#0

- 오류 감지 및 수정(error detection and correction, EDAC)

- 메모리 컨트롤러(memory controller, MC)

- 수정 가능한 오류(correctable errors, CE)

- 듀얼 인라인 메모리 모듈(dual in-line memory module, DIMM)

3. journalctl 명령어 사용

sudo journalctl | grep -i edac
728x90

 

장애 확인 및 장애 메모리 슬롯 위치

grep "[0-9]" /sys/devices/system/edac/mc/mc*/csrow*/ch*_ce_count
$ grep "[0-9]" /sys/devices/system/edac/mc/mc*/csrow*/ch*_ce_count
/sys/devices/system/edac/mc/mc0/csrow0/ch0_ce_count:4
/sys/devices/system/edac/mc/mc1/csrow0/ch0_ce_count:0

 

메모리 슬롯 위치 확인(dmidecode 명령)

dmidecode -t memory | grep -v "Size: No Module Installed" | grep -C 3 -i Size
$ dmidecode -t memory | grep -v "Size: No Module Installed" | grep -C 3 -i Size
	Error Information Handle: Not Provided
	Total Width: 72 bits
	Data Width: 64 bits
	Size: 8192 MB
	Form Factor: DIMM
	Set: 3
	Locator: PROC 1 DIMM 3A
--
	Error Information Handle: Not Provided
	Total Width: 72 bits
	Data Width: 64 bits
	Size: 8192 MB
	Form Factor: DIMM
	Set: 12
	Locator: PROC 2 DIMM 3A

 

EDAC 유틸리티(edac-utils) 설치

yum install -y libsysfs edac-utils

edac-utils 명령 실행

EDAC 메모리 정보 확인

sudo edac-util --status

edac-util 유틸리티를 사용하여 시스템의 EDAC 메모리 정보를 확인할 수 있습니다. 이 명령은 시스템의 메모리 에러 상태, 오류 감지 횟수, 에러 유형 등을 제공합니다.

edac-util -v
$ edac-util -v
mc0: 0 Uncorrected Errors with no DIMM info
mc0: 0 Corrected Errors with no DIMM info
mc0: csrow0: 0 Uncorrected Errors
mc0: csrow0: CPU#0Channel#0_DIMM#0: 4 Corrected Errors
mc1: 0 Uncorrected Errors with no DIMM info
mc1: 0 Corrected Errors with no DIMM info
mc1: csrow0: 0 Uncorrected Errors
mc1: csrow0: CPU#1Channel#0_DIMM#0: 0 Corrected Errors

 

참고URL

- https://www.kernel.org/doc/html/v5.0/admin-guide/ras.html

 

728x90