雷雨の後、ドライブが破損しました。以前は2.5tbの1パーティションでしたが、現在は2パーティションが表示されています。 300ギガの空き容量は破損する前の容量であるため奇妙ですが、それは最初のパーティションの一部でした。
私は試した
$ Sudo resize2fs -f /dev/sdb1
Resizing the filesystem on /dev/sdb1 to 536870911 (4k) blocks.
resize2fs: Can't read an block bitmap while trying to resize /dev/sdb1
Please run 'e2fsck -fy /dev/sdb1' to fix the filesystem
after the aborted resize operation.
Sudo e2fsck -f /dev/sdb1
e2fsck 1.42 (29-Nov-2011)
The filesystem size (according to the superblock) is 610471680 blocks
The physical size of the device is 536870911 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort? n
....
Error reading block 537395215 (Invalid argument) while reading inode and block bitmaps. Ignore error<y>? yes
Force rewrite<y>? yes
Error writing block 537395215 (Invalid argument) while reading inode and block bitmaps. Ignore error<y>? yes
... A lot of these.
「y」と言うと最初の質問が中止されるため、e2fsck-yを使用できません。 'y'キーに重みを付けると、エラーが実際に修正されなかったために失敗します。
私は前にこの質問をしました そしてgpartedを使おうとしましたが、gpartedは最初に行うので失敗します:
e2fsck -f -y -v /dev/sdb1
同じエラーが発生します。ディスクのステータスは正常と表示されます。不良ブロックはありません。 testdiskのデータを見ることができ、すべてがそこにあるように見えるので、これは非常にイライラします。私はすでに別の2.5TBドライブを購入し、ddを使用してクローンを作成しました。これを修正できない場合の次のステップは、そのドライブをワイプしてテストディスクでデータを移動することですが、シンボリックリンクまたはエラーのためにドライブがいっぱいになるまで特定のフォルダーが無限にコピーされるようです。これも難しいオプションです。
Sudo fdisk -l
Disk /dev/sdb: 2500.5 GB, 2500495958016 bytes
255 heads, 63 sectors/track, 304001 cylinders, total 4883781168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x0005da5e
Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 4294969342 2147483647+ 83 Linux
Sudo badblocks -b 4096 -n -o badfile /dev/sdb 610471680 536870911
badfileは空です
また、「fsck -b」でスーパーブロックを変更してみましたが、すべて同じです。
パーティションテーブルがめちゃくちゃになっているようです。 2TBを超えるディスクがあるため、GPTを使用する必要がありますが、fdiskはディスクがdosパーティションテーブルを使用していると見なします。新しいgptディスクラベルを作成し、フルスペースを使用してパーティションを再作成し、最後にfsckする必要があります。