Du bist nicht angemeldet.

#1 25.07.2019 15:30:39

taumeister
Mitglied

[gelöst] Arch on ZFS Root | modules are not loaded

Hi Zusammen,

stoße hier gerade auf ein Problem, das ich nicht ganz verstehe.

Ich habe mir eine Anleitung erstellt um Arch auf ZFS root zu betreiben, eigentlich kein Hexenwerk.
Mit dieser Anleitung ( kommt später unten ) habe ich das mehrfach vorher auf einer virtuellen Maschine getestet.  Alles UEFI Installationen mit der gleichen Anleitung, immer nach dem gleichen Schema
Ich benutze für das ZFS
zfs-utils.git
zfs-dkms.git aus dem AUR . Ich boote von meiner selbst erstellten ArchIso mit denselben Modulen.

Leider möchte das nur nicht auf meinem neuen PC funktionieren.
Mitlerweile habe ich das aber schon so oft auf anderen Maschinen gemacht, das ich fast so überheblich bin zu glauben, eigentlich keinen Fehler zu machen...aber naja ..muß ja was falsch sein.

Fehlermeldung

::running hook [zfs]
The ZFS modules are not loaded.
[rootfs ]# 

Wenn ich das System über die Archiso ganz normal bspw. mit ext4 installiere und das ZFS gerödel im Nachhinein mache,
bekomme ich keine Probleme und die Pools werden auch beim Systemstart geladen.
Nur wenn ich das System direkt auf zfs root installiere, bekomme ich den Fehler.
Also kann es meiner Meinung nach nicht an einer fehlerhaften Installation der zfs Module liegen.
Das sieht eher danach aus, als wenn der Ort mit den Modulen vielleicht beim Start nicht verfügbar ist, wenn davon gebootet werden soll.
hmm. keine Ahnung...Spekulationen...

Das System ist ein AMD Threadripper, 32GB RAM, SSD A für Arch, SSD B für Windows, nvme raid0 für VMs.

Hat einer von euch hier schon eine vorab Ahnung, vielleicht weil er das schon genauso hatte, anderenfalls liefere ich natürlich sehr gerne
alle weiteren Informationen, bevor hier  Sprüche mit Hellseher-kugeln kommen.

Die Anleitung von mir kopiere ich  zum Überfliegen unten rein.
Würd mich über Hilfe freuen, komme mit den Arch Wiki Seiten aktuell nicht mehr weiter.



 
Anleitung
 
GPT Partitionstabelle                  Mountpunkt
/dev/sda1 fat32   UEFI ESP            /boot/     # benutze aber die Windows UEFI Partition
/dev/sda2 ext4    Rescue              /rescue     # später für rescue und backup system mit clonezilla
/dev/sda3 zfs     ZFS                  

Windows_UEFI=ata-Samsung_SSD_850_EVO_500GB_S21JNXAGB09833X-part2

zpool create -o ashift=12 \
      -O atime=off -O canmount=off -O compression=lz4 -O normalization=formD \
      -O mountpoint=/pool -R /mnt \
      rpool /dev/disk/by-id/ata-Samsung_SSD_850_EVO_500GB_S21JNXAGB09824D-part3 -f
      
      
zfs create -o mountpoint=/ rpool/root
zfs create -o setuid=off -o mountpoint=/home rpool/home
zfs create -o mountpoint=/var/cache/pacman/pkg rpool/pkg
zfs create -o mountpoint=/var/log   rpool/log

zfs create -V 32G -b $(getconf PAGESIZE) \
              -o logbias=throughput -o sync=always\
              -o primarycache=metadata \
              -o com.sun:auto-snapshot=false rpool/swap

mkswap -f /dev/zvol/rpool/swap

zpool status
zfs list
df

zpool export rpool
zpool import -R /mnt rpool

swapon /dev/zvol/rpool/swap
              
df
-------------------------------------

mkdir /mnt/boot
mount /dev/sdb2 /mnt/boot    # hier muss das Windows ESP (efi) gemountet werden.


-------------------------------------

pacstrap  /mnt git sudo base base-devel bash-completion dosfstools efibootmgr nano linux-headers networkmanager acpid cronie openssh zsh cifs-utils gdisk

genfstab -U /mnt >> /mnt/etc/fstab

# alles raus bis auf efi und swap
nano -w /mnt/etc/fstab   

# /dev/zvol/<pool>/swap none swap discard 0 0

--------------------------------------

arch-chroot /mnt

echo LANG=de_DE.UTF-8 > /etc/locale.conf
echo LC_COLLATE=C >> /etc/locale.conf
echo LANGUAGE=de_DE >> /etc/locale.conf
echo KEYMAP=de-latin1 > /etc/vconsole.conf 
echo FONT=lat9w-16 >> /etc/vconsole.conf 
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime 
sed -i "/#en_US.UTF-8 UTF-8/c\en_US.UTF-8 UTF-8"  /etc/locale.gen
sed -i "/#de_DE.UTF-8 UTF-8/c\de_DE.UTF-8 UTF-8"  /etc/locale.gen
locale-gen 

