이 SMART 자체 테스트는 드라이브 고장을 나타 냅니까?


10

이 SMART 자체 테스트 결과에 실패한 드라이브가 표시되는지 여부가 궁금합니다. 결과에서 '완료 : 읽기 실패'가 나타나는 유일한 드라이브입니다.

# smartctl -l selftest /dev/sde
smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)   LBA_of_first_error
# 1  Extended offline    Completed: read failure       90%      8981         976642822
# 2  Extended offline    Aborted by host               90%      8981         -
# 3  Extended offline    Completed: read failure       90%      8981         976642822
# 4  Extended offline    Interrupted (host reset)      90%      8977         -
# 5  Extended offline    Completed without error       00%       410         -

SMART 자체 테스트의 출력을 제외하고는 드라이브에 아직 오류 징후가 나타나지 않습니다. 이것은 현재 SMART 자체 테스트를 실행하는 동일한 시스템의 다른 드라이브에서 출력 된 것입니다

# smartctl -l selftest /dev/sdc
smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Self-test routine in progress 30%     15859         -
# 2  Extended offline    Completed without error       00%      9431         -
# 3  Extended offline    Completed without error       00%      8368         -


SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       1
  3 Spin_Up_Time            0x0027   176   175   021    Pre-fail  Always       -       4183
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       48
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   100   253   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   088   088   000    Old_age   Always       -       8982
 10 Spin_Retry_Count        0x0032   100   253   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   253   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       46
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       34
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       13
194 Temperature_Celsius     0x0022   111   101   000    Old_age   Always       -       36
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       1
198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       1
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       2

4
원시 카운터가 포함 smartctl -a /dev/sde된 섹션 을 실행 하고 게시 하면 훨씬 도움이됩니다 SMART Attributes Data Structure. 특히 거기에 Raw_Read_Error_Rate있는 첫 번째 것은 가장 "나쁜 드라이브"표시기입니다 (그리고 아마도 여러분의 경우에는! 0 일 것입니다).
Chris S

1
추가되었습니다. . . . . . . . . .
Jeff Welling

1
추가 한 데이터가 충분 해 보입니다. 드라이브가 RAID 어레이의 일부인 경우 걱정하지 않아도됩니다. 중요한 파일을 먼저 백업해야합니다. 시작하지 않으면 지금 시작하기에 좋은시기입니다.
Chris S

4
@Jeff Welling : 그것에 대해 교육자가되지는 않지만 "백업"이 RAID 어레이에있는 경우 "백업"이 아니라 "복사"입니다. 개인적으로, 나는 그것이 드라이브 고장의 징후에 따라 드라이브를 교체 할 것입니다. 요즘 좋은 운전조차하는 데 드는 비용이 거의 없기 때문에 보험 가치가 있습니다. 또한, 같은 날 같은 (RAID10) 어레이에서 두 개의 드라이브 오류가 발생했습니다. 배열에 있던 6 개 중 FWIW.
Kendall

1
@ Kendall, 그는 어레이가 백업에 사용되고 원본은 다른 곳에 있음을 의미한다고 생각합니다. 그렇다면 두 개의 드라이브가 고장날 가능성이 거의 없기 때문에 가능성이 높습니다 (새 드라이브가 아닌 한 영아 사망률은 일반적인 문제이며 번인은 큰 배열에서 일반적인 관행입니다).
Chris S

답변:


8

바라건대 드라이브를 오랫동안 교체했지만 아직 아무도 직접 질문에 대답하지 않았기 때문에 ...

두 테스트에서 모두 표시된 것처럼 디스크의 동일한 논리 섹터를 읽지 못하고 Completed: read failure두 테스트에서 모두 동일한 LBA를 두 번 테스트했습니다. 이것은 실제로 디스크에 결함이 있음을 나타내므로 보증하에 교체해야합니다. 이 섹터에 데이터를 저장하려고하면 쓰기 프로세스 중에 드라이브에 결함이 있음을 알리고 섹터를 다시 매핑 할 수 있지만 드라이브가이를 인식하지 못하고 나중에 데이터를 읽을 수 없으면 손실 된 것입니다. 그것.


