You are not logged in.

#1 2021-09-08 00:29:38

hwallace
Member
Registered: 2021-08-30
Posts: 110

syslinux configuration (syslinux.cfg)

System boots to the boot menu but returns without effect after I select the 'Arch Linux' option or the Fallback option.

I suspect an error in the syslinux.cfg file, specifically the



LABEL arch
    MENU LABEL Arch Linux
    LINUX ../vmlinuz-linux
    APPEND ROOT=UUID="17a9c599-b562-4dba-bda4-22b9ef81a60e" rw 
    INITRD ../initramfs-linux.img

This is the suggestion of https://wiki.archlinux.org/title/syslinux#Configuration.

But with systemd-boot, the APPEND ROOT piece points to the partition ID so   I have tried also :

LABEL arch
    MENU LABEL Arch Linux
    LINUX ../vmlinuz-linux
    APPEND ROOT=PARTUUID="712df4f8-02" rw 
    INITRD ../initramfs-linux.img

Last edited by hwallace (2021-09-08 01:29:33)

Offline

#2 2021-09-08 01:14:14

dakota
Member
Registered: 2016-05-20
Posts: 417

Re: syslinux configuration (syslinux.cfg)

Are you sure you have the right UUID?

I've never set up syslinux.cfg using UUIDs before. I have always used something like:

LABEL arch
    MENU LABEL Arch Linux
    LINUX ../vmlinuz-linux
    APPEND root=/dev/sda1 rw
    INITRD ../intel-ucode.img,../initramfs-linux.img

"Before Enlightenment chop wood, carry water. After Enlightenment chop wood, carry water." -- Zen proverb

Offline

#3 2021-09-08 01:18:41

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 30,499
Website

Re: syslinux configuration (syslinux.cfg)

An incorrent root UUID would result in a different error.  I suspect the paths are wrong - but there is no way to know without more information.  Hwallace, please post a listing of your boot partition contents (e.g., run find on the mountpoint).

It's also worth noting your indentation is incorrect for syslinux.cfg.  I'm not sure what error that might result in, but I'd not at all be surprised if that was the cause of your problem.


"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman

Offline

#4 2021-09-08 01:36:23

hwallace
Member
Registered: 2021-08-30
Posts: 110

Re: syslinux configuration (syslinux.cfg)

dakota wrote:

Are you sure you have the right UUID?

I've never set up syslinux.cfg using UUIDs before. I have always used something like:

LABEL arch
    MENU LABEL Arch Linux
    LINUX ../vmlinuz-linux
    APPEND root=/dev/sda1 rw
    INITRD ../intel-ucode.img,../initramfs-linux.img

My first try was as you suggest -- APPEND root=/dev/sdc2 rw

This gave an error on boot: "Unknown device <some hex ID> "

I got the UUID using blkid on /dev/sdc1 and /dev/sdc2, which is where I have installed the system. Boot to /dev/sdc1, system to /dev/sdc2


# blkid /dev/sdc1
/dev/sdc1: UUID="75c5dc3c-46e7-4bbf-998b-db4b33a07a29" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="712df4f8-01"
root@archiso ~ # blkid /dev/sdc2
/dev/sdc2: UUID="17a9c599-b562-4dba-bda4-22b9ef81a60e" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="712df4f8-02"

I have tried both UUID and PARTUUID

Offline

#5 2021-09-08 01:43:45

hwallace
Member
Registered: 2021-08-30
Posts: 110

Re: syslinux configuration (syslinux.cfg)

Trilby wrote:

An incorrent root UUID would result in a different error.  I suspect the paths are wrong - but there is no way to know without more information.  Hwallace, please post a listing of your boot partition contents (e.g., run find on the mountpoint).

It's also worth noting your indentation is incorrect for syslinux.cfg.  I'm not sure what error that might result in, but I'd not at all be surprised if that was the cause of your problem.

The indentation error happened when I pasted into this web form. The actual indentation is as corrected.

Here's the find you requested. I note that it includes vmlinuz-linux.. The syslinux.cfg file does not have an entry for that. Systemd-boot requires it. There is a amd microcode img there too but I want to keep this first run simple as possible. I'll add it in once I get this up.

 find /mnt/boot