sed -i 's/#\(PermitRootLogin \).\+/\1yes/' /etc/ssh/sshd_config
sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist
sed -i 's/#\(Storage=\)auto/\1volatile/' /etc/systemd/journald.conf

echo "zero" > /etc/hostname
echo "127.0.0.1          localhost
127.0.1.1          zero
::1                zero" >> /etc/hosts

#USER
# root
echo root:myPassword | chpasswd
usermod -s /usr/bin/zsh root
cp -aT /etc/skel/ /root/
#chmod 700 /root

# tom
! id tom && useradd -m -p "" -g users -G "adm,audio,floppy,log,network,rfkill,scanner,storage,optical,power,wheel" -s /bin/zsh tom
chown -R tom:users /home/tom
echo tom:myPassword | chpasswd
usermod -s /usr/bin/zsh tom
echo "tom ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/tom

sed -i '/#MAKEFLAGS=\"-j2\"/c\MAKEFLAGS=\"-j13\"' /etc/makepkg.conf

su tom
cd
pwd
mkdir .AUR
cd .AUR
git clone https://aur.archlinux.org/zfs-utils.git
git clone https://aur.archlinux.org/zfs-dkms.git
cd zfs-utils
makepkg -rsi --skippgp

cd ..

cd zfs-dkms
makepkg -rsi --skippgp

--> neues Terminal öffnen
sudo su
zpool set cachefile=/etc/zfs/zpool.cache rpool
cp /etc/zfs/zpool.cache /mnt/etc/zfs/
--> Terminal schließen

systemctl enable zfs.target zfs-mount.service acpid.service cronie.service NetworkManager

nano -w /etc/mkinitcpio.conf
...block keymap keyboard zfs filesystems

mkinitcpio -p linux


# systemd boot
# https://wiki.archlinux.de/title/Systemd-boot

bootctl install

echo "timeout 3
default arch" > /boot/loader/loader.conf

echo "title          Arch Linux on ZFS
linux          /vmlinuz-linux
initrd         /initramfs-linux.img
options        zfs=rpool/root rw" > /boot/loader/entries/arch.conf

exit
umount -R /mnt
zfs umount -a
zpool export rpool


# reboot
# bootctl remove # deinstalliert systemdboot
# 
# # efibootmgr -c -d /dev/sdX -p Y -l "\EFI\systemd\systemd-bootx64.efi" -L "Linux Boot Manager"

Beitrag geändert von taumeister (05.08.2019 15:35:53)

Offline

#2 25.07.2019 16:31:31

schard
Moderator

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Ist zfs in den MODULES der /etc/mkinitcpio drin?

Offline

#3 25.07.2019 16:45:01

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Hi,
nein, nur in den HOOKS.
Hab ich bisher nie dort reingeschrieben.
Werde es aber sofort testen.

Sekunde

Offline

#4 25.07.2019 16:50:49

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Interessant..nach dem Eintrag von ZFS in den Modules und einem mkinicpio...hat sich die Fehlermeldung geändert.

cannot open rpool: no such pool
/init: line 51: die: not found
cannot open 'rpool/root': dataset does not exist

Offline

#5 25.07.2019 16:57:58

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Hab jetzt nochmal mit meiner Archiso gebootet, mir den Pool angeschaut.
Finde einfach nichts falsches.
Die Datasets sind natürlich vorhanden.

zfs list -t all
NAME         USED  AVAIL     REFER  MOUNTPOINT
rpool       35,5G   402G       96K  /mnt/pool
rpool/home   107M   402G      107M  /mnt/home
rpool/log    152K   402G      152K  /mnt/var/log
rpool/pkg    380M   402G      380M  /mnt/var/cache/pacman/pkg
rpool/root  1020M   402G     1020M  /mnt
rpool/swap  34,0G   436G       56K  -

Offline

#6 25.07.2019 23:46:23

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Update - nicht zu glauben.

Ich hab mir aus der Firma ein Notebook geschnappt - HP ProBook irgendwas.
Nach meiner Anleitung installiert.
Hat sofort gebootet.
Pool wurde gefunden..alles gut.

Habe die Installation dann jetzt NOCHMAL auf meinem PC durchgeführt,
die selbe Fehlermeldung.
What?

Hat nicht jemand noch einen Schimmer was das sein könnte?

Offline

#7 26.07.2019 09:15:13

schard
Moderator

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Nein. Nicht ohne dass du uns die relevanten Konfigurationen beider Systeme zeigst und wir diese vergleichen können.

Offline

