修正する

修正する

このコマンドは次のとおりです。

badblocks -svn /dev/sda

それは何をしますか?不良ブロックだけを報告しますか?それとも何とかしましたか?扱う不良ブロックなので心配する必要はありませんか?

マニュアルを読みましたman badblocksが、次の-nオプションは表示されません。


       -s     Show  the  progress  of the scan by writing out rough percentage completion of
              the current badblocks pass over the disk.  Note that badblocks may do multiple
              test  passes  over the disk, in particular if the -p or -w option is requested
              by the user.


       -v     Verbose mode.  Will write the number of read errors, write  errors  and  data-
              corruptions to stderr.


       -n     Use  non-destructive read-write mode.  By default only a non-destructive read-
              only test is done.  This option must not be combined with the  -w  option,  as
              they are mutually exclusive.

badblocks -svn /dev/sdaほぼ2日間続いた作業の結果は次のとおりです。

ここに画像の説明を入力してください。

修正する

一部の記事では、実行後にbadblocks -svn /dev/sdaハードドライブコントローラが不良ブロックを処理することを提案しています。わからない。

ハードドライブコントローラに不良ブロックをスペアブロックに置き換えます。

https://askubuntu.com/a/490552/507217

このようにディスクを完全に処理した場合、ディスクコントローラはすべての不良ブロックをワークブロックに置き換える必要があり、SMARTログの再割り当て数が増加します。

https://askubuntu.com/a/490549/507217

賢い

次のコマンドを実行した後、SMARTテーブルを確認しましたbadblocks

smartctl --all /dev/sda

Current_Pending_Sector元の値はです5628報告されたものの2倍ですbadblocks。たぶん彼らは関連しているかもしれません。

スクリーンショット

エラーの説明

これによると:

不良ブロック出力を解釈する方法

badblocksエラーログの形式はですreading/writing/comparing。私の場合、すべての28エラーは読み取りエラーでした。意味いいえアプリケーションはこれらのブロックを読み取ることができます。

オペレーティングシステムログ

オペレーティングシステムのログを確認しましたsudo journalctl -xe。実際、SMARTはこれらの56不良セクタ(不良ブロック)に対して28エラーを発生させます。

smartd[1243]: デバイス: /dev/sda [SAT], 56 現在セクターを読み取ることができません (保留中)。

ログスクリーンショット

結論として

遅すぎる前にデータをバックアップし、ハードドライブを交換したいと思います。

ベストアンサー1

これ」非破壊読み書きモードこの-nオプションによって実行されると、テストデータがあたかも作成されたかのように各ブロックに書き込まれ、ディスクが書き込みを-w許可したり、失敗したブロックを再割り当てしたり、書き込みエラーを返すように強制します。

しかし、最大の利点は、上書きするブロックを最初に読み、テストデータを書き込んだ後にそのデータを書き換えることです。これはbadblocks、完了すると、ディスクに実行を開始する前と同じデータを含める必要があることを意味します。

プロセス

  1. チャンクの読み取りと保存
  2. テストデータブロックの書き込み
  3. ステータス結果をキャプチャし、必要に応じて報告します。
  4. 保存されたブロックの上書き
  5. 完了するまで次のブロックで繰り返し

警告する

良好なデータブロックをディスクに書き込むと、期待した操作が実行されます。ブロックが記録されます。ただし、書き込みが失敗した場合、ディスクファームウェアは自動的に透過的にブロックアドレスをスペアブロックの1つに再マップし、ディスク上の新しい場所から書き込みを再試行します。書き込みが成功した場合、他には不明であり、ディスクは完全に正常に見えます。 (SMARTテーブルでは、セクタ再割り当てカウンタは1ずつ増加します。)最終的に、時間の経過とともにスペアブロックセットをすべて使用することができ、その時点から再マッピングされたディスク書き込みは単に失敗します。

フルディスク書き込みテスト(たとえば、またはbadblocks提供-wされているテスト-n)は、すべてのディスクブロックを強制的に書き込み、すべてが利用可能であることを確認し、それ以外の場合は再マップできないディスクブロックを強調表示します。

参考にしてくださいbadblocksデータが失われないという保証はありません:ブロックが読み取れない場合は、テスト後に書き換えることができないため、書き込みテストは実行されません(ただし、ブロックを不良として報告します)。ブロックが読み取れない場合、badblocks他のアプリケーションも読み取れません。あなたのデータが失われました

私のアドバイスはあなたが得るならどの再マッピングできないディスクブロックできるだけ早くディスクを交換してくださいもはや安全網がないからです。 (個人的には、このステップに達する前にこれらのディスクを交換したいと思います。)ddrescueツール役に立つ存在するデータのコピー破損したディスクから新しいディスクへ。

おすすめ記事