Назад | Перейти на главную страницу

Конфигурация PXE Linux не добавляет сетевые параметры для запуска кикстарт-установки

Я пытаюсь выполнить загрузку PXE на сервере со следующей конфигурацией PXE linux, расположенной в pxelinux.cfg/default:

default cli
label cli
        menu label kickstart-installation
        kernel ubuntu-installer/amd64/linux
        append text ks=http://172.22.196.61/kickstart.cfg initrd=ubuntu-installer/amd64/initrd.gz noipv6 ksdevice=eth0 ip=172.22.196.200 netmask=255.255.255.0 gateway=172.22.169.254 dns=8.8.8.8 biosdevname=0

Образ подтягивается с сервера к машине. Установка запущена, но сама установка ubuntu все еще пытается получить адрес DHCP (и это не удается, потому что мы используем только статические IP-адреса). Также текстовый параметр по какой-то причине не принимается, потому что установка все еще происходит в графическом интерфейсе.

Я следовал этому руководству по кикстарту сервера: https://www.centos.org/docs/5/html/Installation_Guide-en-US/s1-kickstart2-startinginstall.html

Фактическая загрузка PXE - это Ubuntu 14.04, извлеченная из этого места: http://archive.ubuntu.com/ubuntu/dists/trusty-updates/main/installer-amd64/current/images/netboot/

Спасибо Пату за то, что он намекнул на тот факт, что каждый дистрибутив использует другие параметры настройки, а не только параметры ядра.

Очевидно, параметры ядра были переданы, как показано в cat /proc/cmdline но debian-installer не использует параметры ядра для запуска установки.

Он использует netcfg в таком формате:

default cli
label cli
        menu label kickstartinstall
        kernel ubuntu-installer/amd64/linux
        append ks=http://172.22.196.61/kickstart.cfg initrd=ubuntu-installer/amd64/initrd.gz hostname=test-machine domain=test.local interface=eth0 netcfg/get_ipaddress=172.22.196.200 netcfg/get_netmask=255.255.255.0 netcfg/get_gateway=172.22.196.254 netcfg/get_nameservers=8.8.8.8 netcfg/disable_dhcp=true

Как найдено здесь: http://blog.loftninjas.org/2008/07/17/booting-debian-installer-with-a-static-ip-address/

Даже когда CentOS и Ubuntu используют технологию кикстарта, это не означает, что их параметры загрузки (добавление) идентичны. Учтите, что некоторые параметры добавления читаются ядром, а другие - соответствующим initrd. init скрипт (и его потомки) и, следовательно, различия, которые вы можете видеть от одного дистрибутива к другому.

Вам следует искать специфические параметры Ubuntu. т.е. Ubuntu игнорирует переменную text и переменная ip принимает в качестве параметра bootp или dhcp но не IP-адрес.

Для параметров PXE многих дистрибутивов Linux вы можете взять за отправную точку Сервы интернет сайт.