#8 26.07.2019 09:54:09

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Tja ..was könnten diese Informationen sein?
Wie ich schon geschrieben habe, mein PC ist ein AMD, SSD Festplatten, das Laptop, oder die Laptops sind Intel CPUs mit SSD.
Was sind denn für dich relevante Konfigurationen?

Offline

#9 26.07.2019 10:11:42

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Habe gerade mal eine andere Tastatur angeschlossen...
Nachdem ich im prompt lande mit der Meldung ZFS modules not loaded...

konnte ich ohne Problem ein
modprobe zfs machen und dann den pool nach belieben importieren und exportieren.
Kann es irgendwie sein, dass der PC zu schnell bootet und dann irgendwas noch nicht verfügbar ist?

Offline

#10 26.07.2019 10:38:55

schard
Moderator

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Zeig die /etc/mkinitcpio.conf beider Systeme und die Booloader/-manager Konfigurationen beider Systeme.
Dann sehen wir weiter.

Offline

#11 26.07.2019 11:50:45

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

du das ist sehr schnell abzukürzen, da ich die Bootloader Konfiguration selber erstelle, ist sie wie oben in meiner Anleigung beschrieben - auf beiden Systemen gleich.
Mitlerweile habe ich das ROOT Dataset etwas angepasst, es ist jetzt so wie in gängigen Anleitungen.
Vorher hatte ich für root einfach rpool/root.
Aber das hat nichts geändert.
Bei meiner AMD Kiste habe ich noch amd-ucode.img installiert und angepasst. Aber hat natürlich auch nichts geändert.


Die mkinitcpio.conf

HOOKS=(base udev autodetect modconf block keymap keyboard zfs filesystems)

Keine weitere Konfiguration in der mkinitcpio.conf, auch keine zfs in den MODULES.

Bootloader Konfiguration mit bootctl install ( dev/sda1 mountet nach /boot )

echo "timeout 3
default arch" > /boot/loader/loader.conf

echo "title          Arch Linux on ZFS
linux          /vmlinuz-linux
initrd         /amd-ucode.img
initrd         /initramfs-linux.img
options        zfs=rpool/ROOT/arch rw" > /boot/loader/entries/arch.conf

Die Konfiguration läuft auf anderen Maschinen super, habe es jetzt mehrfach getestet.

Bringt uns nicht weiter, oder?

Offline

#12 26.07.2019 18:34:00

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

So jetzt wirds verrückt, ich glaube langsam an eine Art AMD ZFS Bug.

1.) Vorab, es läuft im Fallback Modus ohne Probleme.
2.) Die nur im Fallback Modus laufende PC-Festplatte habe ich in das Notebook gebaut. Hat sofort ohne Probleme gebootet, auch den normalen Eintrag.
3.) Die voll funktionierende Notebook Festplatte habe ich in den PC gebaut und auch hier funktioniert nur der Fallback Modus.

FAZIT : Auf meinem PC gibts ZFS nur im Fallback Modus.
Was ist in diesem Modus anders, könnte man mit der Information an die Lösung kommen?

EDIT

Wenn ich das hier so richtig lese auf unix.stackexchange.com

The fallback image utilizes the same configuration file as the default image, except the autodetect hook is skipped during creation, thus including a full range of modules. The autodetect hook detects required modules and tailors the image for specific hardware, shrinking the initramfs.

Bedeutet für mich, in der fallback-initramfs sind mehr Module drin, wahrscheinlich auch das zfs Modul.
In sofern ist die Fehlermeldung wohl irgendwie richtig, das in der normalen initramfs das Modul fehlt,
ABER warum bootet die Platte ohne Probleme in meinem Notebook

Beitrag geändert von taumeister (26.07.2019 19:21:36)

Offline

#13 27.07.2019 10:58:00

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Also.

Aktuell bekomme ich es nicht anders hin, als den Fallback Modus als normalen Modus zu starten.
Damit ist alles gut.
Wenn keiner einen weiteren Hinweis geben kann oder eine Idee dazu hat, kann das Thema geschlossen werden.

Offline

#14 29.07.2019 13:23:34

schard
Moderator

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Was passiert, wenn du den autodetect Hook entfernst?

Offline

#15 29.07.2019 14:23:44

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Gute Idee, bootet sofort und ohne Probleme.

Autodetect ...kaputt irgendwie?

Beitrag geändert von taumeister (29.07.2019 14:24:11)

Offline

#16 05.08.2019 15:35:32

taumeister
Mitglied

Re: [gelöst] Arch on ZFS Root | modules are not loaded

Die  Lösung ist also für mich autodetect aus der mkinitcpio.conf raus  zu schmeißen.

Offline

Schnellantwort auf dieses Thema

Schreibe deinen Beitrag und versende ihn
Deine Antwort

Fußzeile des Forums