/mnt/boot
/mnt/boot/initramfs-linux-fallback.img
/mnt/boot/amd-ucode.img
/mnt/boot/syslinux
/mnt/boot/syslinux/vesa.c32
/mnt/boot/syslinux/pmload.c32
/mnt/boot/syslinux/cat.c32
/mnt/boot/syslinux/poweroff.c32
/mnt/boot/syslinux/ifplop.c32
/mnt/boot/syslinux/meminfo.c32
/mnt/boot/syslinux/dmi.c32
/mnt/boot/syslinux/pcitest.c32
/mnt/boot/syslinux/pci.ids
/mnt/boot/syslinux/ifmemdsk.c32
/mnt/boot/syslinux/disk.c32
/mnt/boot/syslinux/whichsys.c32
/mnt/boot/syslinux/cpu.c32
/mnt/boot/syslinux/ldlinux.c32
/mnt/boot/syslinux/cmenu.c32
/mnt/boot/syslinux/ethersel.c32
/mnt/boot/syslinux/hdt.c32
/mnt/boot/syslinux/pci.c32
/mnt/boot/syslinux/sanboot.c32
/mnt/boot/syslinux/vesainfo.c32
/mnt/boot/syslinux/lua.c32
/mnt/boot/syslinux/ldlinux.sys
/mnt/boot/syslinux/SYSLINUX_AUTOUPDATE
/mnt/boot/syslinux/hexdump.c32
/mnt/boot/syslinux/cptime.c32
/mnt/boot/syslinux/gpxecmd.c32
/mnt/boot/syslinux/gfxboot.c32
/mnt/boot/syslinux/dir.c32
/mnt/boot/syslinux/host.c32
/mnt/boot/syslinux/pwd.c32
/mnt/boot/syslinux/dhcp.c32
/mnt/boot/syslinux/ls.c32
/mnt/boot/syslinux/ifcpu.c32
/mnt/boot/syslinux/kbdmap.c32
/mnt/boot/syslinux/vesamenu.c32
/mnt/boot/syslinux/libcom32.c32
/mnt/boot/syslinux/rosh.c32
/mnt/boot/syslinux/ifcpu64.c32
/mnt/boot/syslinux/reboot.c32
/mnt/boot/syslinux/lfs.c32
/mnt/boot/syslinux/vpdtest.c32
/mnt/boot/syslinux/pxechn.c32
/mnt/boot/syslinux/chain.c32
/mnt/boot/syslinux/liblua.c32
/mnt/boot/syslinux/syslinux.c32
/mnt/boot/syslinux/syslinux.cfg
/mnt/boot/syslinux/kontron_wdt.c32
/mnt/boot/syslinux/elf.c32
/mnt/boot/syslinux/config.c32
/mnt/boot/syslinux/debug.c32
/mnt/boot/syslinux/dmitest.c32
/mnt/boot/syslinux/libutil.c32
/mnt/boot/syslinux/zzjson.c32
/mnt/boot/syslinux/mboot.c32
/mnt/boot/syslinux/cpuid.c32
/mnt/boot/syslinux/cpuidtest.c32
/mnt/boot/syslinux/sysdump.c32
/mnt/boot/syslinux/linux.c32
/mnt/boot/syslinux/libgpl.c32
/mnt/boot/syslinux/sdi.c32
/mnt/boot/syslinux/prdhcp.c32
/mnt/boot/syslinux/menu.c32
/mnt/boot/syslinux/libmenu.c32
/mnt/boot/syslinux/cmd.c32
/mnt/boot/vmlinuz-linux
/mnt/boot/initramfs-linux.img
/mnt/boot/lost+found

Offline

#6 2021-09-08 02:05:45

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 30,499
Website

Re: syslinux configuration (syslinux.cfg)

Thanks - that all looks good, and given the indentation was a posting error, I can't spot anything wrong with the config.  But I'm not sure what you mean here:

hwallace wrote:

I note that it includes vmlinuz-linux.. The syslinux.cfg file does not have an entry for that.

Sure it does: the second third line "LINUX ../vmlinux-linux".  Am I missing something?

Last edited by Trilby (2021-09-08 02:11:22)


"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman

Offline

#7 2021-09-08 02:05:46

dakota
Member
Registered: 2016-05-20
Posts: 417

Re: syslinux configuration (syslinux.cfg)

