smartmontools를 사용하여 SMART-Tests를 실행할 때 완료되지 않습니다. 외부 및 내부 드라이브가있는 x86의 Debian 및 ARM, x64의 OS X를 포함하여 다양한 시스템 및 디스크에서 항상 "인터럽트 (호스트 재설정)"가 표시됩니다. 디스크가 모두 비어있는 캡 티브 모드로 실행되는 경우에도 (dd는 0)
내가 뭘 잘못하고 있죠?
smartmontools를 사용하여 SMART-Tests를 실행할 때 완료되지 않습니다. 외부 및 내부 드라이브가있는 x86의 Debian 및 ARM, x64의 OS X를 포함하여 다양한 시스템 및 디스크에서 항상 "인터럽트 (호스트 재설정)"가 표시됩니다. 디스크가 모두 비어있는 캡 티브 모드로 실행되는 경우에도 (dd는 0)
내가 뭘 잘못하고 있죠?
답변:
드라이브가 테스트 중에 입 / 출력 활동을 처리하지 않으면 대기 상태가되어 Interrupted (host reset)
상태 가 높아질 수 있습니다. 적절한 간격으로 디스크를 읽으십시오.
while true; do dd if=/dev/disk1 of=/dev/null count=1; sleep 60; done
(대체 /dev/disk1
당신은 충돌 60 초마다 때까지 해당 장치에서 하나 개의 섹터를 읽고 해당 장치와 함께 ctrl-c
)
이것은 내 환경에서 도움이되었습니다 : OS X 10.6.8, WD Elements USB 연결 드라이브, SAT-SMART-driver 0.8.
포로 테스트는 이론적으로 드라이브를 온라인 상태로 유지해야합니다. 그러나 smartctl
테스트가 완료되기 전에 send by hardware 명령 이 시간 초과되어 커널이 링크를 재설정하고 위와 동일한 상황에서 종료 될 수 있습니다 ( 버그 # 303 ).
자세한 내용 은 smartmontools-support 메일 링리스트 에서이 스레드 를 참조 하십시오. 나는 여기에 주어진 통찰력으로 Christian Franke를 인정합니다.
journalctl -fk
.
/dev/disk1
처럼, 즉 장치 또는 파티션을해야하는데 /dev/sda
나 /dev/sda1
?
나는 Tobu에서 해결책을 시험해 보았습니다. 제 경우에는 테스트를 시작하고 중단 한 후 언젠가는 외부 USB 드라이브를 휴면 모드로 계속 찾아서 중단했습니다. 커널 캐시에서 읽은 것으로 보이고 캐시는 디스크에 충분히 큽니다. 슬립 모드로 들어갑니다. 상태를 묻기 위해 smartctl을 호출하면 항상 디스크를 "깨울"수있었습니다. 그래서 : 같은 아이디어 의이 버전은 나를 위해 속임수를 사용했습니다.
sudo bash -c 'while true; do smartctl -a /dev/sdb > /dev/null; sleep 60; done'
5 시간이 지난 후에도 외장 USB 디스크는 계속 회전합니다. 처음으로 외부 디스크에서 smartctl long test finish를 볼 수있었습니다.
이 솔루션은 디스크 헤드가 1 분마다 불필요하게 움직이지 않는다는 이점도 있다고 생각합니다. 장기는 거의 정확히 예상 시간에 완료되었습니다 (keep-awake 스크립트는 실행 시간을 추가하지 않았습니다)