ラップトップを起動すると(opensuseのみがインストールされ、他のOSはインストールされていません)、error: failure reading sector 0x802 from 'hd0'.
とGRUB救助プロンプトに入れられます。
オリジナルのインストールUSBを使用して、レスキューLinuxシステムを起動しました。これは fdisk - l
レスキューシェルからの出力(ディスクはラップトップに付属していた1TBのHDDで、半分だけがパーティションに分割されて使用されています):
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を使用して修正できます。