web-dev-qa-db-ja.com

アクティブなドライブでSMARTオフラインテストを完了するにはどうすればよいですか?

ハードディスクの1つ(内部SATA)でSMARTオフラインテストを実行したいと思います。マシンはUbuntu14.04を実行しているので、単にsmartctl -t offline /dev/sdb(ルートとして)を実行します。テストが開始され、完了までの推定時間が表示されます。

問題のドライブはシステムのルートfsを保持しているため、アクティブに(ただし頻繁には使用されていません)使用されています。そのため、後でsmartctl -a /dev/sdbを実行すると、推定時間のかなり後でも、「オフラインデータ収集ステータス:(0x04)ホストからの割り込みコマンドによってオフラインデータ収集アクティビティが中断されました」と表示されます。テストが終了するかどうかは明らかではありません。

私の理解では、オフラインテストでは、基本的にディスク上のすべてのセクターをチェックして、読み取り可能かどうかを確認します。コンピューターがディスクにアクセスすると、コマンドが終了した後、テストが一時停止および再開されます。ただし、送信されるコマンドは十分にあるため、テストに費やす時間はごくわずかであるため、進行が非常に遅いか、まったく進行しません。 (また、頻繁に切り替えを行わないように、コマンドの完了とテストの再開の間に意図的な遅延があるのではないかと思います。)

SMARTテストを高くして、ディスクにアクセス可能な状態を維持しながら、妥当な速度で進行するようにする方法はありますか?システムがまだ実行可能である限り、ディスクアクセスが遅い場合は問題ありません。キャプティブモード-Cについては知っていますが、これにより、テストの実行中にシステムが使用できなくなります。もちろん、別のディスクから起動し、sdbをマウント解除してSMARTテストを実行しますが、その間、システムは事実上使用できなくなります(また、マシンへの物理アクセスが必要になります)。 、これはたまたま不便です)。

SMART-テストが終了しない を見ましたが、それは逆の問題のようです。ディスクにアクティビティがなく、スタンバイモードになります。ディスクがアクティブであるため、ここではそのような証拠は見当たりません。また、ServerFaultで SMARTショートオフラインテストがRAID1のすべてのドライブで終了することはありません も確認しましたが、答えはコントローラーまたはケーブルの問題を示唆しています。ドライブは通常正常に動作しているため、疑う理由はありません。

(余談ですが:オフラインテストの進行状況を確認する方法はありますか?テストにチャンスがあるかどうかについてのアイデアが得られます妥当な時間内に完了すること。)

2
Nate Eldredge

コマンドの場合

Sudo smartctl -c /dev/sdb

言う

Offline data collection capabilities:
  Suspend Offline collection upon new command.

その後、テストは正常に完了するはずです。たぶんあなたはsmartdをバックグラウンドで実行して時々コマンドを実行していますか?

-t offlineをより小さな範囲のブロックに分割することができます。例えば、

Sudo smartctl -t select,0+10000 /dev/sdb

次に、完了したら、このコマンドを繰り返して、各結果を待ちます。

Sudo smartctl -t select,next+10000 /dev/sdb
1
meuh