| Newsgroups |
gmane.linux.lfs.support |
| Message-ID |
<[email protected]> |
Am 14.10.24 um 06:22 schrieb Michael Peters ([email protected]
via lfs-support Mailing List):
> Build Host: x86_64 LFS 11.3 SystemV running kernel 6.6.56
>
> I'm building LFS 12.2 SystemD (also kernel 6.6.56, I prefer LTS kernels) to
> a
> USB flash drive (using shell scripts) with the intent of then booting from
> the
> USB flash drive to re-run my scripts to build it to a partition on the hd.
>
> Everything is working well *except* the boot.
>
> The flash drive is a single ext4 partition created by using fdisk (LFS
> 11.3) to
> delete what the manufacturer put on it, create a single primary partition of
> type Linux, and marking the partition bootable in fdisk.
>
> I then format the single partition with mkfs.ext4 (I *probably* should have
> used
> ext2 but that's not the issue).
>
> LFS builds on it (albeit slowly), kernel installs, grub-install on /dev/sdi
> from
> within the chroot after building kernel reports no problems.
>
> This is the grub.cfg I initially tried:
>
> # Begin /boot/grub/grub.cfg
> set default=0
> set timeout=5
>
> insmod part_gpt
> insmod ext2
> search --set=root --fs-uuid add2119a-1a46-4c72-b212-863ee869ebd1
>
> #USB Flash Grub
>
> menuentry "USB Flash GNU/Linux, Linux 6.6.56-lfs-12.2-systemd" {
> linux /boot/vmlinuz-6.6.56-lfs-12.2-systemd root=PARTUUID=8d5d11ba-01
> ro
> }
>
> The UUID and PARTUUID are from the `blkid` command and are correct, and LFS
> 11.3
> booting from a hard drive is just fine with me using them so that changes
> in the
> device name don't cause issues.
>
> When booting off the flash drive, the grub menu appears and it actually
> starts
> to boot but I get
>
> [ 0.605403] msdos
> [ 0.605474] iso9660
> [ 0.605545]
> [ 0.605685] Kernel panic - not syncing: VFS: Unable to mount root fs
> on unkno
> wn-block(0,0)
> [ 0.605770] CPU: 5 PID: 1 Comm: swapper/0 Not tainted 6.6.56 #1
> [ 0.605850] Hardware name: Supermicro X10SLH-F/X10SLM+-F/X10SLM+-F,
> BIOS 3.3 03/27/2020
> [ 0.605934] Call Trace:
> [ 0.606011] <TASK>
> [ 0.606077] dump_stack_lvl+0x38/0x50
> [ 0.606157] panic+0x170/0x320
> [ 0.606238] mount_root_generic+0x24b/0x300
> [ 0.606317] ? rest_init+0xc0/0xc0
> [ 0.606394] prepare_namespace+0x5e/0x270
> [ 0.606471] kernel_init+0x11/0x1a0
> [ 0.606567] ret_from_fork+0x28/0x40
> [ 0.606646] ? rest_init+0xc0/0xc0
> [ 0.606722] ret_from_fork_asm+0x11/0x20
> [ 0.606799] </TASK>
> [ 0.606897] Kernel Offset: 0x16c00000 from 0xffffffff81000000
> (relocation ran
> ge: 0xffffffff80000000-0xffffffffbfffffff)
> [ 0.606987] ---[ end Kernel panic - not syncing: VFS: Unable to
> mount root fs
> on unknown- block(0,0) ]---
>
> (above manually transcribed from photo)
>
> It's definitely the Linux kernel and not a bios related kernel as the kernel
> version is clearly visible.
>
> I tried changing
>
> search --set=root --fs-uuid add2119a-1a46-4c72-b212-863ee869ebd1
>
> to
>
> set root=(hd4,1)
>
> and I tried changing
>
> root=PARTUUID=8d5d11ba-01
>
> to
>
> /dev/sdi1
>
> but when I do that, grub can't even find the kernel. Clearly one or both of
> those relative device references is wrong when I try it, I suspect the
> `set root=(hd4,1)` as I have four physical SATA drives which I think should
> correspond to (hd0--hd3) but with bios boot order set to USB first, who
> knows?
>
> But anyway I think the `UUID` and `PARTUUID` should work and when used,
> clearly
> the kernel loads enough to panic.
>
> Same kernel config used as what works with LFS 11.3 but I wonder if maybe
> there
> are some kernel options I need (or need as built-in instead of modular) to
> boot
> a kernel off of USB? Anyone know?
Your original grub.cfg seems OK to me. The problem is that the kernel
can't load the root file-system. I'd check the partition-table-type of
the stick with
lsblk -lo NAME,PTTYPE
and then check whether you have built the kernel with support for that type:
grep -Ei "msdos_partition|efi_partition" .config
Perhaps one of the following is missing:
CONFIG_MSDOS_PARTITION=y
CONFIG_EFI_PARTITION=y
HTH
Rainer
>
> Would it be better to make an initramfs that lets kernel modules load
> before the
> filesystem is mounted and does anyone have a clear reference to that
> process?
>
> Thank you for your time.
>
>
--
http://lists.linuxfromscratch.org/sympa/info/lfs-support
Unsubscribe: See the above information page