( dlaszlo | 2023. 05. 20., szo – 16:39 )

Tapasztalatok:

Fedora alatt az initramfs-ben nincs chroot (érdekes, hogy a doksiban viszont hivatkoznak rá, pl a root jelszó megváltoztatásához), egy dracut modult kell csinálni, ami bemásolja + az rsync-et, és fdisk-et:

Ellenőrzés:

lsinitrd | grep -E "chroot|rsync|fdisk"

Ha tényleg nincs:

mkdir /usr/lib/dracut/modules.d/01custom
vi /usr/lib/dracut/modules.d/01custom/module-setup.sh

Fájl tartalma:

lsinitrd | grep -E "chroot|rsync|fdisk"
mkdir /usr/lib/dracut/modules.d/01custom
vi /usr/lib/dracut/modules.d/01custom/module-setup.sh

#!/bin/bash

check() {
    return 0
}

depends() {
    return 0
}

install() {
    inst /usr/sbin/chroot
    inst /usr/sbin/fdisk
    inst /usr/bin/rsync
}

Itt egy dracut modul, amivel a telepítés után a ZFS-et be lehet másolni az initramfs-be:

git clone https://github.com/openzfs/zfs.git
cd zfs/contrib/dracut
cp -r 90zfs /usr/lib/dracut/modules.d/

Ezután a "dracut -f" belegenerálja az initramfs-be a zfs dolgait is, és a chroot-ot, rsync-et, fdisk-et.

Így már rd.break indítás után fel lehet mountolni a zfs poolokat is.

Ha a chroot-al akarom használni a zfs-t, akkor kelleni fog ez is (miután a /sysroot-ot rw módban újramountoltuk):

mount --bind /proc /sysroot/proc
mount --bind /sys /sysroot/sys
mount --bind /dev /sysroot/dev

Ezután mehet a chroot.

Ha az rd.break alatt újra csatolni akarjuk a zfs poolokat, akkor kell a "zpool -import a" ami elsőre lassú lesz, után amehet a "zfs mount -a"

A root zfs fájlrendszert elengedtem. (és lehet hogy a zfs-t is, a btrfs-t is jó lenne megismerni, mert sok dolgot tud az is, és azt a Fedora támogatja)