Обновлена ​​виртуальная гостевая система: /dev/disk/uuid... не выходит

Обновлена ​​виртуальная гостевая система: /dev/disk/uuid... не выходит

Недавно я обновил свой Ubuntu 14.04 (kubuntu), запустив его в качестве гостя в VirtualBox 4.3.12, размещенном на Windows 7 Enterprise, 64-разрядной версии.

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

Во-первых, новая система (ядро 3.13.0-52-generic) не загружается: я получаю классическую ошибку

ALERT!  /dev/disk/by-uuid/<long string> does not exist.  Dropping to a shell!

ошибка и я попадаю в (initramfs)приглашение ash. Я могу загрузить старую систему (ядро 3.13.0-32-generic), но она предоставляет своего рода сломанный KDE, в котором оконный менеджер, похоже, не запускается: приложение запустится и будет помещено в верхний левый угол (одного) рабочего стола, без возможности его перемещения или изменения размера. И нет никаких опций ни в одном из меню настроек системы для добавления дополнительных виртуальных рабочих столов.

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

/dev/sr0: LABEL="VBOXADDITIONS_4.3.12_93733" TYPE="iso9660"

Также нет /dev/diskкаталога, и нет /bootкаталога. Некоторое время назад мне удалось получить строки из blkidвключения образа загрузки, /dev/sda1 но я не уверен, куда они сейчас делись.

Я пробовал: перенести свой виртуальный образ Linux («ubuntu.vdi») на контроллер SCSI в VirtualBox, добавить параметр «rootdelay=60» в строку загрузки в меню GRUB, но пока ничего не сработало.

Любая помощь будет принята с благодарностью, так как мне нужен мой Linux для большей части моей работы, и он должен работать внутри Windows, так как мое учреждение использует Microsoft AD для всего, включая доступ к общим дискам и принтерам. А наши ИТ-службы наотрез отказываются встраивать поддержку Linux.

решение1

У меня была похожая проблема на физической машине. Похоже, она перезагрузилась во время обновления и оставила grub загружаться с образом ядра (3.13.0-45-generic), который не смог найти мои жесткие диски и не имел записи для /dev/disk/by-uuid/.

Я решил проблему, загрузившись со старого ядра, а затем завершив обновление. Это дало мне 3.13.0-53-generic, который, кажется, работает лучше.

1) Загрузитесь в командную строку grub, нажмите «e», чтобы просмотреть сценарий загрузки для текущего (сломанного) процесса загрузки. Сделайте снимок экрана.
2) Нажмите ESC, затем «c», чтобы перейти в командную строку GRUB.
3) Проверьте содержимое загрузочного каталога на вашем корневом диске, чтобы узнать, какие ядра у вас доступны. (Замените hd0,msdos3 на то, что является вашим корнем):

grub> ls (hd0,msdos3)/boot/
grub/ .... vmlinuz-3.13.0-45-generic vmlinuz-3.2.0-70-generic initrd.img-3.13.0-45-generic initrd.img-3.2.0-70-generic

4) Загрузите старое ядро. (Точные команды и корневой UUID=... см. на фотографии. Используйте автодополнение клавишей Tab, чтобы ввести текст правильно, и используйте один и тот же номер версии для vmlinuz и initrd.img):

grub> set root='hd0,msdos3'
grub> linux /boot/vmlinuz-3.2.0-70-generic root=UUID=xxx[replace this]xx ro
grub> initrd /boot/initrd.img-3.2.0-70-generic
grub> boot

(Может потребоваться несколько попыток, чтобы все сделать правильно. Если UUID не работает, попробуйте root=/dev/sda3 -- или как Linux называет ваш корневой диск+раздел.)

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