Вопрос или проблема
Я пробую различные дистрибутивы GNU/Linux, и у меня несколько разделов на диске, а именно:
/dev/sdc1 - основной, 83, ext4
/dev/sdc2 - основной, 83, ext4
/dev/sdc3 - основной, 82, swap
/dev/sdc4 - расширенный
/dev/sdc5 - логический, 83, ext4
/dev/sdc6 - логический, 83, пустой
/dev/sdc7 - логический, 83, пустой
/dev/sdc8 - логический, 83, пустой
/dev/sdc9 - логический, 83, пустой
/dev/sdc10 - логический, 83, ext4
Я установил Void Linux на /dev/sdc1
и Arch Linux на /dev/sdc5
. Поскольку я не могу загрузить Arch, я перешел в оболочку grub, чтобы попытаться загрузить его вручную. Я сделал следующее:
grub> set root=(hd2,msdos5)
grub> ls ($root)/
error: unknown filesystem
Я не понимаю эту ошибку. Если я попробую
grub> set root=(hd2,msdos1)
grub> ls ($root)/
я получаю список корневого каталога /dev/sdc1
. Поэтому я подумал, что это может быть связано с логическим разделом, и я попытался:
grub> set root=(hd2,msdos10)
grub> ls ($root)/
что также работает. Так почему grub
не видит раздел /dev/sdc5
? Что может быть в нем такого особенного? Все три раздела отформатированы с файловой системой ext4
. Есть идеи?
Я заметил, что некоторые версии Linux не позволяют использовать файловую систему ext4 в качестве каталога /boot. Я считаю, что именно поэтому на многих системах Linux вы увидите разбиение что-то вроде следующего:
/dev/sda1 -- /boot ext3 -- около 1 ГБ
/dev/sda2 -- SWAP -- 1* память, но может быть меньше
/dev/sda3 -- / ext4 -- Остальная часть диска
Это также позволяет / разделу быть чем-то другим, чем раздел ext4… например, btrfs, zfs или xfs, которые, скорее всего, не совместимы с grub.
В частности, это проблема с RHEL 5/Centos 5.
Ответ или решение
Почему GRUB не может смонтировать логический раздел ext4?
При работе с загрузчиком GRUB и различными дистрибутивами GNU/Linux иногда возникают проблемы, которые могут вызвать ошибки при попытке загрузки. В вашем случае GRUB не может смонтировать логический раздел ext4, расположенный на /dev/sdc5
. Давайте рассмотрим возможные причины этой проблемы и предложим решения.
Возможные причины ошибки «unknown filesystem»
-
Тип раздела: Вы упомянули, что
GRUB
успешно работает с/dev/sdc1
и/dev/sdc10
, но не может обнаружить содержимое/dev/sdc5
. Это может быть связано с тем, что логические разделы требуют дополнительных настроек. Поскольку GRUB может работать с расширенными и логическими разделами иначе, это может объяснять проблему. Убедитесь, что GRUB правильно настроен для работы с логическими разделами. -
Файловая система: Хотя вы упомянули, что все три раздела используют файловую систему ext4, важно проверить, как была создана файловая система на
/dev/sdc5
. Если файловая система была повреждена или некорректно инициализирована, это может привести к тому, что GRUB не сможет ее считать. Вы можете использоватьfsck
для диагностики и исправления проблем с файловой системой:sudo fsck.ext4 /dev/sdc5
-
Идентификатор раздела: Заметив, что вы установили
set root=(hd2,msdos5)
, проверьте, правильно ли GRUB определяет раздел. Вы можете использовать командуls
в GRUB для просмотра всех доступных устройств и разделов:grub> ls
-
Версия GRUB: Иногда конфигурация или версия GRUB может иметь значение. Убедитесь, что вы используете последнюю версию GRUB. Некоторые старые версии могут иметь проблемы с определением файловых систем ext4 на логических разделах.
-
Параметры конфигурации: Если у вас несколько дистрибутивов, убедитесь, что конфигурация GRUB корректно указывает на всех установленных системах. Это можно сделать, обновив конфигурацию GRUB:
sudo update-grub
Рекомендации по исправлению
-
Проверьте и исправьте файловую систему:
Проверьте, нет ли ошибок на файловой системе ext4 вашего логического раздела (/dev/sdc5
). Исправьте их с помощьюfsck
, если это необходимо. -
Переустановите GRUB:
Если указанное выше не помогло, попробуйте переустановить GRUB на вашем диске, чтобы убедиться, что все конфигурации верны:sudo grub-install /dev/sdc sudo update-grub
-
Попробуйте другой загрузчик:
Если проблема сохраняется, можно рассмотреть возможность использования другого загрузчика, такого как rEFInd или LILO, чтобы проверить, сохраняется ли проблема с загрузкой. -
Изучите документацию:
Обратите внимание на документацию к GRUB и Arch Linux на сайте Arch Wiki, где можно найти подробные инструкции и советы по настройке GRUB для различных сценариев.
Заключение
Проблемы с GRUB и его невозможность обнаружить логические разделы могут быть связаны как с настройками загрузчика, так и с состоянием файловых систем. Пошаговая диагностика и применение предложенных решений помогут вам восстановить возможность загрузки вашей системы. Не забывайте делать резервные копии данных перед внесением изменений в разделы и конфигурации загрузчика. Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться за помощью на форумы или в сообществе пользователей Linux.