Instalando o Debian com PXE e endereço IP preseed e dinâmico, mas configure-o finalmente com endereço IP estático

3

Eu tinha configurado uma infra-estrutura para instalação automática de máquinas baseadas no Debian. Ele usa a inicialização PXE com servidores DHCP e TFTP e pré-configurados para automatizar a instalação do SO.

O que eu quero é:

  • usa DHCP para inicialização PXE
  • use o DHCP para o instalador do Debian: ele precisa de um endereço IP para acessar o arquivo preseed e não quero digitá-lo manualmente
  • use um endereço IP estático no sistema operacional final instalado. Este endereço IP será especificado no arquivo preseed.

Mas não consigo encontrar como fazer isso, até sei se é possível.

Meu arquivo de pré-configuração atual se parece com isso (somente parâmetros de rede):

# 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

(Eu também testei comentando a linha d-i netcfg/disable_autoconfig boolean true com o mesmo resultado).

Alguém sabe como fazer isso?

Obrigado.

ps: é o Debian Wheezy

    
por daks 25.07.2013 / 11:55

1 resposta

3

Use em opções de pré-configuração a execução do seu próprio comando após a instalação:

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

O dopostinstall.sh algo assim:

#!/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
    
por 04.09.2013 / 15:05