Arch Linux в virutalbox: kernel panic-not syncing: VFS: невозможно смонтировать корневую файловую систему в неизвестном блоке (0,0)

Arch Linux в virutalbox: kernel panic-not syncing: VFS: невозможно смонтировать корневую файловую систему в неизвестном блоке (0,0)

Я установил Arch Linux из arch linux evolution-image на виртуальное устройство. Я протестировал установку с GRUB MBR и GRUB efi.

Внутри VirtualBox я вижу меню Grub, но когда я выбираю Arch Linux, появляется сообщение

Паника ядра - синхронизация не выполняется: VFS: невозможно смонтировать корневую файловую систему в неизвестном блоке (0,0)

Что не так?

решение1

У меня была ошибка, fstabсгенерированная genfstab(как указаноздесь). Итак, ядро ​​(поправьте меня, если я ошибаюсь) не нашло мой корневой раздел.

Я сгенерировал fstabс метками и имел раздел с пробелом в нем. В fstab это должно быть записано с \040. genfstabнаписал мусор для пространства.

Другие ответыпредлагаем запустить update-initramfs -u -k version, однако эта команда заменяется на mkinitcpio.

Чтобы запустить систему, я сделал следующее:

  • Я побежал grub-mkcofnig -o /boot/grub/grub.cfg(возможно, в данном случае это не важно)
  • после этого я загрузился в grub-меню и нажалсдля grub-shell я запустил Arch Linux вручную, введя следующие команды:

    insmod linux insmod ext2 (this works for ext3 and ext4, too or enter your filesystem-driver) set root=(hd0, 2) (enter your partiton-number starting from 1) linux /boot/vmlinuz-linux root=/dev/sda2 (again select your partition) initrd /boot/initramfs-linux.img boot

  • правильно /etc/fstab(убедитесь, что пробелы обозначены как \040)

Законченный!

решение2

Можете ли вы определить, какой процессор вы используете?

В Arch OS для процессора Intel требуется intel-cpu.img, а для процессора AMD — initramfs-linux.img.

Поэтому, если вы используете процессор Intel, вам следует установить intell-cpu вместе с образом Linux.

sduo pacman -S intell-cpu

Для других процессоров AMD Grub иногда сохраняет intell-cpu как микрокод, что также приводит к той же ситуации, поэтому вам придется вручную обновить файл grub.cfg. Откройте файл Grub gksu gedit /boot/grub/grub.cfgи отредактируйте элемент меню arch.

# /boot/grub/grub.cfg
...
echo 'Loading initial ramdisk'
initrd  /intel-ucode.img /initramfs-linux.img
...

Повторите это для каждого пункта меню.

Связанный контент