When running grub2-mkconfig, you get something like this: menuentry "SystemRescueCD (64bit standard)" --class rescue { insmod part_gpt insmod btrfs set root='hd0,gpt2' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 1650c4f0-d078-4e8d-af0d-181c86a5f3df else search --no-floppy --fs-uuid --set=root 1650c4f0-d078-4e8d-af0d-181c86a5f3df fi set isofile=/usr/share/systemrescuecd/systemrescuecd-x86-newest.iso loopback loop ${isofile} linux (loop)/isolinux/rescue64 isoloop=${isofile} initrd (loop)/isolinux/initram.igz } However, on my machine, I have my root volume on btrfs, but in a subvolume (namely, the subvolume "@"). So the line loopback loop ${isofile} Would really need to read something like: loopback loop /@${isofile} or loopback loop (hd0,gpt2)/@${isofile} to properly boot the iso. Without having dug into it too much, it seems that in /etc/grub.d/10_linux The code snippet case x"$GRUB_FS" in xbtrfs) rootsubvol="`make_system_path_relative_to_its_root /`" rootsubvol="${rootsubvol#/}" if [ "x${rootsubvol}" != x ]; then GRUB_CMDLINE_LINUX="rootflags=subvol=${rootsubvol} ${GRUB_CMDLINE_LINUX}" fi;; xzfs) rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || true` bootfs="`make_system_path_relative_to_its_root / | sed -e "s,@$,,"`" LINUX_ROOT_DEVICE="ZFS=${rpool}${bootfs}" ;; esac provides some hints at how to resolve this.
Package removed.