ハードドライブがあり、/dev/sda
次の両方があるとします。
/dev/sda1
シングルだ外部4パーティションはディスク全体を占有し、ほとんどのデータは空です。dumpe2fs -b /dev/sda1
不良ブロックのリストを出力します(この場合は単一の高数)。雨端付近の不良ブロックを示します/dev/sda
。雨幸い、どのファイルにも属していません。
/dev/sda1
これで、最初gparted
にスワップパーティションを追加する必要があります。v0.30.0-3ubuntu1) は次の目的で使用されます。
- サイズ変更(縮小)sda1、数 GB の後に開始しますが、同じ場所で終了するようにします。
- 縮小により残りの間隔にスワップパーティションを追加するsda1。
これでgparted
ジョブが完了し、dumpe2fs -b /dev/sda1
再実行されます。どうしたの?できる…?
- 何も出力されません。これは、サイズ変更時に不良ブロックを忘れることを意味します。
- 出力雨絶え間ない。
- 出力雨+雨どこああは、ちょうどズームの現在の開始位置に
/dev/sda1
対応するオフセットです。
メモ: 問題を単純化するために、問題のハードドライブがそうでないと仮定します。賢いファームウェア。 (ファームウェアの説明はトピックから外れています。)
ベストアンサー1
GPartedはext2/3/4不良ブロックのリストを考慮しません。強制不良ブロックを持つext4ファイルシステムを作成し、GPartedを使用してそれらを移動してそれを確認しました。移動したパーティションで実行すると、dumpe2fs -b
同じオフセットに不良ブロックが表示されます。
結果は 2 であるため、ファイルシステムで無視された不良ブロックは、メディアの実際の不良ブロックと一致しなくなりました。これは、ファイルシステムが使用に安全なブロックを無視して回避する必要がある不良ブロックを使用できることを意味します。
ある程度これは意味があります。 GParted(または他のツール)の場合行動ファイルシステム固有のツールを使用せずにコンテナを移動するパーティション。これは通常、ファイルシステムデータがそのコンテナに関連付けられているために機能します。通常、ファイルシステムのデータ構造は、移動によって更新される必要はありません。ただし、不良ブロックリストに記載されている機能はコンテナと一緒に移動しません。 GPartedにこの問題を処理させるのは非常に複雑です。不良ブロックリスト自体を更新するだけでなく、移動も必要です。移動したファイルシステムで、不良ブロックが新しい場所になるようにデータを削除します。