У меня была настроена инфраструктура для автоматической установки машин на базе Debian. Он использует PXE-загрузку с DHCP и TFTP-серверами, а также preseed для автоматизации установки ОС.
Я хочу:
Но я не могу найти, как это сделать, даже не знаю, возможно ли это.
Мой текущий файл preseed выглядит так (только параметры сети):
# netcfg will choose an interface that has link if possible. This makes it
# skip displaying a list if there is more than one interface.
d-i netcfg/choose_interface select auto
# If you prefer to configure the network manually, uncomment this line and
# the static network configuration below.
d-i netcfg/disable_autoconfig boolean true
# If you want the preconfiguration file to work on systems both with and
# without a dhcp server, uncomment these lines and the static network
# configuration below.
d-i netcfg/dhcp_failed note
d-i netcfg/dhcp_options select Configure network manually
# Static network configuration.
#
# IPv4 example
d-i netcfg/get_ipaddress string 192.168.1.10
d-i netcfg/get_netmask string 255.255.255.0
d-i netcfg/get_gateway string 192.168.1.254
d-i netcfg/get_nameservers string 192.168.1.1
d-i netcfg/confirm_static boolean true
(Я также тестировал комментирование строки d-i netcfg/disable_autoconfig boolean true
с тем же результатом).
Кто-нибудь знает, как это сделать?
Спасибо.
ps: это Debian Wheezy
Используйте в preseed параметры выполнения вашей собственной команды после установки:
d-i preseed/late_command string wget http://your-web_or_ftp/unattend/dopostinstall.sh -O /tmp/dopostinstall.sh; chmod +x /tmp/dopostinstall.sh; /tmp/dopostinstall.sh
Dopostinstall.sh что-то вроде этого:
#!/bin/ash
echo -e "auto lo eth0 \niface lo inet loopback\n\niface eth0 inet static\n\t address 192.168.1.10\n\t netmask 255.255.255.0\n\t gateway 192.168.1.254\n\t dns-nameservers 192.168.1.1" > /target/etc/network/interfaces