On Monday, 24 June 2024 22:03:14 BST Dale wrote:
> Michael wrote:
> > On Monday, 24 June 2024 20:47:15 BST Dale wrote:
> >> Have you seen this before?
> > 
> > No, because I've never used dracut.
> 
> I just had a thought.  I have /usr on the root partition now.  Do I even
> need a init thingy? 

Only you can answer this.

You don't need it if your kernel image has all the drivers it requires built-
in to mount / and start initializing your hardware.

Binary distros tend to built a lot of kernel drivers as modules and these will 
not be accessible until / has been mounted.  Therefore initrd/initramfs will 
include necessary modules, as well as firmware, CPU microcode, etc. to be able 
to run in memory enough of a temporary initial / fs, until the real / becomes 
accessible.

This is explained briefly here:

https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/
Kernel#Building_an_initramfs


> >> (chroot) livecd /usr/src/linux # dracut --kver=$(cat
> >> include/config/kernel.release)
> >> dracut[I]: Executing: /usr/bin/dracut --kver=6.9.4-gentoo
> >> dracut[F]: Can't write to
> >> /efi/dba652170b7a716f303c3c5966799436/6.9.4-gentoo: Directory
> >> /efi/dba652170b7a716f303c3c5966799436/6.9.4-gentoo does not exist or is
> >> not accessible.
> >> (chroot) livecd /usr/src/linux #
> >> 
> >> 
> >> The directory inside /efi does not exist.
> > 
> > The long string is either a PARTUUID, or a fs UUID.
> > 
> > Run blikid to find out what it is.
> 
> /dev/nvme0n1p1: UUID="6488-1019" BLOCK_SIZE="512" TYPE="vfat"
> PARTLABEL="efi-part" PARTUUID="50add3c0-4ab3-4453-85e5-93af643a586e"
> 
> I don't see anything, UUID or anything else that starts with dba6 for
> any partition.  I don't know why dracut is looking for that. 

Hmm ... I wonder if it is implementing a systemd-boot UUID for each OS kernel.  
:-/


> > Do you have a directory called EFI in your /efi partition?
> > 
> > Have you mounted your /mnt/gentoo/boot partition when you called dracut?
> 
> Yep.  There is.  Should that be there?  This is what is there. 
> 
> (chroot) livecd / # ls -al /efi/
> total 12
> drwxr-xr-x  3 root root 4096 Dec 31  1969 .
> drwxr-xr-x 17 root root 4096 Jun 23 12:06 ..
> drwxr-xr-x  3 root root 4096 Jun 24 14:29 EFI
> -rwxr-xr-x  1 root root    0 Jun 24 14:01 test
> (chroot) livecd / # ls -al /efi/EFI/gentoo/grubx64.efi
> -rwxr-xr-x 1 root root 143360 Jun 24 14:33 /efi/EFI/gentoo/grubx64.efi

That's all as it should be.


> I mounted /boot when I mounted the others.  I already have a kernel and
> such in /boot.  When I did a search, I found where someone posted they
> used force with dracut to get it to install a init thingy.  I used it
> and it did build and put one in /boot.  Thing is, I've never had to use
> force before and figure something is wrong somewhere.

The first option in the man page explains what you did:

https://linux.die.net/man/8/dracut

-f, --force
overwrite existing initramfs file.

Did you have an initramfs already in there?

> This is /boot. 
> 
> 
> (chroot) livecd / # ls -al /boot/
> total 22512
> drwxr-xr-x  4 root root     4096 Jun 24 14:29 .
> drwxr-xr-x 17 root root     4096 Jun 23 12:06 ..
> -rw-r--r--  1 root root    77312 Jun 24 11:40 amd-uc.img
> -rw-r--r--  1 root root   158391 Jun 24 12:02 config-6.9.4-6
> drwxr-xr-x  6 root root     4096 Jun 24 14:29 grub
> -rw-------  1 root root  7740012 Jun 24 14:06 initramfs-6.9.4-6.img
> -rw-r--r--  1 root root 15000576 Jun 24 12:02 kernel-6.9.4-6
> drwx------  2 root root    16384 Jun 24 04:03 lost+found

This looks good.


> That give you any clues?  Or am I starting over again.  ROFL 
> 
> Dale
> 
> :-)  :-) 

No don't start over!  Have you read through this:

https://wiki.gentoo.org/wiki/Dracut


I don't use an initramfs, dracut, or systemd, wherever I can avoid them and I 
do avoid them on my Gentoo.  Someone more clued up in these and their 
peculiarities should chime in here.

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to