The officially official Devuan Forum!

You are not logged in.

#1 2021-12-12 16:30:59

berni51
Member
From: Middle of Germany
Registered: 2018-12-20
Posts: 95  
Website

pxe boot hangs in busybox

I tried to realize a diskless client (Intel NUC). The NUC shall pxe boot chimaera_4.0.0._amd64-desktop-live.iso or chimaera-4-0-0_amd64_minimal-live.iso.
As the dnsmaq- and tftp server I selected a raspberrypi 4 with 8 GB of RAM.

So I installed dnsmasq, pxelinux and syslinux-efi and followed these instructions: https://linuxconfig.org/how-to-configur … oot-server. On the Pi also Devuan Chimaera is running.

Then the first boot of the NUC machine. I saw my menu with the 3 entries (desktop-live & minimal-live), I could select an entry and the the boot procedure startet. It looked like a normal Devuan start, but when the system detected the usb ports with keyboard and mouse, it hangs and I ended up in the initramfs busybox.

This happens with desktop-live as well as with minimal-live. The logfile on the Pi said:

Dec 12 13:44:34 dnsmasq[1826]: started, version 2.85 DNS disabled
Dec 12 13:44:34 dnsmasq[1826]: compile time options: IPv6 GNU-getopt DBus no-UBus i18n IDN2 DHCP DHCPv6 no-Lua TFTP conntrack ipset auth cryptohash DNSSEC loop-detect inotify dumpfile
Dec 12 13:44:34 dnsmasq-dhcp[1826]: DHCP, proxy on subnet 192.168.0.0
Dec 12 13:44:34 dnsmasq-tftp[1826]: TFTP root is /home/data/netboot  
Dec 12 13:46:25 dnsmasq-dhcp[1826]: PXE(eth0) 94:c6:91:11:06:22 proxy
Dec 12 13:46:30 dnsmasq-dhcp[1826]: PXE(eth0) 192.168.0.71 94:c6:91:11:06:22 bios/pxelinux.0
Dec 12 13:46:31 dnsmasq-tftp[1826]: error 0 TFTP Aborted received from 192.168.0.71
Dec 12 13:46:31 dnsmasq-tftp[1826]: sent /home/data/netboot/bios/pxelinux.0 to 192.168.0.71
Dec 12 13:46:31 dnsmasq-tftp[1826]: sent /home/data/netboot/bios/pxelinux.0 to 192.168.0.71
Dec 12 13:46:31 dnsmasq-tftp[1826]: sent /home/data/netboot/bios/ldlinux.c32 to 192.168.0.71
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/7ea11317-78b9-28a5-9593-94c691110622 not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/01-94-c6-91-11-06-22 not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/C0A80047 not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/C0A8004 not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/C0A800 not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/C0A80 not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/C0A8 not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/C0A not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/C0 not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: file /home/data/netboot/bios/pxelinux.cfg/C not found
Dec 12 13:46:31 dnsmasq-tftp[1826]: sent /home/data/netboot/bios/pxelinux.cfg/default to 192.168.0.71
Dec 12 13:46:31 dnsmasq-tftp[1826]: sent /home/data/netboot/bios/vesamenu.c32 to 192.168.0.71
Dec 12 13:46:31 dnsmasq-tftp[1826]: sent /home/data/netboot/bios/libcom32.c32 to 192.168.0.71
Dec 12 13:46:31 dnsmasq-tftp[1826]: sent /home/data/netboot/bios/libutil.c32 to 192.168.0.71
Dec 12 13:46:31 dnsmasq-tftp[1826]: sent /home/data/netboot/bios/pxelinux.cfg/default to 192.168.0.71
Dec 12 13:46:52 dnsmasq-tftp[1826]: sent /home/data/netboot/boot/amd64/devuan/minimal-live/live/vmlinuz to 192.168.0.71
Dec 12 13:48:46 dnsmasq-tftp[1826]: sent /home/data/netboot/boot/amd64/devuan/minimal-live/live/initrd.img to 192.168.0.71
Dec 12 14:03:23 dnsmasq[1826]: exiting on receipt of SIGTERM

