web-dev-qa-db-ja.com

「障害読み取りセクター」からの回復

ラップトップを起動すると(opensuseのみがインストールされ、他のOSはインストールされていません)、error: failure reading sector 0x802 from 'hd0'.とGRUB救助プロンプトに入れられます。

オリジナルのインストールUSBを使用して、レスキューLinuxシステムを起動しました。これは fdisk - lレスキューシェルからの出力(ディスクはラップトップに付属していた1TBの​​HDDで、半分だけがパーティションに分割されて使用されています): IMG-20200312-195659-1584025922398.jpg

sda1は、Opensuseを含む30 GBのパーティションですsda3は350 GB以上のデータパーティションです。 fsck /dev/sda1与える

fsck.ext2: Input/output error while trying to open /dev/sda1

The superblock could not be read or does not describe a valid ext2/ext3/ext4 filesystem.

この後に、「代替スーパーブロックを使用してe2fsckを実行してみてください」という提案が続きます(注:fsck on sda3は「クリーン」と言っています。ランニング dumpe2fsck推奨通り Opensuse wikiで は上記と同じエラーメッセージを返します。私は試した e2fsck -b <superblock> /dev/sda1-スーパーブロックを8193として(「スーパーブロック内の不正なマジックナンバー」と言って)、32768としてスーパーブロックを使用すると、さまざまなグループの「フリーブロック数」、「ディレクトリ数」、「フリーiノード数」を修正するプロンプトが表示されます。 (「inodeビットマップの違い」の膨大なリストがその間にあります)。しかし残念ながら、後者でも最終的には「ブロック1の書き込みエラー(入出力エラー)」と表示され、問題は修正されません。

OSがシャットダウンの途中でハングしたとき、サガ全体が始まり、(バッテリ寿命を節約するために)電源ボタンを長押しして強制終了しました。私は内部を調べましたが、ケーブルの問題はないようです(そして他のパーティションはとにかく問題なく表示されます)。 30 GBのOSパーティションを失うと不便ですが、380 GBのデータパーティションを失うと、避けたい大きな挫折になるでしょう。このエラーから回復し、ディスクを再び使用可能にするための次のステップは何ですか?

新しいディスクを購入し、ddrescueを使用してパーティションをコピーします。その後、新しいディスクから起動してもセクターエラーは発生せず、FSエラーはfsckで修正できます。起動の問題はGRUBを使用して修正できます。

2
ArunasR