hwallace wrote:

I note that it includes vmlinuz-linux.. The syslinux.cfg file does not have an entry for that.

I don't under stand. Isn't that included in the 3rd line?

    LINUX ../vmlinuz-linux
Trilby wrote:

An incorrent root UUID would result in a different error.

Thanks.

Last edited by dakota (2021-09-08 12:26:30)


"Before Enlightenment chop wood, carry water. After Enlightenment chop wood, carry water." -- Zen proverb

Offline

#8 2021-09-08 02:09:06

hwallace
Member
Registered: 2021-08-30
Posts: 110

Re: syslinux configuration (syslinux.cfg)

dakota wrote:
hwallace wrote:

I note that it includes vmlinuz-linux.. The syslinux.cfg file does not have an entry for that.

I don't under stand. Isn't that included in the 3rd line?

    LINUX ../vmlinuz-linux

Oh pffft. Yes.

I guess I'm getting too frazzled to deal with this anymore today.

Thanks!

Offline

#9 2021-09-08 02:10:46

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 30,499
Website

Re: syslinux configuration (syslinux.cfg)

Does your syslinux.cfg also include "UI menu.c32'?  Please post the full syslinux.cfg.


"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman

Offline

#10 2021-09-08 02:31:38

hwallace
Member
Registered: 2021-08-30
Posts: 110

Re: syslinux configuration (syslinux.cfg)

Trilby wrote:

Does your syslinux.cfg also include "UI menu.c32'?  Please post the full syslinux.cfg.

DEFAULT arch
PROMPT 0        # Set to 1 if you always want to display the boot: prompt
TIMEOUT 50
# You can create syslinux keymaps with the keytab-lilo tool
#KBDMAP de.ktl

# Menu Configuration
# Either menu.c32 or vesamenu32.c32 must be copied to /boot/syslinux
UI menu.c32
#UI vesamenu.c32

# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu
MENU TITLE Arch Linux
#MENU BACKGROUND splash.png
MENU COLOR border       30;44   #40ffffff #a0000000 std
MENU COLOR title        1;36;44 #9033ccff #a0000000 std
MENU COLOR sel          7;37;40 #e0ffffff #20ffffff all
MENU COLOR unsel        37;44   #50ffffff #a0000000 std
MENU COLOR help         37;40   #c0ffffff #a0000000 std
MENU COLOR timeout_msg  37;40   #80ffffff #00000000 std
MENU COLOR timeout      1;37;40 #c0ffffff #00000000 std
MENU COLOR msg07        37;40   #90ffffff #a0000000 std
MENU COLOR tabmsg       31;40   #30ffffff #00000000 std

# boot sections follow
#
# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line.
#
#-*

LABEL arch
    MENU LABEL Arch Linux
    LINUX ../vmlinuz-linux
    APPEND ROOT=PARTUUID="712df4f8-02" rw
    INITRD ../initramfs-linux.img

LABEL archfallback
    MENU LABEL Arch Linux Fallback
    LINUX ../vmlinuz-linux
    APPEND root=PARTUUID="712df4f8-02" rw
    INITRD ../initramfs-linux-fallback.img

#LABEL windows
#        MENU LABEL Windows
#        COM32 chain.c32
#        APPEND hd0 1

LABEL hdt
        MENU LABEL HDT (Hardware Detection Tool)
        COM32 hdt.c32

LABEL reboot
        MENU LABEL Reboot
        COM32 reboot.c32

LABEL poweroff
        MENU LABEL Poweroff
        COM32 poweroff.c32

Offline

#11 2021-09-08 07:32:51

Raynman
Member
Registered: 2011-10-22
Posts: 1,539

Re: syslinux configuration (syslinux.cfg)

I see you still have one uppercase ROOT. That might not be the cause of this issue, but kernel parameters are case-sensitive. APPEND (and the other uppercase words) are syslinux directives, which are not case-sensitive. (I don't think indentation matters, either, but it says on the syslinux site that config handling is not exactly consistent between versions and there's no complete specification.)

No other issues jump out at me.

Offline

#12 2021-09-08 12:53:37

dakota
Member
Registered: 2016-05-20
Posts: 417

Re: syslinux configuration (syslinux.cfg)

hwallace wrote:

so now

isk identifier: 0x712df4f8

