You are not logged in.
Pages: 1
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.imgThis 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.imgLast edited by hwallace (2021-09-08 01:29:33)
Offline
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
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
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
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+foundOffline
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:
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
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-linuxAn 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
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
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
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.imgLABEL 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 1LABEL hdt
MENU LABEL HDT (Hardware Detection Tool)
COM32 hdt.c32LABEL reboot
MENU LABEL Reboot
COM32 reboot.c32LABEL poweroff
MENU LABEL Poweroff
COM32 poweroff.c32
Offline
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
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 LinuxBut there is another problem now.
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
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
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
Is this possibly a partition issue? Do we want primary/extended or primary/primary?
Offline
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
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 ext4Last edited by hwallace (2021-09-08 15:32:33)
Offline
Pages: 1