Skip to main content

ZFS modules cannot be auto-loaded

ZFS-DKMS – Schritt-für-Schritt-Anleitung für Debian 13 (Trixie)

Diese Anleitung fasst die notwendigen Schritte zusammen, um OpenZFS als DKMS-Modul auf Debian 13 zu installieren, nach Kernel-Updates neu zu bauen und typische Fehler (fehlendes zfs.ko, DKMS-Build-Fehler, Secure-Boot) zu beheben.


0  Wichtig: Kernel-/ZFS-Kompatibilität

Wenn du einen Kernel verwendest, der deutlich neuer ist als der Debian-Standardkernel, kann zfs-dkms aus stable schlicht zu alt sein und der Build scheitert.

  • Debian-Standard (empfohlen): Nutze linux-image-amd64 + linux-headers-amd64. Damit passt in der Regel zfs-dkms aus stable.
  • Neuer Kernel (z.B. 6.17.x): Nutze zfs-dkms aus trixie-backports (neuere OpenZFS-Versionen enthalten die nötigen Kernel-Anpassungen).

1  Voraussetzungen & Grundlagen

  • Root-Zugriff (sudo -i oder direkt als root).
  • Netzwerkzugang zu Debian-Repos.
  • Optional (Secure Boot): Module müssen signiert sein, sonst werden sie geblockt.

2  Repositories einrichten

ZFS liegt in contrib. Stelle sicher, dass contrib (und ggf. non-free, non-free-firmware) aktiv ist.

deb https://deb.debian.org/debian trixie main contrib non-free non-free-firmware
deb https://security.debian.org/debian-security trixie-security main contrib non-free non-free-firmware
deb https://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware

Optional (nur wenn du einen neueren Kernel fährst oder neuere ZFS-Version brauchst): Backports aktivieren:

deb https://deb.debian.org/debian trixie-backports main contrib non-free non-free-firmware

Anschließend:

apt update

3  Benötigte Pakete installieren

Basis:

apt install build-essential dkms linux-headers-$(uname -r) zfs-dkms zfsutils-linux

Empfohlen für Kernel-Updates: Metapakete, damit Kernel & Header zusammen laufen:

apt install linux-image-amd64 linux-headers-amd64

Wenn DKMS über "pahole not found" stolpert: (kommt vor, leider)

apt install dwarves
Hinweis: Wenn du nicht den Debian-Kernel nutzt (Custom/extern), müssen die passenden Header/Build-Links existieren: /lib/modules/$(uname -r)/build und /lib/modules/$(uname -r)/source.

4  DKMS-Status prüfen

dkms status

5  ZFS-Modul bauen & installieren (gezielt)

Wenn du dkms autoinstall nutzt, baut DKMS alle Module (z.B. auch NVIDIA) und du bekommst am Ende nur "alles kaputt". Für ZFS ist es oft besser, gezielt das ZFS-Modul zu bauen:

ZFS_VER="$(dpkg-query -W -f='${Version}\n' zfs-dkms | sed 's/-.*//')"
dkms install -m zfs -v "$ZFS_VER" -k "$(uname -r)"

Wenn das fehlschlägt: Log ansehen: /var/lib/dkms/zfs/<version>/build/make.log


6  Modul laden & ZFS prüfen

modprobe zfs
zpool status -v

7  Spezialfall: Neuer Kernel (z.B. 6.17.x) – ZFS aus Backports

Wenn dein Kernel deutlich neuer ist als der Debian-Standardkernel, aktualisiere ZFS über Backports:

apt install -t trixie-backports zfs-dkms zfsutils-linux

Danach das ZFS-DKMS-Modul wie oben gezielt installieren (Abschnitt 5).


8  Secure-Boot-Hinweis

Bei aktiviertem Secure Boot werden unsignierte Module nicht geladen. Typische Fehlermeldungen sind z.B. Required key not available oder Key was rejected.

  • Secure Boot im UEFI deaktivieren, oder
  • MOK-Schlüssel importieren und enrollen (mokutil --import ...), dann beim nächsten Boot bestätigen.

9  Problemlösung & häufige Stolperfallen

Symptom Typische Ursache Fix
modprobe: FATAL: Module zfs not found DKMS-Build ist fehlgeschlagen, Modul wurde nie gebaut/installed dkms status prüfen, dann Log /var/lib/dkms/zfs/.../make.log
DKMS bricht mit pahole: not found ab dwarves fehlt apt install dwarves
DKMS-Build bricht bei neuem Kernel (API-Fehler) ab ZFS-Version zu alt für den Kernel ZFS aus trixie-backports installieren oder auf Debian-Standardkernel wechseln
Secure Boot blockiert Modul Modul nicht signiert / MOK nicht enrolled MOK enrollen oder Secure Boot deaktivieren

10  Schnellreferenz (TL;DR)

# Repos ok? (contrib aktiv) + update
apt update

# Basis
apt install build-essential dkms linux-headers-$(uname -r) zfs-dkms zfsutils-linux

# Optional: falls "pahole not found"
apt install dwarves

# ZFS gezielt bauen/installen
ZFS_VER="$(dpkg-query -W -f='${Version}\n' zfs-dkms | sed 's/-.*//')"
dkms install -m zfs -v "$ZFS_VER" -k "$(uname -r)"

# Laden & prüfen
modprobe zfs
zpool status -v

Stand: Februar 2026