破損したドライブから画像を見つける方法(失われたデータ復旧)

破損したドライブから画像を見つける方法(失われたデータ復旧)

現在ドライブ(HDD)エラーが発生しているようです。追加ストレージ用の単一パーティションドライブ。インストールしようとすると、次のエラーが発生します。

# mount /dev/sdc1 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/sdc1,
       missing codepage or helper program, or other error

       In some cases useful info is found in syslog - try
       dmesg | tail or so.

提案どおりにdmesgを確認してください。

# dmesg | tail
[12641.405658] blk_update_request: critical medium error, dev sdc, sector 2064
[12641.410139] Buffer I/O error on dev sdc1, logical block 2, async page read
[12641.415774] EXT4-fs (sdc1): couldn't mount as ext3 due to feature incompatibilities
[12641.420578] EXT4-fs (sdc1): couldn't mount as ext2 due to feature incompatibilities
[12644.186523] sd 5:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[12644.186543] sd 5:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[12644.186556] sd 5:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[12644.186570] sd 5:0:0:0: [sdc] tag#0 CDB: Read(10) 28 00 00 00 08 10 00 00 08 00
[12644.186580] blk_update_request: critical medium error, dev sdc, sector 2064
[12644.191255] EXT4-fs (sdc1): can't read group descriptor 1

私が言ったように、私は運転が夜になると仮定しているので、少なくともそこにあるすべての情報を保存したいのですが(もっと重要なのは)。動作していることを確認するために、ドライブで500GBを減らしました。

# ddrescue -d -s 500G /dev/sdc data.img data.log

残念なことに、sshを介して実行していますが、パイプが破損しているか、約150 GBのファイルがあり、マウントしようとしたimgときにドライブ自体をマウントしようとしたときと同じエラーが発生しました。笑):

# mount data.img /mnt -o loop
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or helper program, or other error

       In some cases useful info is found in syslog - try
       dmesg | tail or so.

保存する必要がある情報をどのように取得できますか?

ベストアンサー1

この問題を発見した人のために他のツールを使用せずに問題を解決できましたphotorec。もしかしたらフルディスクイメージを作って使ったのですが、ddrescue結局必要なくなりましたね。

SMARTデータを実行してbadblocksみると、ドライブの先頭のどこかに不良セクタが1つあることが確認されました。明らかに、これはスーパーブロックが保存される場所なので、パーティションが認識されずにマウントできないことです。

私は走ろうe2fsck -cfpv /dev/sdc1としました。

e2fsck: Attempt to read block from filesystem resulted in short read while trying to open /dev/sdc1
Could this be a zero-length partition?

私は愚かで何が起こっているのかわかりませんが、明らかにセクタを0で上書きして再実行するとe2fsck魔法が機能し、パーティションが回復します。その後、パーティションをマウントし、次からすべてのファイルをコピーできます。ハードドライブを窓から投げる前に。私が実行したコマンドは次のとおりです(例えば、e2fsckパーティションが認識されマウント可能であることを確認するとすぐに停止しました)。

# dd if=/dev/zero of=/dev/sdc1 bs=4096 count=1 seek=0
1+0 records in
1+0 records out
4096 bytes (4.1 kB, 4.0 KiB) copied, 0.000367146 s, 11.2 MB/s

# e2fsck -fy -b 32768 /dev/sdc1
e2fsck 1.46.2 (28-Feb-2021)
Superblock needs_recovery flag is clear, but journal has data.
Recovery flag not set in backup superblock, so running journal anyway.
/dev/sdc1: recovering journal
Pass 1: Checking inodes, blocks, and sizes
^C/dev/sdc1: e2fsck canceled.

/dev/sdc1: ***** FILE SYSTEM WAS MODIFIED *****

完全な説明とすべてのクレジットは次のとおりです。この男私は宇宙が彼に豊かな健康と富を祝福し、彼の深い願いを聞くことを願っています!

おすすめ記事