SmartMonTools: Bagaimana saya bisa tahu jika ada tes smartctl yang berjalan di hard disk saya?

40

Saya menguji hard disk dengan SmartMonTools .

Status hard disk sebelum pengujian (hanya satu pengujian singkat yang dilakukan beberapa hari yang lalu):

$ sudo smartctl -l selftest /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== 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  Short offline       Completed without error       00%      5167         -

Jadi saya memulai tes panjang :

$ sudo smartctl -t long /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
Sending command: "Execute SMART Extended self-test routine immediately in off-line mode".
Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful.
Testing has begun.
Please wait 130 minutes for test to complete.
Test will complete after Sat May  9 16:05:27 2015

Use smartctl -X to abort test.

Tes seharusnya berjalan , maka, tetapi jika saya mencoba untuk melihat kemajuannya:

$ sudo smartctl -l selftest /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== 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  Short offline       Completed without error       00%      5167         -

... semua yang saya dapatkan adalah hasil yang sama, seperti jika tidak ada tes menjalankan / melakukan sekarang.
Parameter '-H' tidak memberikan info lagi:

$ sudo smartctl -H /dev/sda
smartctl 6.2 2013-07-26 r3841 [i686-linux-3.16.0-30-generic] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

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

Dan, selama tidak ada proses yang berjalan (tes ini dilakukan oleh pengontrol hard disk saja), beberapa ps -epencarian gaya seharusnya tidak membantu.

Bagaimana saya bisa tahu jika ada beberapa tes mandiri SMART yang berjalan saat ini?

Sopalajo de Arrierez
sumber

Jawaban:

43

Sedang smartctl -a <device>mencari Self-test execution status.

Contoh ketika tidak ada tes yang berjalan:

Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever
                                        been run.

Contoh saat tes sedang berjalan:

Self-test execution status:      ( 249) Self-test routine in progress...
                                        90% of test remaining.

Saat menjalankan self-test selektif ( -t select) juga akan ada kemajuan yang ditunjukkan di sini:

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA    MAX_LBA  CURRENT_TEST_STATUS
    1        0  125045423  Self_test_in_progress [90% left] (2881512-2947047)
frostschutz
sumber
2
Sebuah ide bagus. Saya sarankan Anda untuk menambahkan jalur langsung ini (dengan menggenggam) sebagai kemungkinan:, smartctl -a /dev/sda | grep "progress" -i -A 1untuk memotong cetakan info yang berlebihan.
Sopalajo de Arrierez
1
Anda perlu hasil cetakan berlebihan untuk mendapatkan seluruh gambar. Dalam naskah grep mungkin baik-baik saja, tapi orang-orang yang digunakan untuk grepsegala sesuatu pada baris perintah ( dmesg | grep something, smartctl -a | grep ..., dll), mereka akan kehilangan sesuatu. Dengan smartctlkhususnya tidak ada perintah sederhana yang memberi tahu Anda semuanya baik-baik saja ... smartctl -Hadalah teman palsu dalam hal itu.
frostschutz
@frostschutz "smartctl -H adalah teman palsu dalam hal itu." Kamu bisa mengatakannya lagi! Saya juga pernah jatuh cinta pada pilihan ini, berpikir itu mungkin ada hubungannya dengan tes diri ... tapi tidak, subjek yang sama sekali berbeda (dan tujuan).
syntaxerror
Apa yang saya lakukan untuk "Perangkat tidak mendukung pencatatan Self Test"?
Mr.WorshipMe
13

Coba:

smartctl -c /dev/sda

jika / dev / sda adalah drive yang ingin Anda periksa.

SebM
sumber
Sunting: Maaf. Saya salah. -c berarti --kemampuan tetapi juga menunjukkan kemajuan pengujian saat ini. seperti60% of test remaining.
JPT