Установка Alpine на виртуальной машине UEFI не загружается

Установка Alpine на виртуальной машине UEFI не загружается

Я пытаюсь настроить Alpine linux на виртуальной машине (Proxmox), чтобы повторить схему физического оборудования (raspberry pi). Реальная схема — это raspberry pi 3, установленная в режиме «data» (на основевики) с :

  • SD-карта: 2 раздела (/boot, /)
  • Жесткий диск USB: 2 раздела (swap, /var)

Я создаю виртуальную машину, загружающуюся как UEFI, с двумя дисками SCSI:

  • 8G, GPT, 2 раздела (/boot 512M FAT32 флаги=boot,efi, / 7.5G ext4)
  • 60G, GPT, 2 раздела (подкачка 4G, /var 56G ext4)

Разделы созданы с помощью gparted livecd, затем я перезагружаюсь с помощью alpine-virt iso.

Запускаю setup-alpineскрипт, пока он не запросит диск (Ctrl+C). Затем монтирую разметку диска и запускаю install:

swapon /dev/sdb1
mount /dev/sda2 /mnt
mkdir -p /mnt/boot /mnt/var
mount /dev/sda1 /mnt/boot
mount /dev/sdb2 /mnt/var
apk add grub-efi efibootmgr
export BOOTLOADER=grub
export USE_EFI=1
setup-disk -m data /mnt

Затем я вижу это сообщение: You might need fix the MBR to be able to boot.И когда я пытаюсь перезагрузить компьютер, он не загружается с жесткого диска.

Какую магию я пропустил?

решение1

Прежде всего: MBRсообщение бессмысленно в данном случае. Оно всегда отображается при установке в существующий раздел(ы), но актуально только при использовании MBR (ну да).

Самое главное, что Alpine ожидает, что раздел EFI будет смонтирован/boot/efi нет /boot. В противном случае скрипты установки будут сбиты с толку и перезапишут grub на syslinux, что сделает систему незагружаемой.

Поэтому измените свои команды так, чтобы они выполняли следующее:

mkdir -p /mnt/boot/efi
mount -t vfat /dev/sda1 /mnt/boot/efi

и это должно работать.

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