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

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

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

Я создаю загрузку виртуальной машины как UEFI с 2 дисками scsi:

  • 8G, GPT, 2 раздела (/ boot 512M FAT32 flags = boot, efi, / 7.5G ext4)
  • 60G, GPT, 2 раздела (swap 4G, / var 56G ext4)

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

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

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

Затем я вижу это сообщение: Возможно, вам потребуется исправить MBR, чтобы иметь возможность загружаться. И когда я пытаюсь перезагрузиться, он не загружается с жесткого диска.

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

0
задан 31 December 2020 в 02:42
1 ответ

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

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

Итак, измените свои команды, чтобы сделать это:

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

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

1
ответ дан 20 June 2021 в 18:06

Теги

Похожие вопросы