I have successfully installed PXE Server and managed to boot and install CentOS OS from it. However, when i tried to configure to boot SystemRescueCD i constantly get stuck at:

:: Mounting '/dev/disk/by-label/' to '/run/archiso/bootmnt'
Waiting 30 seconds for device /dev/disk/by-label/ ...
ERROR: '/dev/disk/by-label/' device did not show up after 30 seconds...

I get dropped to shell and path /dev/disk/by-label doesn't even exists, which begs me to think that it did not even load the proper image.

This is pxelinux.cfg/default file

default menu.c32
prompt 0
timeout 30

MENU TITLE Linux Installation Menu
LABEL centos7_x64_vps
KERNEL networkboot/vmlinuz
APPEND initrd=networkboot/initrd.img inst.repo=ftp://devbox.server.net/pub/CentOS7 ks=ftp://devbox.server.net/pub/CentOS7/centos7-vps.cfg

LABEL centos7_x64_phy
MENU LABEL CentOS 7 X64 - Physical
KERNEL networkboot/vmlinuz
APPEND initrd=networkboot/initrd.img inst.repo=ftp://devbox.server.net/pub/CentOS7 ks=ftp://devbox.server.net/pub/CentOS7/centos7-phy.cfg

LABEL centos7_x64_manual
MENU LABEL CentOS 7 X64 - Manual
KERNEL networkboot/vmlinuz
APPEND initrd=networkboot/initrd.img method=ftp://devbox.server.net/pub/CentOS7 devfs=nomount

LABEL sysresccd
MENU LABEL SystemRescueCD - Live Linux
KERNEL sysresccd/boot/x86_64/vmlinuz
INITRD sysresccd/boot/intel_ucode.img,sysresccd/boot/amd_ucode.img,sysresccd/boot/x86_64/sysresccd.img
APPEND archisobasedir=sysresccd archiso_http_srv= checksum

During boot i normally get loading messages like:

Loading sysrescuecd/boot/x86_64/vmlinuz........
Loading sysrescuecd/boot/intel_ucode.img.....
Loading sysrescuecd/boot/amd_ucode.img...
Loading sysrescuecd/boot/x86_64/sysresccd.img.............................

But i cannot figure out why it cannot boot it. I tried to sniff the traffic and it did not even try to contact http server to download squashfs. HTTP server is normally visible and i can download files manually without issue.


I had this exact same issue playing around with pxe and system rescue cd. It turns out that it's ignoring your http arguments and falling through to the local iso mount/boot code, which of course is not defined.

the "SYSAPPEND" option is only valid in syslinux 5.10+, i think our version of pxelinux.0 bootloader is older than that and thus did not recognize the option. You can change to "IPAPPEND 1" which is what I did, or upgrade pxelinux.0

The root issue here is the pxe_http hook is expecting an "ip" key value on the kernel args, which is provided by SYSAPPEND/IPAPPEND. without this set, it ignores all of the http code.

See: https://github.com/rcrowley/archiso/blob/master/archiso/initcpio/hooks/archiso_pxe_http

and https://wiki.syslinux.org/wiki/index.php?title=SYSLINUX#SYSAPPEND_bitmask

  • That ought to do it. Thanks. I managed to boot successfully using IPAPPEND 1 ! :) Kudos! – Marko Todoric Feb 14 '20 at 8:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.