在Debian13上部署ZFS
在Debian13上部署ZFS
前置条件
amd64服务器,debian13操作系统,cockpit面板,git,良好的网络环境
添加非自由软件源
sudo nano /etc/apt/sources.list 配置debian软件源,确保每一条都有 non-free-firmware contrib non-free标签。

安装Linux头文件
本地编译zfs模块的前提。安装后每次更新系统内核时会自动重新编译zfs模块。
sudo apt install linux-headers-amd64
编译并安装zfs模块
执行以下命令,apt会自动编译并安装zfs模块。期间会提示zfs的软件协议与Linux不兼容,同意即可。
sudo apt install -y zfs-dkms zfsutils-linux
若因未安装头文件编译失败,在安装头文件后执行以补充编译:
sudo dkms autoinstall
安装cockpit zfs插件
git clone https://github.com/optimans/cockpit-zfs-manager.git
sudo cp -r cockpit-zfs-manager/zfs /usr/share/cockpit
执行后刷新cockpit页面,即可见

接下来即可使用插件傻瓜式地管理zfs存储池。
另外建议在安装此插件前先安装文件共享插件,以支持在zfs插件里一键启用存储池的smb共享功能。
smb插件默认在以下脚本的cockpit部分中预装:
bash <(wget -qO- https://gitee.com/kekylin/debnas/raw/main/install.sh) -s gitee@main
设置zfs arc缓存大小上限
zfs依赖内存缓存提升性能,默认会在io压力大时占用大量内存,因此需要手动对其进行限制。系统内存<=32gb时不建议超过10G。
修改配置文件
编辑zfs模块配置文件
sudo nano /etc/modprobe.d/zfs.conf
写入限制参数
将以下内容加入文件(单位为字节,例如8GB = 8 * 1024 * 1024 * 1024):
# 设置 ARC 最小 1GB,最大 8GB
options zfs zfs_arc_min=1073741824
options zfs zfs_arc_max=8589934592
更新 initramfs 并重启
sudo update-initramfs -u
sudo reboot
许可协议:
CC BY 4.0