OpenZFS with dkms

Hi all,

I was just wondering what your experiences have been of using ZFS on distros other than Ubuntu or proxmox etc that require kernel modules?

Specifically things like Alma Linux?

Cheers

1 Like

In the year or so that I’ve been using ZFS on Fedora there was a recurring problem of ZFS not being compatible with newer kernels. So I have to always check before updating.

And right now there’s a bug That, at least on my box, makes all newly installed kernels/initramfs unbootable.

No experience with Alma specifically, but on Pop_OS I had the module fail to build after an update once. Was a simple fix, just sudo apt purge zfs-dkms (or whatever the package name is, can’t quite recall off the top of my head) and then sudo apt install zfs-dkms.

Once I did that I rebooted and everything was back to normal.

So, it’s not usually an end of the world type deal, but it can be annoying.

On servers, I personally wouldn’t bother with anything other than Ubuntu or FreeBSD for ZFS, it’s just too much of a headache to deal with.

1 Like

I’ve got a group of Alma machines running zfs, and automatic updates returned on. I think it’s only not upgraded once on its own properly. And then it’s just dnf remove and dnf install.

If the OS is on something else, and just data on zfs, it’s great. Go for it

I use ZFS on Debian Unstable. A couple times I had to delay updating to a newer kernel because ZFS hadn’t caught up yet. Over the 8 years I’ve been using ZFS, I think I’ve only had that happen twice.

All my professional use of ZFS is on RHEL/Cent/Rocky/Alma. EL has “kABI-tracking” kmods, where there’s a script, weak-modules, that creates links in /lib/modules for other kernels if it thinks that the kmods are compatible, so you don’t need a build for every single kernel release. The OpenZFS project publishes such kmods for RHEL/Cent/Rocky/Alma, and I’ve only occasionally needed to build my own.

Patching at my workplace is mostly on designated maintenance days and non-automatic, so I’m able to test kernel pairings ahead of time while staging updates, in case an incompatible kernel has been released and the OpenZFS project have not yet published an update, or weak-modules mistakenly believes a kmod is compatible which is not (rare, but has happened). Unless whoever’s releasing your kernels is simultaneously releasing compatible ZFS they’ve checked, you have to check yourself at some point, since even DKMS may fail to build, or fail to work properly, on a new kernel, if the source code isn’t compatible.