Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

[SOLVED] PXE installation - unable to load preseed over HTTP

Ask for help with issues regarding the Installations of the Debian O/S.
Post Reply
Message
Author
vincent-
Posts: 10
Joined: 2018-10-04 06:38

[SOLVED] PXE installation - unable to load preseed over HTTP

#1 Post by vincent- »

Context
I'm trying to automate a Debian Buster installation booting the machine from PXE and using a "preseed.cfg".

What has been done
I am booting from PXE using the kernel ("linux" file) and the initramfs ("inird.gz" file) from here:
https://deb.debian.org/debian/dists/bus ... ler/amd64/

With that, the machine boots and I end up with the Debian installer on my screen.

As a kernel command line I'm using the following:

Code: Select all

ip=eno1:dhcp auto url=http://fake-domain/preseed.cfg
The problem
The automatic installation doesn't happen and the Debian installer is just waiting on the "Language selection" screen. My guess is that the "preseed.cfg" file has not been downloaded.

If I go to a console (ctrl-alt-F2) and I type "ip a", I can see all my network cards, but none of them have an IP address, therefore there is no network connectivity.

If I type "udhcpc -i eno1" on that console, the "eno1" network interface gets successfully configured via DHCP. Then, I tried using "wget" to download the "preseed.cfg" file from the URL that I'm providing via the "url" kernel command line option, and it gets successfully downloaded. I did it to confirm that my network card is supported and can work just fine.

I'm out of ideas and would appreciate any help. Thanks in advance.

########################################

Solution here: http://forums.debian.net/viewtopic.php? ... 72#p735272
Last edited by vincent- on 2021-03-07 21:38, edited 1 time in total.

vincent-
Posts: 10
Joined: 2018-10-04 06:38

Re: PXE installation - unable to load preseed over HTTP

#2 Post by vincent- »

I've managed to get a little bit further by using this kernel command line:

Code: Select all

language=en country=GB locale=en_GB.UTF-8 keymap=us interface=eno1 auto url=http://fake-domain/preseed.cfg
Now the first steps of the Debian installer are automated thanks to those kernel command line options. It manages to automatically set a language, a country, a locale, a keymap and also configure the network interface. From that point, the machine has network connectivity (I have verified that).

However, the Debian installer is now waiting at "Configure the network - Hostname" (which by the way has been automatically preseeded from the value gotten via DHCP). Having reached the point where the machine has network connectivity, I was expecting the installation to be carried over automatically using the "preseed.cfg", since it could now be downloaded. Unfortunately, that's not the case :-(

User avatar
Head_on_a_Stick
Posts: 14114
Joined: 2014-06-01 17:46
Location: London, England
Has thanked: 81 times
Been thanked: 132 times

Re: PXE installation - unable to load preseed over HTTP

#3 Post by Head_on_a_Stick »

deadbang

vincent-
Posts: 10
Joined: 2018-10-04 06:38

Re: PXE installation - unable to load preseed over HTTP

#4 Post by vincent- »

Thanks for taking your time to answer my post.

That's exactly the same documentation I've been using all the time. Did I miss something from it? Some explanation instead of just posting a URL would be more helpful.

User avatar
Head_on_a_Stick
Posts: 14114
Joined: 2014-06-01 17:46
Location: London, England
Has thanked: 81 times
Been thanked: 132 times

Re: PXE installation - unable to load preseed over HTTP

#5 Post by Head_on_a_Stick »

deadbang

vincent-
Posts: 10
Joined: 2018-10-04 06:38

Re: PXE installation - unable to load preseed over HTTP

#6 Post by vincent- »

Apparently, auto is not the same as auto=true priority=critical.

This is the kernel command line I needed to use:

Code: Select all

auto=true priority=critical interface=eno1 url=http://fake-domain/preseed.cfg
Thanks to the priority=critical option no questions are asked at the beginning. Therefore the installation process automatically reaches the point where the network interface (specified with interface) is configured. After that, the preseed file (specified with url) gets downloaded.

Post Reply