SMART-Test tidak pernah selesai

17

Saat menjalankan Tes SMART menggunakan smartmontools, mereka TIDAK PERNAH selesai. Saya selalu mendapatkan "Interrupted (host reset.)" Pada berbagai sistem dan disk, termasuk Debian di x86 dan ARM, OS X di x64, dengan drive eksternal dan internal. Bahkan ketika dijalankan dalam mode captive dengan disk semua kosong (memusatkan perhatian dengan dd).

Apa yang saya lakukan salah?

Max Ried
sumber
Anda tidak melakukan sesuatu yang salah dengan Anda. Ini adalah perangkat keras yang tidak berfungsi
Ramhound
Apakah ini dimaksudkan untuk bekerja?
Max Ried
Ya itu seharusnya berfungsi
Ramhound
@ MaxRied, apakah Anda mengatakan Anda sudah mencoba ini pada banyak komputer yang berbeda dengan log dari disk yang berbeda, dan masih belum pernah melihat penyelesaian, bahkan untuk disk yang Anda tahu sehat dari alat analisis SMART yang berbeda?
Frank Thomas
@FrankThomas Ya.
Max Ried

Jawaban:

14

Ketika drive tidak menangani aktivitas input / output selama pengujian, drive mungkin beralih ke siaga, yang meningkatkan Interrupted (host reset)kondisi. Cobalah membaca dari disk pada interval yang sesuai:

while true; do dd if=/dev/disk1 of=/dev/null count=1; sleep 60; done

(ganti /dev/disk1dengan perangkat yang sesuai; bacalah satu sektor dari perangkat itu setiap 60 detik hingga Anda menekan ctrl-c)

Ini membantu dalam lingkungan saya: OS X 10.6.8, drive WD Elements USB yang terhubung, SAT-SMART-driver 0.8.

Tes captive secara teoritis harus menjaga drive online. Namun perintah perangkat keras yang dikirim pada smartctlwaktunya akan habis sebelum tes selesai, menyebabkan kernel untuk mereset tautan dan berakhir pada situasi yang sama seperti di atas ( bug # 303 ).

Lihat utas ini di milis dukungan smartmontools untuk perincian lebih lanjut. Saya mengakui Christian Franke atas wawasan yang diberikan di sini.

sve.g
sumber
Kemungkinan gangguan lain ( serverfault.com/a/584055 ): kabel yang buruk dapat menyebabkan waktu habis, dan kernel akan memicu reset. Saya kurang yakin itu perlu untuk berhenti smartd. Setiap timeout dan interupsi akan muncul di dmesg / kern.log / journalctl -fk.
Tobu
Wow, itu gila! Mengkonfirmasi - setelah menjatuhkan HNST HDN726060ALE610 dari cermin zpool, macet pada 10% selama 36 jam (itu akan selesai lebih cepat tanpa aktivitas lain, KANAN?). Lima menit dari bacaan kecil ini membuatnya selesai. Skeptisisme dibubarkan.
Bill McGonigle
Apakah /dev/disk1seharusnya perangkat atau partisi, yaitu, suka /dev/sdaatau /dev/sda1?
Merchako
@Merchako Ini Mac os terkait di mana sebenarnya itu seperti itu.
Max Ried
5

Saya mencoba solusi dari Tobu, dalam kasus saya, saya terus menemukan drive USB eksternal dalam mode tidur terlepas dari setelah memulai tes dan menyela, tampaknya akhirnya membaca dari cache kernel dan cache cukup besar untuk disk. untuk masuk ke mode tidur. Saya perhatikan bahwa memanggil smartctl untuk menanyakan status selalu dapat "membangunkan" disk. Jadi: versi ide yang sama ini membantu saya:

sudo bash -c 'while true; do smartctl -a /dev/sdb > /dev/null; sleep 60; done'

Setelah 5 jam, disk USB eksternal masih berputar. Untuk pertama kalinya saya bisa melihat tes smartctl panjang selesai di disk eksternal.

Saya percaya solusi ini juga memiliki keuntungan bahwa kepala disk tidak dipindahkan secara tidak wajar setiap menit. Jangka panjang selesai hampir persis dalam waktu yang diperkirakan (skrip keep-awake tidak menambah waktu untuk menjalankan)

Ari
sumber
3

Variasi pada jawaban Ari adalah untuk digunakan watch, karena smartctloutput mungkin sebenarnya menarik untuk melacak status:

sudo watch -d -n 60 smartctl -a /dev/sdx

Ini akan secara otomatis memperbarui output smartctl -asetiap 60 detik, sehingga Anda dapat melihat berapa banyak waktu swa-uji yang tersisa, dan menyoroti perubahan (sehingga lebih mudah untuk melihat bahwa tes ini memang mengalami kemajuan).

GreatEmerald
sumber
+1, belum pernah terlihat watchsebelumnya.
Hashim
1

Tes captive mungkin tidak berfungsi jika dibutuhkan lebih dari 20 detik.

Sumber: tiket # 303 , berjudul "Dalam mode uji tawanan cerdas, perpanjang batas waktu seperti yang dijelaskan oleh perangkat ATA".

Sergey V
sumber