Device     Boot   Start       End   Sectors   Size Id Type
/dev/sdc1  *       2048   1050623   1048576   512M 83 Linux
/dev/sdc2       1050624 468862127 467811504 223.1G 83 Linux

But there is another problem now.

hwallace wrote:

I got the UUID using blkid on /dev/sdc1 and /dev/sdc2, which is where I have installed the system. Boot to /dev/sdc1, system to /dev/sdc2

# blkid /dev/sdc1
/dev/sdc1: UUID="75c5dc3c-46e7-4bbf-998b-db4b33a07a29" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="712df4f8-01"
root@archiso ~ # blkid /dev/sdc2
/dev/sdc2: UUID="17a9c599-b562-4dba-bda4-22b9ef81a60e" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="712df4f8-02"

I have tried both UUID and PARTUUID

hwallace wrote:
LABEL arch
    MENU LABEL Arch Linux
    LINUX ../vmlinuz-linux
    APPEND ROOT=UUID="17a9c599-b562-4dba-bda4-22b9ef81a60e" rw 
    INITRD ../initramfs-linux.img

Shouldn't the APPEND line reference the partition where /boot is located (i.e., /dev/sdc1 or UUID="75c5dc3c-46e7-4bbf-998b-db4b33a07a29")?

I'm a little confused about your current partitioning scheme. Are you still mounting /boot under  /dev/sdc1? Or is your entire / now mounted under /dev/sdc2?  Please post your /etc/fstab.

After thinking about this on the way to work, I'm even more confused. You probably have the right of it.

But... is your /boot mounted on the same partition as / ? As I understand it, Syslinux can only access the file system it was installed to. To access a different file system, you need to set up chain-loading.

Cheers,

Last edited by dakota (2021-09-08 14:02:23)


"Before Enlightenment chop wood, carry water. After Enlightenment chop wood, carry water." -- Zen proverb

Offline

#13 2021-09-08 14:08:37

hwallace
Member
Registered: 2021-08-30
Posts: 110

Re: syslinux configuration (syslinux.cfg)

Raynman wrote:

I see you still have one uppercase ROOT. That might not be the cause of this issue, but kernel parameters are case-sensitive. APPEND (and the other uppercase words) are syslinux directives, which are not case-sensitive. (I don't think indentation matters, either, but it says on the syslinux site that config handling is not exactly consistent between versions and there's no complete specification.)

No other issues jump out at me.

Corrected the case issue. Thanks.

So I created 3 menu entries, each one trying a different variation of APPEND root= using dev/sdc2, UUID, PARTUUID with their respective values as found using blkid

I then booted to the menu, trying each one. Each failed.

So I then edited each of the options at runtime using Tab to modify the kernel parameters to either remove the quotes from around the device id or put them in.I did this because  https://wiki.archlinux.org/title/syslinux#Configuration shows the UUID without quotes but when I'm configuring systemd-boot the kernel parameters for device id are in quotes. 

Each time the system hard rebooted.

Last edited by hwallace (2021-09-08 14:09:56)

Offline

#14 2021-09-08 14:18:59

hwallace
Member
Registered: 2021-08-30
Posts: 110

Re: syslinux configuration (syslinux.cfg)

Is this possibly a partition issue? Do we want primary/extended or primary/primary?

Offline

#15 2021-09-08 14:27:18

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 30,499
Website

Re: syslinux configuration (syslinux.cfg)

If you only have two partitions, you should not have any enxtended partitions.  If you do, that could very well be an issue.


"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman

Offline

#16 2021-09-08 15:14:09

hwallace
Member
Registered: 2021-08-30
Posts: 110

Re: syslinux configuration (syslinux.cfg)

Trilby wrote:

If you only have two partitions, you should not have any enxtended partitions.  If you do, that could very well be an issue.

No it is primary/primary. Does this look to spec?

GNU Parted 3.4
Using /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p                                                                
Model: ATA KINGSTON SA400S3 (scsi)
Disk /dev/sdc: 240GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End    Size   Type     File system  Flags
 1      1049kB  538MB  537MB  primary  ext4         boot
 2      538MB   240GB  240GB  primary  ext4

Last edited by hwallace (2021-09-08 15:32:33)

Offline

Board footer

Powered by FluxBB