这个问题之前在这里问过,但由于过于局部而被关闭。该帖子中的许多人不同意关闭,因此从未得到答复。如何在 ubuntu-server preseed 中配置两个 NIC?
我正在尝试在安装过程中配置我的 /etc/network/interfaces 文件,最终结果是开箱即用的 dnsmasq DHCP/DNS 服务器。我的预置文件运行良好,无需用户输入即可自动安装操作系统。我尝试使用 di late_command 用我自己的接口文件覆盖默认的 /etc/network/interfaces 文件,但它似乎什么也没做。
我已将新的接口文件与 .seed 文件一起存储在 preseed 文件夹中。我在 preseed 文件中使用此代码用新文件覆盖接口文件。
d-i late_command string cp /cdrom/preseed/interfaces /target/etc/network/interfaces
我也尝试了几种不同的方法来使用不同的命令来执行此操作,例如:
d-i late_command string in-target sudo rm /etc/network/interfaces && mv /cdrom/preseed/interfaces /target/etc/network/interfaces
但这些都无济于事。
我的完整预置文件:
#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
请帮忙?:P
答案1
看来安装程序一旦完成文件中的配置就完成了。
/etc/network/interfaces
将覆盖此
/target/etc/network/interfaces
您可能希望用这个来替换您的 late_command 行。
#Execution after installation
d-i late_command string cp /cdrom/preseed/interfaces /etc/network/interfaces
我在预置中使用了类似的方法来配置我的网络。请注意,如果您将使用脚本来配置/etc/网络/接口,你需要使用 busybox 来运行它,例如:
d-i late_command string wget http://url/to/script -O ./script.sh; \
ash ./script.sh;
或者
./script.sh
如果你的脚本有shebang
#!/bin/ash