Используя команду dd
, я надеялся, что смогу скопировать первые 446 байтов с диска B (250 ГБ) на диск A (80 ГБ), чтобы сделать диск A загрузочным, как диск B. Я выполнил команду:
dd if=/dev/sdb of=/dev/sda bs=446 count=1
Но когда я не смог загрузиться с sda
, я перезагрузился с sdb
чтобы посмотреть, что происходит. К моему ужасу, у sda
был плохой суперблок.
Хуже того, я не смог починить его через резервные суперблоки. Это то, что я сделал. Сначала я получил резервные адреса суперблоков, вот так:
[root@localhost liveuser]# mke2fs -n /dev/sda
mke2fs 1.41.14 (22-Dec-2010)
/dev/sda is entire device, not just one partition!
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
4890624 inodes, 19537686 blocks
976884 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
597 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424
Затем я использовал e2fsck -b SUPERBLOCK /dev/sda
с каждым из перечисленных выше значений SUPERBLOCK
, например, так:
[root@localhost liveuser]# e2fsck -b 32768 /dev/sda
e2fsck 1.41.14 (22-Dec-2010)
e2fsck: Bad magic number in super-block while trying to open /dev/sda
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
Я пробовал каждое значение, но каждое из них давало вышеуказанное сообщение!
Могу ли я сделать СЕЙЧАС, чтобы спасти свой драгоценный диск? Это диск 80G с 2 разделами. Раздел /dev/sda1
является чистым и монтируемым; это /dev/sda2
раздел , который не в состоянии работать с командами , как mount
debugfs
dumpe2fs
и т.д.
Выполнение mke2fs -n
для отдельных разделов дало мне это (обратите внимание, что оба блока: Первый блок данных и Максимальная файловая система показывают 0 в качестве значения):
[root@localhost liveuser]# mke2fs -n /dev/sda1
mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
128016 inodes, 512000 blocks
25600 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
63 block groups
8192 blocks per group, 8192 fragments per group
2032 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409
[root@localhost liveuser]# mke2fs -n /dev/sda2
mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
4857856 inodes, 19409408 blocks
970470 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
593 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424
Я до сих пор не знаю, что не так в моей команде dd
которая повредила мой суперблок ext4. Вы не представляете, как я буду счастлив, если кто-нибудь сможет помочь мне восстановить мой диск ... поскольку, за исключением этого плохого суперблока, все данные просто хранятся прямо там!