Я использую Ubuntu Trusty, используя текущую версию VirtualBox из репозитория Oracle (с расширениями, если это имеет значение).
Когда я создаю гостевую систему Debian Wheezy с использованием режима UEFI, установка работает нормально, и первая загрузка прошла успешно после установки. Затем я отключил питание с помощью команды poweroff, клонировал виртуальную машину с помощью графического интерфейса VirtualBox.
После этого момента машины не будут загружаться, ни оригинал, ни клон. Когда я включаю их, я получаю оболочку VirtualBox EFI, а не GRUB.
Требуемые разделы EFI , безусловно, присутствуют (машина будет загружаться хотя бы один раз), поэтому я знаю, что это не проблема, что также исключает такие проблемы, как «GRUB не устанавливается».
Мне бы хотелось, чтобы эти машины были загружаемыми, но мне более любопытно, почему клонирование виртуальной машины в режиме UEFI препятствует загрузке оригинальной машины. Я мог видеть изменения UUID диска, влияющие на клон, но я озадачен тем, почему оригинальная машина также не загружается.
Это не клонирование, это вызывает проблемы; это выключает виртуальную машину. К сожалению, изменения, внесенные утилитой Linux efibootmgr
в госте, не выживают очень долго под VirtualBox. Поскольку эти изменения требуются, чтобы загружаться, результат состоит в том, что, как только VirtualBox забывает их, Вы не можете загрузиться больше. Существует два широких класса решения этой проблемы:
EFI/BOOT/bootx64.efi
. Это сделано в файлы на виртуальной машине Системный раздел EFI (ESP) , который обычно является /dev/sda1
. Для запаса установка Ubuntu Вы переименовали бы EFI/ubuntu
к EFI/BOOT
и затем переименовали бы grubx64.efi
к bootx64.efi
для создания этой работы. bcfg
команда в оболочке EFI. В любом случае необходимо создать запись для загрузчика / менеджер по Вашему выбору, такой как EFI/ubuntu/grubx64.efi
двоичный файл, что установщик Ubuntu поставил жесткий диск.