之前为了使用 BBR,将 NAS 的 kernel 从 4.4 升级到了 4.13,因为 Ubuntu 16.04 LTS 的 zfs 版本是 0.6.5,不支持 4.13 kernel,所以用一个 ppa 源将 zfs 升级到了 0.7.6。但是重启之后,发现 zed 这个 Daemon CPU 占用率长期保持 100%,尝试 zpool upgrade -a
来启用新特性,也报了错误。
网上对这个现象的描述有很多。似乎 N 久之前有个版本 bug,会造成类似的情况。尝试更新 zfs,仍然没有恢复正常。
后来看到一篇文章说,如果 zfsutils-linux
的版本和 Kernel Module 的版本不一致,可能会造成此类问题。modinfo zfs
,发现版本还是 0.6.5。于是按照 github 上 zfsonlinux 项目的 wiki,Custom Packages 这块讲了如何编译安装。通过这个,将 Kernel Module 更新到了 0.7.6,重启后问题消失。