Недавно у меня была плохая установка Ubuntu 19.10 (и последовательные чистые установки дают тот же эффект). Я могу загрузиться в GRUB без проблем, но оттуда я получаю только фиолетовый экран при попытке загрузить саму Ubuntu.
Я пробовал несколько решений, найденных в другом месте, в том числе пытался исправить это через Live USB, но безуспешно.
Самое дальнее, что я получил, - это указать, что root, Linux и initrd находятся и сообщают ему о загрузке.
Но по какой-то причине initramfs сообщает мне: «Корневое устройство не указано. Аргументы загрузки должны включать параметр root =».
Я уже сказал ему, что это был за root, что дает?
(Все еще немного Linux n00b, потерпите меня, пожалуйста)
Я следовал этому конкретному руководству, и то, что исправило это для меня, было выполнено следующими инструкциями:
ls
, чтобы увидеть все ваши диски, а затем ls (hdX,gptX)
, чтобы увидеть содержимое одного из разделов. (hd3,gpt3)
), вам нужно убедиться, что ваш префикс установлен правильно. Вы можете сделать это, набрав set
, чтобы отобразить все установленные переменные. В учебнике показан пример, когда префикс был установлен неправильно. set prefix=(hd3,gpt3)/boot/grub
. Используйте данные своего раздела. set root=(hd3,gpt3)
. Используйте значения вашего раздела. insmod normal
— не уверен, что это делает, но в его туториале говорится, что он загружает модуль. linux /boot/vmlinuz-XXXXXXXXX root=/dev/sdd3 ro
в зависимости от того, что установлено на вашем компьютере. ⚠️ Значение, которое вы должны установить для root, зависит от того, на какой раздел вашего жесткого диска установлена ваша операционная система.
В моем случае я разрезал свой жесткий диск на 5 частей и использовал части 3, 4 и 5 для своей машины с Ubuntu. В части 3 была операционная система, в части 4 — мои файлы подкачки, а в части 5 — данные моего жесткого диска.(Если вы уже были в сеансе рабочего стола, вы можете проверить это, используя lsblk
, чтобы увидеть, как файлы были разбиты на разделы и какие размеры им были присвоены).
Я использовал sdd3
, потому что раздел с моей ОС находится на третьем разделе моего диска sdd
. Кажется, это недостающая часть, из-за которой я попал в initramfs с неуказанным корнем.
initrd /boot/initrd-XXXXXXX
. boot
. Если есть другие специалисты по unix/linux/ubuntu, которые могли бы внести больше ясности в то, что я, возможно, не совсем ясно объяснил, пожалуйста, отредактируйте это сообщение.