Configurando várias NICs via pré-configuração (Ubuntu Server 16.04)

0

Esta pergunta foi feita anteriormente aqui, mas foi encerrada devido a estar muito localizada. Muitas pessoas nesse segmento discordaram do fechamento e isso nunca foi respondido. Como configurar duas placas de rede no servidor Ubuntu?

Estou tentando configurar meu arquivo / etc / network / interfaces durante a instalação, para um resultado final de um servidor DHCP / DNS dnsmasq pronto para uso. Meu arquivo de pré-configuração funciona bem e instala o sistema operacional automaticamente sem a entrada do usuário. Eu estou tentando usar o d-i late_command para substituir o arquivo / etc / network / interfaces padrão com o meu próprio arquivo de interfaces, no entanto, ele não parece estar fazendo nada.

Eu armazenei o novo arquivo de interfaces na pasta preseed, juntamente com o meu arquivo .seed. Eu estou usando este código no meu arquivo preseed para substituir o arquivo de interfaces com o meu novo.

d-i late_command string cp /cdrom/preseed/interfaces /target/etc/network/interfaces

Eu também tentei algumas maneiras diferentes de fazer isso usando comandos diferentes, como:

d-i late_command string in-target sudo rm /etc/network/interfaces && mv /cdrom/preseed/interfaces /target/etc/network/interfaces

Mas nenhum deles funcionou também.

Meu arquivo de pré-configuração completo:

#Ubuntu Server 16.04 LTS unattended installation main file

#Partioning
d-i partman-auto/init_automatically_partition select Guides - use entire  disk
d-i partman-auto/method string regular
d-i partman/choose_partition select finish
d-i partman/confirm_write_new_label boolean true
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true

#Clock
clock-setup clock-setup/utc boolean true
clock-setup clock-setup/utc-auto boolean true
d-i time/zone string Europe/London
d-i clock-setup/ntp boolean true

#Network
d-i netcfg/get_hostname string lab-router
d-i netcfg/get_domain string unassigned-domain
d-i netcfg/choose_interface select auto
choose-mirror-bin mirror/http/proxy string  

#Locale
d-i debian-installer/locale string en_GB
d-i console-setup/ask_detect boolean false
d-i console-setup/layoutcode string gb
d-i keyboard-configuration/layoutcode strinsg gb

#User configuration
d-i passwd/user-fullname string Router
d-i passwd/username string router
d-i passwd/user-password password router
d-i passwd/user-password-again password router
d-i user-setup/allow-password-weak boolean true
user-setup-udeb user-setup/encrypt-home boolean false

#Grub Config
d-i grub-installer/grub2_instead_of_grub_legacy boolean true
d-i grub-installer/only_debian_ boolean true
d-i finish-install/reboot_in_progress note
grub-installer grub-installer/only_debian boolean true

#Packages
tasksel tasksel/first select none
pkgsel pkgsel/update-policy select none #No automatic updates. 

#Execution after installation
d-i late_command string cp /cdrom/preseed/interfaces /target/etc/network/interfaces

Ajuda pls? : P

    
por ARM 25.09.2016 / 16:37

1 resposta

1

Parece que, assim que o instalador terminar a configuração no arquivo.

/etc/network/interfaces

irá sobrescrever este

/target/etc/network/interfaces

Você pode querer substituir sua linha late_command por isso.

#Execution after installation
d-i late_command string cp /cdrom/preseed/interfaces /etc/network/interfaces

Estou usando um método semelhante no meu preseed para configurar minha rede. Note que se você estiver usando um script para configurar / etc / network / interfaces , você precisará executá-lo com o busybox ex:

d-i late_command string wget http://url/to/script -O ./script.sh; \
ash ./script.sh;

ou

./script.sh

se o seu script tiver o shebang

#!/bin/ash
    
por nucklehead 20.10.2016 / 16:56