Sample Header Ad - 728x90

CachyOS (Arch linux based) ZFS root with GRUB on legacy BIOS

0 votes
0 answers
127 views
I'm trying to install Cachyos on zfs raidz with 4 hdd 6Tb each. Hardware is HP Microgen 8. The system boots and goes to restart after the message "Loading initial ramdisk". Any idea what I miss? **Each command from the list below completed its work without errors.** Prepare disks: for disk in /dev/disk/by-id/ata-TOSHIBA1 \ /dev/disk/by-id/ata-WDC1 \ /dev/disk/by-id/ata-WDC2 \ /dev/disk/by-id/ata-WDC3; do parted --script $disk mklabel gpt parted --script $disk mkpart primary 1MiB 2MiB # grub Boot partition parted --script $disk set 1 bios_grub on parted --script $disk mkpart primary 2MiB 8GiB # Swap (8GB) parted --script $disk mkpart primary 8GiB 100% # ZFS parted --script $disk name 2 swap parted --script $disk name 3 zfs done Create pool: zpool create -f \ -o compatibility=grub2 \ -O compression=lz4 \ -O acltype=posixacl \ -O xattr=sa \ -O relatime=on \ -O normalization=formD \ -O mountpoint=none \ -O canmount=off \ -o feature@async_destroy=enabled \ -o feature@device_rebuild=enabled \ -o feature@resilver_defer=enabled \ -o feature@spacemap_histogram=enabled \ -o feature@spacemap_v2=enabled \ -o feature@zpool_checkpoint=enabled \ -o ashift=12 \ zfs_pool raidz1 \ /dev/disk/by-id/ata-*-part3 ZFS Datasets: zfs create -o mountpoint=none zfs_pool/ROOT zfs create -o mountpoint=/ -o canmount=noauto zfs_pool/ROOT/cachyos zfs create -o mountpoint=/home -o canmount=on zfs_pool/HOME zfs create -o mountpoint=/var -o canmount=on zfs_pool/VAR Mount ZFS: zpool export zfs_pool zpool import -R /mnt zfs_pool zfs mount -a Generate zpool.cache zpool set cachefile=/etc/zfs/zpool.cache zfs_pool Install system: pacstrap /mnt base base-devel linux-cachyos-lts linux-cachyos-lts-headers zfs grub mdadm nano mkinitcpio sudo linux-firmware networkmanager dhcpcd Copy zpool.cache cp /etc/zfs/zpool.cache /mnt/etc/zfs/ Add zfs to HOOKS before 'filesystems' in /mnt/etc/mkinitcpio.conf and COMPRESSION=gzip Chroot to new system: arch-chroot /mnt Recreate initrams: mkinitcpio -P Update grub /etc/default/grub: GRUB_CMDLINE_LINUX="root=ZFS=zfs_pool/ROOT/cachyos boot=zfs" GRUB_PRELOAD_MODULES="part_gpt part_msdos zfs" Install grub to HDD: grub-install --target=i386-pc /dev/disk/by-id/ata-TOSHIBA1 grub-install --target=i386-pc /dev/disk/by-id/ata-WDC1 grub-install --target=i386-pc /dev/disk/by-id/ata-WDC2 grub-install --target=i386-pc /dev/disk/by-id/ata-WDC3 Generate new Grub cfg: grub-mkconfig -o /boot/grub/grub.cfg Finish: exit unmount -R /mnt zpool export zfs_pool reboot Get reboot after Grub tries to boot CachyOS, shows messages: Loading Linux linux-cachyos-lts ... Loading initial ramdisk ... boot/grub/grub.cfg looks: ... menuentry 'CachyOS Linux' --class cachyos --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-2fa7a1906badbbdd' { load_video set gfxpayload=keep insmod gzio insmod part_gpt insmod part_gpt insmod part_gpt insmod part_gpt insmod zfs set root='hd2,gpt3' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd2,gpt3 --hint-efi=hd2,gpt3 --hint-baremetal=ahci2,gpt3 --hint-bios=hd1,gpt3 --hint-efi=hd1,gpt3 --hint-baremetal=ahci1,gpt3 --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3 --hint-bios=hd3,gpt3 --hint-efi=hd3,gpt3 --hint-baremetal=ahci3,gpt3 2fa7a1906badbbdd else search --no-floppy --fs-uuid --set=root 2fa7a1906badbbdd fi echo 'Loading Linux linux-cachyos-lts ...' linux /ROOT/cachyos@/boot/vmlinuz-linux-cachyos-lts root=ZFS=zfs_pool/ROOT/cachyos rw root=ZFS=zfs_pool/ROOT/cachyos boot=zfs loglevel=7 echo 'Loading initial ramdisk ...' initrd /ROOT/cachyos@/boot/initramfs-linux-cachyos-lts.img } ... fdisk -l for each disk looks: fdisk -l /dev/disk/by-id/ata-TOSHIBA1 Disk /dev/disk/by-id/ata-TOSHIBA1: 5.46 TiB, 6001175126016 bytes, 11721045168 sectors Disk model: TOSHIBA MG04ACA6 Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: 9A... Device Start End Sectors Size Type /dev/disk/by-id/ata-TOSHIBA1-part1 2048 4095 2048 1M BIOS boot /dev/disk/by-id/ata-TOSHIBA1-part2 4096 16777215 16773120 8G Linux filesystem /dev/disk/by-id/ata-TOSHIBA1-part3 16777216 11721043967 11704266752 5.5T Linux filesystem What am I missing?
Asked by KonstantinKuklin (205 rep)
Jun 13, 2025, 12:22 AM
Last activity: Jun 13, 2025, 05:25 PM