4

의심스러운 드라이브에서 데이터를 위험에 노출시킬 가치가 있습니까?

그것이 나라면, 나는 드라이브를 교체하고 SMART가 나에게 큰 두통을 저장했다는 것에 감사드립니다.


또한 나는 일주일에 한 번 드라이브에서 스마트하게 실행되도록 크론 스크립트를 설정 한 다음 매주 보고서 또는 전자 메일로 출력을 보내서 대부분의 경우 미리 식별 할 수 있습니다. 실패로부터 복구하지 않고 백업에서 복원하지 않아도되도록 마지막 드라이브에있는 드라이브 여러 대의 컴퓨터를 사용하는 경우 Nagios 또는 Munin과 같은 모니터링 도구를 사용하는 것이 더 쉽습니다.
윌셔

5
스마트 출력이 고장난 드라이브를 나타내는 것을 알면 더 쉽게 할 수 있습니다. 고장난 드라이브를 나타내는 것과 그렇지 않은 것을 나타내는 것은 어렵습니다.
Jeff Welling

4

다른 답변에 의견을 추가하고 싶지만 담당자가 부족하여 그림을 볼 수는 없습니다.

cron 스크립트를 작성할 필요가 없습니다 . smartmontools 패키지 에는 smart 상태 데몬 이 있습니다. 구성작성 하고 서비스를 시작하기 만하면됩니다. smartmontools 패키지에는 무언가 실패 할 때 smartd가 호출 할 수있는 샘플 스크립트도 포함되어 있습니다.


나는 cron 스크립트를 사용하지 않고 smartd 데몬을 사용하고 있습니다. 그것은 시스템 로그에 메모를 뱉어 보았습니다. 보통 다른 드라이브에서 볼 수없는 일부 줄을 발견하고 확인했을 때 자체 테스트를 시도했지만 실패했습니다. 나는 전에 이런 종류의 실패를 본 적이 없었으므로 여기에있는 사람들이있을 것이라고 생각했습니다. 당신이 그것으로 경험의 톤이없는 경우 smartd의 시스템 로그 출력은 정확히 당신이 :) 한 경우가 좋은이 될 것입니다하지만 "드라이브 X를 교체 할 죽어과 요구된다"말하지 않는, 꽤 비밀입니다
Jeff Welling

2

당신의 상황에서 어떻게해야합니까?

우선 어떤 파일이 영향을 받는지 알아냅니다. http://smartmontools.sourceforge.net/badblockhowto.html#e2_example1 예 를 수행하는 방법에 대한 지침이 있습니다. 귀하의 경우 배열이 있기 때문에 더 어렵습니다. 그러나 가능합니다. 실패한 섹터에 0을 쓰는 것보다이 파일이 백업되었는지 확인하십시오. 두 가지 일이 발생할 수 있습니다. 1. 드라이브가이 섹터에 0을 성공적으로 기록합니다. Current_Pending_Sector, Reallocated_Sector_Ct는 이후 0이어야합니다. 2. 드라이브가이 섹터에 쓰지 못합니다. 이 섹터를 "예비"영역으로 다시 매핑합니다.

어쨌든 고정 드라이브로 끝납니다. 파일의 한 섹터를 덮어 쓰기 때문에 파일을 백업에서 복원해야합니다. 또한 더 이상 오류가 없는지 확인하기 위해 확장 된 자체 테스트를 다시 실행해야합니다.

건강을 유지!

추신 : 나는이 게시물이 오래되었다는 것을 알고 있습니다. 그러나 나는 그것을 골랐다. 그리고 또 다른 좋은 답변을 제공하는 것이 좋습니다.


1
편리한 정보! 이것을 시도하려고
kerridge0

0

드라이브가 나갔을 것입니다. 드라이브의 일부에서 읽을 수없는 것은 가장 확실한 장애 조건이며 다른 일반적인 디스크 장애 징후없이 발생할 수 있습니다. 이런 유형의 일은 일반적으로 일시적이지 않습니다. 다른 징후가 없으면 머리가 약하거나 정렬 문제가 약간 발생하거나 플래터 (실린더?)에 결함이있는 것일 수 있습니다.

