Cachy OS Server ZFS |
Created | ||
---|---|---|---|
Updated | |||
Author | Nicolas Dorriere | Reading | 3 min |
Cachy OS
CachyOS, an ArchLinux-based distribution I had encountered in Reddit discussions about the Steam Deck. To my pleasant surprise, CachyOS includes ZFS precompiled and natively integrated into the kernel, no dkms compilation required.
With just two packages, I can install ZFS.
# pacman -S linux-cachyos-zfs
# pacman -S zfs-utils
# modprobe zfs
We can see that the supported ZFS version is indeed the latest one from OpenZFS.
Ubuntu and CachyOS avoid compiling ZFS with DKMS
ZFS on Linux | |
Ubuntu | apt install zfsutils-linux |
Debian | apt install linux-headers-amd64 zfs-dkms zfs-zed zfsutils-linux |
Arch Linux | yay -S linux-lts-headers zfs-dkms zfs-utils |
Cachy OS | pacman -S linux-cachyos-zfs zfs-utils |
linux-cachyos-zfs
Installing it not only provides a functional ZFS module, but also ensures that kernel updates are held back until ZFS support is available for the new version
Storage
CachyOS offers a wide range of filesystems out of the box, including ZFS. For the root partition, I usually go with EXT4 it's fast and efficient. As for the second partition, I'll format it to host a ZFS pool.
Kernel
CachyOS also provides its own custom kernel fine-tuning, including a server-optimized version — yum-yum!
# pacman -S linux-cachyos-server linux-cachyos-server-headers
At boot time, I can choose the flavor of my kernel
ZFS support isn't always pre-built for every kernel flavor or version
The easiest way is to use the DKMS (Dynamic Kernel Module Support) package, which automatically builds the ZFS module for your kernel.
# pacman -S zfs-dkms
# modprobe zfs
Cachy OS kernel server | |
300Hz tickrate | Lower than typical desktop tickrate (usually 1000Hz), resulting in fewer interruptions, better CPU efficiency, and lower power consumption under high load. |
No preemption | Prevents the kernel from interrupting certain running tasks. This improves consistency and reduces overhead, making it ideal for long-running or high-performance processes. |
Stock EEVDF scheduler | A modern task scheduler that balances latency and throughput, managing mixed workloads more efficiently. |
Tuned for server workloads | Kernel settings are adjusted to favor throughput and stability over responsiveness (e.g., memory management, I/O scheduling, thread prioritization). |
Additional kernel fine-tunes by Cachy OS are available.
PkgName | Version | Category
---------------------------------------------------------------------------
cachyos/linux-cachyos-bmq | 6.1.30.2 | stable
cachyos/linux-cachyos-bore | 6.1.30.2 | stable
cachyos/linux-cachyos-bore | 6.1.30.2 | stable
cachyos/linux-cachyos-cacule | 6.1.30.2 | stable
cachyos/linux-cachyos-ck | 6.1.30.2 | stable
cachyos/linux-cachyos-edf | 6.1.30.2 | stable
cachyos/linux-cachyos-hardened | 6.1.30.2 | hardened-kernel
cachyos/linux-cachyos-lts | 6.1.12.0 | longterm
cachyos/linux-cachyos-rc | 6.1.30.2 | release candidate
cachyos/linux-cachyos-server | 6.1.30.2 | stable
cachyos/linux-neptune-6.5 | 6.5.0.3.1 | stable
cachyos/linux-sched-ext | 6.1.30.2.arch1-1 | stable
core/linux | 6.1.34.arch1-1 | stable
core/linux-hardened | 6.1.26.hardened1 | longterm
extra/linux-rt | 6.1.25.3.rt14-5 | hardened-kernel
extra/linux | 6.3.4.arch1-1 | stable
extra/linux-lts | 6.1.30-1 | longterm
extra/linux-zen | 6.1.32.1.zen1-1 | zen-kernel
While one might argue that CachyOS isn't traditionally considered a server-oriented distribution, this assumption deserves scrutiny.
After installing CachyOS without a desktop environment, I achieved impressive efficiency metrics: fewer than 30 running threads in htop, less than 300 MB of RAM usage, and approximately 780 installed packages. While this package count is admittedly higher than ideal, it remains acceptable. Vanilla Arch installations that typically range from ~160 packages.