OS/Linux

[Linux] 리눅스 Disk 상태 체크 방법

요체크다 2022. 11. 10. 17:11
반응형

리눅스에서 하드 디스크의 상태를 확인하기 위해서는 smartctl 을 사용합니다.
만약 서버에 smartctl을 사용할 수 없다면 아래와 같이 yum을 통해 설치하면 됩니다.

yum install -y smartmontools

smartctl 명령어를 통한 Disk 체크 방법은 아래와 같습니다.
1) 명령어
#smartctl {옵션} {디스크}
2) 옵션
-a : 기본적으로 모든 정보를 확인할 때 사용합니다.
-H : 간단하게 디스크의 상태를 확인할 때 사용합니다.
-i : 간단하게 디스크 정보를 확인할 때 사용합니다.

smartctl -a /dev/sda

위의 명령어를 실행했을 때 디스크마다 다른 항목들의 로그들이 나오는 경우도 있으며, 출력되는 내용이 다른 경우도 있습니다만 그중에서 유심히 봐야 할 항목들은 아래와 같습니다.

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000b   076   076   016    Pre-fail  Always       -       45155219
  2 Throughput_Performance  0x0005   125   125   054    Pre-fail  Offline      -       135
  3 Spin_Up_Time            0x0007   119   119   024    Pre-fail  Always       -       314 (Average 323)
  4 Start_Stop_Count        0x0012   100   100   000    Old_age   Always       -       30
  5 Reallocated_Sector_Ct   0x0033   100   100   005    Pre-fail  Always       -       126
  7 Seek_Error_Rate         0x000b   100   100   067    Pre-fail  Always       -       0
  8 Seek_Time_Performance   0x0005   122   122   020    Pre-fail  Offline      -       39
  9 Power_On_Hours          0x0012   096   096   000    Old_age   Always       -       34808
 10 Spin_Retry_Count        0x0013   100   100   060    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       30
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       45
193 Load_Cycle_Count        0x0012   100   100   000    Old_age   Always       -       45
194 Temperature_Celsius     0x0002   200   200   000    Old_age   Always       -       30 (Lifetime Min/Max 8/35)
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       144
197 Current_Pending_Sector  0x0022   100   100   000    Old_age   Always       -       43
198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x000a   200   200   000    Old_age   Always       -       0

1) Result
- 디스크의 상태가 정상이거나 사용하는데 문제가 없을 경우 PASSED 로 나옵니다. 만약 FAILED 로 나오는 경우에는 이미 디스크에 심각한 문제가 있는 경우입니다.

2) Raw_Read_Error_Rate
- 디스크 표면으로부터 데이터를 읽는 과정에서 문제가 있을 때 카운팅 됩니다.( 주로 물리적 충격으로 유발 )

3) Rellocated_Sector_Ct
- 섹터에 문제가 생겨서 스페어 영역의 섹터로 대체된 횟수.

4) Seek_Error_Rate
- 탐색 오류율.

5) Current_Pending_Sector
- 불안정적인 섹터, 스페어영역 섹터로 remapping 을 준비중이거나 읽는 과정에서 문제가 생긴 섹터 (Current_Pending_Sector는 논리적 또는 물리적으로 문제가 있을 경우 카운팅 됩니다. 물리적으로 문제가 있을 경우 Rellocated_Sector_Ct 로 전환되고 논리적으로 문제가 있을 경우 카운팅 횟수가 줄어드는 경우도 있습니다.)

6) Offline_Uncorrectable
- 읽기 / 쓰기에 문제가 생긴 섹터, 즉 디스크 표면이 손상. (배드 섹터 )

반응형