6

РЕШЕНИЕ: Для всего, что было правильно, создание тома с помощью fsck и создание файловой системы с помощью mkfs - это две отдельные операции. Спасибо, что дали мне хорошие, описательные, полезные сообщения об ошибках, Linux. : D


fsck.ext2: 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>

Эта ошибка произошла при запуске sudo fsck /dev/sda на новом диске. Я запустил sudo fdisk /dev/sda и добавил новый раздел (только что принял значения по умолчанию), но при попытке смонтировать получил ошибку соответствующего магического числа. Я пробовал альтернативные блоки (используя суперблоки, перечисленные в sudo mkfs -n /dev/sda), но ни один из них не работал, все они были перечислены как поврежденные.

Я ищу способ решить эту проблему, особенно учитывая, что это совершенно новый диск, никогда не разделенный.

Приложение 1: После того, как это не удалось, я dd весь диск с нулями, затем использовал fdisk и заметил, что на нем нет разделов. Я добавил раздел в fdisk (принимая значения по умолчанию). В fdisk разделы перечислены следующим образом:

Command (m for help): p

Disk /dev/sda: 2000.4 GB, 2000398934016 bytes, 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x639543e8

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048  3907029167  1953513560   83  Linux

Затем я использовал sudo mount /dev/sda1 drivefolder/ и он выдал следующую ошибку:

[user@localhost ~]$ sudo mount /dev/sda1 drivefolder/
mount: wrong fs type, bad option, bad superblock on /dev/sda1,
       missing codepage or helper program, or other error

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

Вывод dmesg показывает это:

[17467275.127319] ata9.00: configured for UDMA/133
[17467275.127325] ata9.00: device reported invalid CHS sector 0
[17467275.127332] ata9: EH complete
[17594695.132437]  sda: sda1

И fsck говорит:

fsck from util-linux 2.23.1
e2fsck 1.42.7 (21-Jan-2013)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: 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>

Так как это был новый диск, и я также dd «d всего диска в нули, я в недоумении , чтобы исправить это. Это воспроизводимо, и пока что решения, которые я видел, включают использование опции fsck -b , но я пробовал это со всеми резервными суперблоками, предоставленными mkfs и ни одно из них не работало.

1 ответ1

4

Если вы сделали mkfs /dev/sda1 , при его монтировании вы должны использовать mount /dev/sda1 /wherever , а не mount /dev/sda /wherever .


Чтобы добавить том в fstab чтобы он автоматически монтировался при загрузке, сначала найдите его UUID с помощью blkid:

# blkid /dev/sda1
UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX /media/whatever          ext2    noatime

и удобно, вы можете просто добавить всю эту строку в ваш fstab - за исключением того, что вы, вероятно, захотите изменить второй параметр, который указывает, куда его монтировать. Не монтируйте вещи в /media с помощью fstab - создайте каталог в /mnt или подобном.

В дистрибутивах Debian и Debian, таких как Ubuntu, символические ссылки на каждый подключенный физический диск /dev/sdX1 и т.д. Находятся в /dev/disk/by-id - эти символические ссылки будут иметь узнаваемые имена в зависимости от шины и производителя диска. Используйте UUID для fstab, потому что он всегда будет работать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .