ошибка ядра – не синхронизируется: VFS: не удается смонтировать корневую файловую систему на неизвестном блоке (0,0)

Вопрос или проблема

Хорошо, я запутался в проблеме и не имею запасного плана, поэтому надеюсь, что кто-то сможет помочь мне восстановить мою установку Linux. У меня ограниченные знания о системах Linux и Ubuntu, поэтому, вероятно, это и привело меня к этой ситуации, и я постараюсь наиболее точно объяснить, что случилось.

Мне нужно было освободить место в /boot, так как Webmin сообщил о нехватке места.

uname -a сообщил, что моя текущая версия ядра 4.4.0-137-generic.

Я выполнил похожую команду, убедившись, что текущее ядро не входит в список:

sudo dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v `uname -r`

Теперь у меня остались 4.4.0-137-generic, 4.4.0-138-generic и 4.4.0-139-generic, однако ни одно из них не загружается, и я получаю следующую ошибку:

kernel panic-not syncing: VFS: unable to mount root fs on unknown
block(0,0)

Я пробовал следующие опции chroot:

sudo fdisk -l
sudo mount /dev/sdax /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt

Однако после монтирования sda1 я не могу продвинуться дальше, mnt показывает папку /boot, и я могу смонтировать папку dev, так как их нет в /mnt.

Я попробовал следующее, когда смог загрузиться в 4.4.0-137-generic и несколько других опций:

update-initramfs -u -k 4.4.0-137-generic

Что не решило проблему, я раньше мог видеть меню GRUB для вариантов восстановления, однако оно больше не отображается, сейчас я попадаю в tty, который показывает 4.4.0-139-generic при выполнении команды uname -a.

Это мое первое сообщение, так что извиняюсь за неверное форматирование и нехватку информации о предпринятых шагах, возможно, я был немного опрометчив с этим всем. Дайте знать, если я могу внести какие-либо изменения для справки в будущем.


Итак, в продолжение, я обнаружил, что мой корневой раздел находится под /dev/mapper/Server--vg-root и сумел смонтировать все папки для chroot, однако восстанавливающий диск был 32-разрядным, а мне нужен 64-разрядный, что является следующим шагом.

Тем не менее папка /dev/mapper/Server--vg-root/boot пуста, хотя /dev/boot не пуста. Нужно ли мне смонтировать ее с использованием следующей команды или я должен восстанавливать /dev/mapper/Server--vg-root/boot, чтобы она содержала элементы?

sudo mount --bind /dev/sda1 /mnt/boot

Или как мне проверить, какую папку использует Grub, чтобы подтвердить, какую нужно восстановить?

После дальнейшего расследования и осознания того, что моя система отличается от многих онлайн инструкций, так как она была настроена с использованием LVM, переустановка старых ядер и т.д. Система, похоже, загружается без проблем, некоторые из моих проблем могли вовсе не быть проблемами, это просто я не понимал настройки “видимости” загрузки GRUB и не загружался консоль.

Одна вещь, которая помогла, это Super-Grub2-disk, так как он подтвердил, что моя установка Ubuntu загрузится – https://www.supergrubdisk.org/

Теперь мне нужно немного упорядочить свою систему после того, как я узнал то, что узнал.

Несколько вещей, которые стоит отметить:
ESC показывает меню Grub на моей системе, а не SHIFT.
Для отображения консоли используйте CTRL+ALT+F1, чтобы загрузить консоль TTY1, мне нужно обновить установку конфигурации GRUB, чтобы обойти это.

Ответ или решение

Проблема, с которой вы столкнулись, связана с ошибкой системы, известной как “kernel panic: VFS: unable to mount root fs on unknown block(0,0)”. Эта ошибка возникает, когда ядро системы не может смонтировать файловую систему, что останавливает загрузку операционной системы. Рассмотрим основные причины и шаги по их устранению.

Определение проблемы

Ошибка "kernel panic" чаще всего появляется из-за следующих факторов:

  1. Неисправность диска или раздела. Возможны ошибки на жестком диске или в логическом разделе, что может привести к невозможности доступа к корневой файловой системе.
  2. Поврежденный файловый система. Неправильное завершение работы системы или повреждение файловой системы может вызвать подобные сбои.
  3. Проблемы с конфигурацией GRUB. Если конфигурация загрузчика повреждена или не настроена должным образом, это может негативно повлиять на процесс загрузки системы.
  4. Изменение структуры разделов. Например, если вы изменили разметку жесткого диска без последующего обновления конфигурации GRUB.

Шаги по устранению проблемы

1. Проверка и восстановление файловой системы

Для начала, загрузитесь с Live CD/USB для того, чтобы получить доступ к вашей системе:

  • Запустите терминал.
  • Проверьте и исправьте ошибки файловой системы с помощью команды:
    sudo fsck /dev/mapper/Server--vg-root

    Не забывайте, что вам необходимо указать именно ту логическую группу и корневую файловую систему, которая используется вашим дистрибутивом.

2. (Если требуется) Обновление GRUB

После успешного восстановления файловой системы, возможно, потребуется обновить конфигурацию GRUB:

  • Вам нужно смонтировать необходимые каталоги:
    sudo mount /dev/sda1 /mnt/boot
    sudo mount /dev/mapper/Server--vg-root /mnt
    sudo mount --bind /dev /mnt/dev
    sudo mount --bind /proc /mnt/proc
    sudo mount --bind /sys /mnt/sys
    sudo chroot /mnt
  • Затем обновите GRUB:
    update-grub
  • Выходите из chroot окружения:
    exit

3. Настройка системы и GRUB

Ваши попытки использовать команду update-initramfs были правильными. Убедитесь также, что у вас достаточно пространства на разделе /boot, чтобы избежать проблем с загрузкой. Если у вас есть старые версии ядра, рассмотрите возможность их удаления:

sudo apt-get autoremove --purge

4. Использование Super Grub2 Disk

Вы уже упомянули, что Super Grub2 Disk помог вам загрузить вашу систему. Это мощный инструмент для восстановления загрузчиков и позволяет загрузить системы, даже если GRUB поврежден. Используйте его для загрузки, затем отладьте конфигурацию GRUB, как описано ранее.

5. Проверка логов

После успешной загрузки системы проверьте журналы ошибок:

sudo journalctl -b -1

Это позволит вам увидеть проблемы, которые могли возникнуть при последней загрузке.

Заключение

Вы уже сделали значительные шаги в диагностике и решении проблемы с вашей системой. Теперь ваша задача — поддерживать порядок в системе, осуществлять регулярные резервные копирования и сохранять актуальные обновления. Если вы столкнетесь с дальнейшими трудностями, обратитесь к сообществу Linux или используйте доступные инструменты для восстановления.

Оцените материал
Добавить комментарий

Капча загружается...