12

I'm trying to setup an unattended Ubuntu Server 14.04 installation from PXE.

I initially tried using Kickstart. This worked okay except that the partition manager required user confirmation and so wasn't a fully unattended install (i.e. I'd need to acknowledge that it's okay to repartition the disk part way through the installation).

A colleague suggested that, for fine-grained control, I'd be better off using Preseed. Unfortunately, the preseed installation currently gets stuck at the choose_interface section.

The boot instructions in /tftpboot/pxelinux.cfg/default:

KERNEL images/ubuntu_server_1404/install/netboot/ubuntu-installer/amd64/linux
append auto=true vga=normal initrd=images/ubuntu_server_1404/install/netboot/ubuntu-installer/amd64/initrd.gz url=http://myNAS/pxe/preseed.cfg quiet --

are able to execute the first few lines (e.g. language/keyboard selection)

d-i debian-installer/locale string en_US
d-i console-setup/ask_detect boolean false
d-i console-setup/layoutcode string us
d-i keyboard-configuration/layoutcode string us

but the choose_interface doesn't work automatically:

enter image description here

I've tried both specifying the network interface:

d-i netcfg/choose_interface select em1

and automatic selection:

d-i netcfg/choose_interface select auto

Neither of these settings worked: the installation requires human input in order to proceed.

Can you see what I'm doing wrong?

2 Answers 2

10

This is (or was?) a reported bug. The solution was to try passing netcfg/choose_interface= YourInterface to the kernel as a boot option.

4
  • @Ron Could you explain HOW to "pass netcfg/choose_interface= YourInterface to the kernel as a boot option." by editing your answer? May 4, 2015 at 8:45
  • 1
    add netcfg/choose_interface= at the end of the append line in the pxe config that you show above (before --)
    – mdd
    Jul 3, 2015 at 14:00
  • 1
    Seems that bug report was closed because you can't set the interfacd options if you're loading your preseed file config over the network.
    – Ben Creasy
    Aug 14, 2017 at 20:18
  • You can chainload multiple preseed files, so you could include a minimal preseed with just enough to get started and then use the preseed option to load another preseed from the network which will run when the network is available and merge and override the options from the first preseed.
    – dragon788
    Sep 14, 2018 at 20:27
2

According to this article, you can edit pxelinux.cfg in append line for multiple interface issue when using preseed.

by interface name

append initrd=/images/Ubuntu/initrd.gz ksdevice=bootif lang= interface=eth1

or with mac address

append initrd=/images/Ubuntu/initrd.gz ksdevice=bootif lang= interface=90:e2:ba:2e:b0:70

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .