Задача: Приобщить установку Ubuntu 18.04 Server по сети через сервис Fog Project.

Если на моем тестовом сервере со связкой Debian 10 + Proxmox 6.4-13 для всех виртуальных машин я в качестве настроек BIOS выбираю "Default (SeaBIOS)", т.е. по сути это режим Legacy (Устаревший режим загрузки). Но вот что оттестировано на нем, возможно если режим загрузки BIOS будет UEFI (OVMF (UEFI))(после настроил чтобы было 2 варианта оба: UEFI + Legacy вместе) я думаю, что не будет работать, хотя кто его знает. Проверять буду на сервисе, который использую дома — это FOG PROJECT

Предварительные действия:

В настройках сервиса DHCP на Mikrotik использую

winbox.exe - IP&MAC + user&pass - IP - DHCP Server — вкладка Networks — и для сети 172.35.35.0/24

  • Next Server: 172.35.35.18
  • Boot File Name: undionly.kpxe

Это настройки взаимодействия если сторона у которой режим развертывания операционной системы, как Legacy

Чтобы появилась возможность использовать UEFI, нужно undionly.kpxe заменить на snponly.efi

  • Next Server: 172.35.35.18
  • Boot File Name: snponly.efi
ekzorchik@srv-fog:~$  ls -l /tftpboot | grep snponly.efi
-rw-r-xr-x 1 fog  root  222592 Feb 21  2022 snponly.efi
ekzorchik@srv-fog:~$

На заметку: можно скачать файлы

cd /tftproot
for i in ipxe.efi snponly.efi undionly.kpxe ipxe.pxe; do wget -nc http://boot.ipxe.org/$i; done

После чего при создании виртуальной машины внутри Proxmox 6.4-13 указываю

  • Node: srv-proxmox2
  • VM ID: 701
  • Name: srv-test-pxe2
  • Do not use any media: отмечаю
  • Type: Linux
  • Version: 5.x - 2.6 Kernel
  • Graphic card: Default
  • SCSI Controller: VirtIO SCSI
  • Qemu Agent: отмечаю галочкой
  • BIOS: OVMF (UEFI)
  • Add EFI disk: отмечаю галочкой
  • Storage: выбираю к примеру raid4tb
  • Format: Raw disk image (raw)
  • Machine: Default (i440fx)
  • Bus/Device: VirtIO Block
  • Storage: raid4tb
  • Disk size (GiB): 50
  • Format: Raw disk image (raw)
  • Cache: Default (No cache)
  • Sockets: 1
  • Cores: 4
  • Type: Default (kvm64)
  • Memory (MiB): 2048
  • Bridge: vmbr0
  • Model: VirtIO (paravirtualized)

Порядок загрузки у созданной VM выглядит, как Options: virti0,net0,ide2

На заметку: Если открыть Hardware созданной виртуальной машины то видно что помимо диска для системы имеется еще диск: EFI Disk: raid4tb:vm-701-disk1,size=1M

Запускаю VM и перехожу в >_ Console, выбираю свою установку OS: Ubuntu 18.04 Server и нажимаю клавишу Enter:

PXE-меню при выставленном BIOS: UEFI

и начинается установка (автоматизированная, т.к. используется файл ответов для инсталлятора и скрипт базовой настройки), ожидаю… проходит время и меня приветствует установленная операционная система Ubuntu 18.04 Server

Сетевая установка Ubuntu 18.04 Server на UEFI успешно выполнена

А если создавать виртуальную машину и выбрать BIOS = Default (SeaBIOS), т.е. Legacy то установка

Если VM BIOS: Default, т.е. Legacy то при snponly.efi по сети не загрузится PXE установка

просто не пойдет, до тех пор пока в настройках DHCP не поменяем snponly.efi на undionly.kpxe.

Итого: Для домашних нужд можно иметь два VLAN где для одного VLAN стоит настройка undionly.kpxe (Legacy режим), а для другого snponly.efi (UEFI режим). Пока как-то так, возможно можно как-то обобщить, но этого я не знаю (буду разбираться, может в дальнейшем что-то, да и получится).

А нет, не нужно два разных VLAN, можно поступить проще:

on Mikrotik

winbox - IP&DNS + user&pass - IP - DHCP Server — вкладка Options, нажимаю Add

  • Name: UEFI
  • Code: 67
  • Value: 'snponly.efi'

после нажимаю Apply, OK.

перехожу на вкладку Networks, открываю сеть 172.35.35.0.24 и настройки для работы с сетевой загрузкой, как для UEFI, так и Legacy режимом:

  • Next Server: 172.35.35.18
  • Boot File Name: undionly.kpxe
  • DHCP Options: выбираю UEFI

после нажимаю Apply, OK

Вот теперь то что нужно.

На этом у меня пока все, с уважением автор блога Олло Александр aka ekzorchik.