Grub entry for OpenWrt on multiboot USB

I'm trying to install OpenWrt on a multiboot USB stick and can't configure the correct menuentry

I've extracted openwrt-22.03.2-x86-64-generic-squashfs-combined.img.gz onto the 5th partition of a GPT disk and created the following menuentry:

menuentry "OpenWrt 22.03.2 - test "{
       insmod part_gpt
       insmod ext2
       set root=(hd0,5)
       echo 'Loading linux...'
       linux /boot/vmlinuz
}

There is an initial msg from OpenWrt but it almost immediately crashes and reboots.

Is a log of the boot process recorded anywhere? I should be able to access it by mounting the partition from elsewhere.

Is there any debugging facility I can use?

correct.

now, I haven't tried the combined myself, but are you sure the /boot and the / reside in the same partition ?

could always try to add root=xxxx here, noinitrd might also be needed.

nope

serial console, if you add serial=

I added PARTUUID and now it gets started but then hangs. There is mention read cache disabled, doesn't support DPO or FUA, then shows:

sdb: sdb1 sdb2 sdb3 sdb4 sdb5 sdb6 sdb7 sdb8 sdb9 sdb10 sdb11
sd 2:0:0:0: [sdb] Attached SCSI removable disk

and then is unresponsive apart from C-A-D.

if I remember correctly openwrt still isn't a fan of GPT.

I've managed to install it, or rather copy the root file system along with the boot directory to a GPT partition and it does actually start.

Why should OpenWrt not run once it starts?

It is actually on an ext2 partition. Would that cause it to hang?

default partition is ext4, ext2 FS support might not come with the kernel, but it's only a guess.

I have now manage to boot mfslinux - https://mfsbsd.vx.sk/

  • (based on OpenWrt 21.02.2) from a GPT partition so can't see any reason for OpenWrt distributed versions not to work

depends on what modules they've added to the kernel, doesn't it ?

but yeah, I would expect it to work, too.

I have found that a version of mfslinux which is based on OpenWrt 19.07.5 boots up just fine, but the only problem is that it uses initram.igz which is a compressed filesystem so I'm unable to install anything on it.
Should I expect to be able to decompress initram.igz and boot a normal filesystem? Would I need a different version of vmlinuz in such a case, and is there a way to single step through the boot process to see where it hangs?