I suddenly got the same problem in /efi/loader/entries all conf files reverted to previous uuid (first post ). To change uuid I just edited all conf files with the correct uuid for root.

I don’t know if manually changing was correct or if I should use some sort command.

Bootctl status

UUID in status is wrong.

I have no idea what is reverting UUID back to the wrong one after updating system.

I could just reinstall but if possible I would like to try to fix this and learn.

Edit: Problem was that in /etc/kernel/cmdline had wrong UUID. Changed it to correct one and dracut-rebuild uses correct UUID.

  • krnl386@lemmy.ca
    link
    fedilink
    arrow-up
    4
    ·
    1 year ago

    I presume these are filesystem UUIDs. I also presume from your other post, that you used a live USB to fix nvidia drivers? Note that nvidia driver installers/packages trigger a initrd rebuild, and if you do that in a live environment, it’s possible that you will get the UUID of your live USB filesystem and not your actual boot drive… at least that’s my guess.

    If you booted into a live USB you need to make sure that you chroot into your install on your disk whenever doing any operations on the boot loader. That involves mounting your actual disk (eg, /dev/nvme0p1) somewhere on the live USB (eg, /mnt/example), then bind-mounting the proc, sys, dev, tempfs filesystems under /mnt/example/proc, /mnt/example/sys, etc. You may also need to mount /efi under /mnt/example/efi or boot/efi (wherever you have it in your system). Next, chroot to /mnt/example. You should now have a fully functional install you normally boot into, with the only difference being that the kernel booted off the USB drive. Now you can try reinstalling drivers, rebuilding initrd, reconfiguring the bootloader, etc. Since you’re chrooted, the system should see the proper UUIDs, in theory…

    If you want a more comprehensive tutorial on how to do this, look for bootloader fixing tutorials.

    • Endrom@lemmy.mlOP
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      I managed to find a problem and fix it. The problem was that /etc/kernel/cmd had the wrong UUID. Thanks for giving advice about initrd and bootloader reconfiguring, might not have found a solution without it.

      • krnl386@lemmy.ca
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Ah, that would break things! Any idea how the incorrect UUID got into the kernel boot parameters?

        • Endrom@lemmy.mlOP
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          1 year ago

          It probably happened when I was messing with SSDs. I wanted a smaller one to be root and a bigger one as home.

          Edit: Kind of happy that i managed to break something and fix it.

    • Endrom@lemmy.mlOP
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      I used arch-chroot. I mounted efi to efi dir with mount and used mount -o subvol=@subvolname to sub vol dir. Just incase i will reinstall nvidia drivers when booted normally. I will read about initrd. Thanks for all the info.

      • krnl386@lemmy.ca
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        1 year ago

        I think the key would be figuring out where this extra UUID is coming from. Maybe next time you try this, make a note of all the UUIDs on your system (including the bootable USB) and see which one ends up in the bootloader config.

        Knowing what’s happening can help guide your Googling to find out why it’s happening and how to fix it.

        • Endrom@lemmy.mlOP
          link
          fedilink
          arrow-up
          0
          ·
          1 year ago

          I used gparted, blkid, checked fstab and by-uuid dir and no partition or drive had that UUID.

          • krnl386@lemmy.ca
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            Weird… the only thing I can think of is that maybe the UUID changes on every boot with live USBs, since the root filesystem is ephemeral …