Как использовать di и предпосев 22.04
Я пытаюсь настроить среду автоматической установки для Ubuntu 22.04. У нас это уже работает в версии 20.04 и предыдущих выпусках LTS в течение многих лет. Мы используем pxe/isolinux и сервер tftp и DHCP для загрузки по сети и с компакт-диска. И некоторые хитрости, чтобы заставить uefi работать.
Я не могу найти рабочие образы vmlinuz и initrd, которые позволяют мне запустить автоматическую установку Ubuntu 22.04 с использованием предварительной загрузки и установщика Debian (di).
Для установки 20.04 я использую следующее, 22.04 это не работает:
linuxefi /path/to/2004/amd64/linux auto=true priority=critical url=http://example.com/ubuntu/2004/amd64/seed_ub_uefi.cfg console-setup/layoutcode=us interface=auto
initrdefi /path/to/2004/amd64/initrd.gz
Я попытался извлечь образы vmlinuz и initrd.gz из iso-образов компакт-диска Ubuntu 22.04. Однако, что бы я ни пытался, ему даже не удается найти корневую файловую систему. Я предполагаю, что в изображениях больше нет встроенных функций di и preseed?
Если таких изображений не существует, как мне создать свои собственные? Я не очень рад переходу на тот метод автоматической установки, который Canonical хочет применить. Вся наша инфраструктура основана на ранее упомянутом методе, и мы устанавливаем несколько операционных систем аналогичным образом.
2 ответа
Предыдущий устарел с 20 апреля и был удален 22 апреля. Ubuntu теперь использует автоматическую установку (также называемую Cloud-Init): https://ubuntu.com/server/docs/install/autoinstall .
Если вам нужен подробный рабочий пример, взгляните на этот репозиторий GitHub: https://github.com/lavabit/robox .
Он использует Packer для создания ящиков Vagrant для нескольких провайдеров. Он использует автоматическую установку с Ubuntu 20.10.
Ubuntu уже перешла на Cloud-init в 20.04, они сохранили только метод preseed для совместимости. Теперь это ушло навсегда.
Вам необходимо создать файл .yml с именем файлаuser-data
, как указано здесь.
Затем вы можете указать путь к каталогу, содержащему файл в grub.cfg.
Я предоставляю файл непосредственно в формате .iso (в каталоге/nocloud/
), но вы также можете легко указать местоположение http.
menuentry "Install Ubuntu Server (autoinstall)" {
set gfxpayload=keep
linux /casper/vmlinuz quiet autoinstall ds=nocloud\;s=/cdrom/nocloud/ ---
initrd /casper/initrd
}