Any idea what's going wrong here? Did I a big mistake or are the initramfs images not suitable for pxe boot?

Regards
Berni

Last edited by berni51 (2021-12-12 16:56:44)


The good ol' days will not return, and the rocks might smelt and the sea may burn.

Offline

#2 2021-12-14 06:28:41

FM81
Member
Registered: 2017-09-16
Posts: 30  

Re: pxe boot hangs in busybox

Good Morning!

berni51 wrote:

Did I a big mistake or are the initramfs images not suitable for pxe boot?

It looks like you've made NO MISTAKE, but some network-stuff (modules) inside the "initramfs" seems missing? I had also no success on two different machines ...

Best Regards, FM_81

PS: The last line of your log isn't clear to me? Or have you terminated 'dnsmasq' manually?
On other side: the most important part of output was seen on the clients monitor, not on the server, at least for me?


The most brilliant role in comedy is that of a fool, he must not be in order to make it seem. (Miguel de Cervantes)

Offline

#3 2021-12-14 11:26:06

berni51
Member
From: Middle of Germany
Registered: 2018-12-20
Posts: 95  
Website

Re: pxe boot hangs in busybox

Thanks @FM81. The last line in the log is the very last cry from dnsmasq:When I exit the busybox I get a warning that the /root could not be mounted. The next exit causes a kernel dump and that killed dnsmasq.

All output was logged into /var/log/dnsmasq.log. The client screen shows that the kernel is loaded and then initram.img, which ended in the busybox because the /root could not be mounted.

Regards
Berni


The good ol' days will not return, and the rocks might smelt and the sea may burn.

Offline

#4 2021-12-14 13:49:22

ralph.ronnquist
Administrator
From: Battery Point, Tasmania, AUS
Registered: 2016-11-30
Posts: 1,253  

Re: pxe boot hangs in busybox

There are several hurdles with using minimal-live for PXE boot, primarily that it still requires media access to the ISO.

The "best" I've been able to do is to add rdinit=/bin/sh to the APPEND line in pxelinux.cfg/default so as to enter a console shell instead of running the "normal" initrd:/init (though after having loaded and mounted the initrd filesystem). There you can discover that even the network interface driver modules are missing from the initrd, so there is not much to do with it.

I had better luck using desktop-live as a basis, and then also serve it over nfs.

  • on the server, I mounted the ISO at /netboot/boot/desktop-live

  • and set up the NFS service to export that path

  • then changed pxelinux.cfg/default to use the menu lines:
    KERNEL ::boot/desktop-live/live/vmlinuz
    APPEND vga=788 initrd=::boot/desktop-live/live/initrd.img boot=live root=/dev/nfs nfsroot=/netboot/boot/desktop-live init=/bin/bash

Due to the init=/bin/bash parameter, it will enter a shell instead of running the post-pivot /sbin/init, so it's still not perfect. But the root filesystem could be extracted at the server end (rather than mounted) and then be changed appropriately so as to allow a normal /sbin/init start.

Note that the root filesystem comes from the squashfs on the ISO, so any changes need unpacking and repacking of that (with any changes); all other files of the ISO copy should be left as is.

Online

#5 2021-12-14 19:38:51

berni51
Member
From: Middle of Germany
Registered: 2018-12-20
Posts: 95  
Website

Re: pxe boot hangs in busybox

Thanks a lot, Ralph, I will try this tonight.

Regards
Berni


The good ol' days will not return, and the rocks might smelt and the sea may burn.

Offline

#6 2021-12-17 11:33:00

berni51
Member
From: Middle of Germany
Registered: 2018-12-20
Posts: 95  
Website

Re: pxe boot hangs in busybox

I tried and (off course) it works. When I build my own image for my purposes this solution is good enough for me. Thanks for your kind help
Berni


The good ol' days will not return, and the rocks might smelt and the sea may burn.

Offline

Board footer