다른 대안은 SMART 버그가 있다는 것입니다. 버그가있는 펌웨어로 드라이브를 실행하고 싶지 않습니다.

SMART에서 오류가 발생하면 데이터 손실을 피하기 위해 새 드라이브를 구입해야한다는 강력한 신호입니다. 부분적으로 조기 경보 시스템으로 고안되었습니다.


0
  • 최대한 빨리 백업하십시오!

  • 이 드라이브가 여전히 보증 기간 인 경우

    • 공급 업체의 검사 능력을 실행합니다 (일반적으로 부팅 CD를 얻을 수 있음)
    • 이것이 오류를 반환하면 빙고, 다시 보내고 교체를 기다립니다.
    • 백업에서 복원
    • 문제 해결-종료

  • 이 드라이브에 보증이 없으면 나사를 조입니다
    • 여전히 희망이 있습니다 ...
    • 이것은 실제로 읽기 오류이므로 쓸 수 없다는 의미는 아닙니다.
    • 백업을 한 후에는 실제로 읽을 수있는 새로운 데이터로 읽을 수없는 섹터를 덮어 쓰므로 백업을 복원 할 수 있습니다. )
    • badblocks 이 도구를 사용할 수도 있습니다 (이미 백업이 있습니까?)
      • 실제로 이것을 사용하여 디스크를 테스트하지는 않지만 (어쨌든 절대 디스크가없는 경우에는 의미가 없습니다) 이러한 섹터에 여러 번 쓰려고합니다
    • 스마트 테스트를 다시 실행할 수 있으며 읽을 수없는 섹터가 "수정"될 가능성이 있습니다
    • 문제가 해결되지 않으면 드라이브를 더 오래 사용할 수 있습니다. 용도에 따라 1 년 동안 평소보다 빨리 실패 할 것입니다.하지만 디스크가 저렴합니다. 데이터가 중요한 경우 새 디스크를 얻으십시오-END

1
최신 하드 드라이브 (세기 말과 같은)는 "보증 없음"섹션에 설명 된 방식으로 작동하지 않습니다.
Chris S

3
Wikipedia의 불량 섹터 기사로 시작 하십시오. 하드 드라이브는 논리 섹터 주소를 추상화하여 그것이 좋다고 생각되는 섹터에 매핑합니다. 일부 공급 업체 유틸리티 (드라이브에 의해 노출되는 항목에 따라 SMART)는 다시 매핑 된 섹터를보고 할 수 있습니다. 쓰기 작업에서 불량 섹터가 정상적으로 감지됩니다. 일반적으로 작성된 후에는 다시 읽을 수 있습니다. 불량 섹터에서 일반적으로 실패하는 것은 초기 쓰기 작업입니다. 섹터가 나빠지면 영원히 나 빠지고, "수정"할 수 없습니다.
Chris S

1
나는 당신이 말하는 것에 반대되는 말을하지 않았다고 생각하지만, 좀 더 "기술적으로 정확"하게하기 위해 약간의 설명을 들었습니다.
cstamas

2
사람들이 왜 당신의 대답을 그렇게 많이 표명했는지 잘 모르겠습니다. 나는 당신이 자리에 있다고 생각합니다. 사람들은 아마도 당신이 비정상적인 드라이브를 작동시키는 것을 옹호한다고 오해했을 것입니다. 그러나 OP가 개인 사용자라는 점을 고려하면 새 드라이브 비용은 오늘날의 가격에서도 매우 중요합니다. 나는 이것이 꽤 오래된 질문이라는 것을 알고 있지만 적어도 나에게서 +1을 얻습니다. ;)
Markus A.

2
@cstamas : 또한 badblocks -w새로운 불량 섹터를 만들지 않고 드라이브가 전체 실행 (3 배속 쓰기, 3 배속 읽기)을 견뎌낸다면 그대로 두겠습니다 . 그렇지 않으면 어딘가에 사용하기에는 너무 깨졌습니다.
mt_
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.