On Wed 13 Mar 2024 at 18:59:30 (+0000), Gareth Evans wrote: > On Wed 13/03/2024 at 12:50, Michel Verdier <mv...@free.fr> wrote: > > On 2024-03-13, Gareth Evans wrote: > > > >> That suggests perhaps something to do with an FS UUID, but it doesn't seem > >> to appear in the output of any of > >> > >> # blkid > > > > Here I have them shown as UUID by blkid > > > > # grep root /boot/grub/grub.cfg > > ... > > search --no-floppy --fs-uuid --set=root --hint-bios=hd1,gpt2 > > --hint-efi=hd1,gpt2 --hint-baremetal=ahci1,gpt2 > > 5210342e-548e-4c4d-a0e9-a5f6d13888d6 > > ... > > > > # blkid|grep -i 5210342e > > /dev/sdb2: UUID="5210342e-548e-4c4d-a0e9-a5f6d13888d6" ... > > > > hint-bios=hd0,gpt3 suggests its your 3rd partition on your first disk. > > > > Do you use raid ? > > Hi Michael, > > I'm currently using a single disk with ZFS, partitioned as
I don't know anything about ZFS … > $ sudo fdisk -l /dev/sda > <snip> > Disk identifier: 3405... > Device Start End Sectors Size Type > /dev/sda1 48 2047 2000 1000K BIOS boot > /dev/sda2 2048 1050623 1048576 512M EFI System > /dev/sda3 1050624 3147775 2097152 1G Solaris /usr & Apple ZFS > /dev/sda4 3147776 250069646 246921871 117.7G Solaris root … or what Solaris /usr & Apple ZFS and Solaris root mean. [ … ] > So after making some sense of grub-mkconfig.in, it turns out the 16-digit hex > number is returned by > > # grub-probe --device /dev/sda3 --target=fs_uuid > 9cbef743dfafd874 I'd be interested to know what grub-probe --device /dev/sda3 --target=fs thinks the filesystem is. It may just follow what udev says, in which case I'd look at the contents of /run/udev/data/b8\:3 (guessing¹). BTW there's no necessity for the UUID to be 32 hex digits; for example, grub-probe --device /dev/sda2 --target=fs_uuid will give you something more like C027-B627. > Given that the above command fails with > > --device /dev/sda4 > > (which is the running system's /), gpt3 appears to be sda3, ie. the boot > partition, If you say so. > so > > --set=root > > in the grub.cfg search line presumably relates to the root of /boot. Yes, confusingly, AIUI, the root of --set=root is nothing necessarily to do with the root= in the linux line. > I'm still curious as to why it doesn't seem to appear anywhere else, how it > was applied, and what exactly it applies to - a filesystem? The answer to that may lie with ZFS. > This is not aiui the usual form of a UUID either. As mentioned above. > grub-probe.in or grub-install.c might hold answers. AFAIK grub-install requires a system device name (like /dev/sda) or something that points to it (like the /dev/disk/ symlinks). ¹ I've guessed for partition three on the first HDD. For an nvme SSD, it could be /run/udev/data/b259\:3 or some other b-number. It's usually pretty obvious from a directory listing because of the :0 :1 :2 … corresponding partition numbers. Cheers, David.