在发现 OpenZFS 当前没有适用于最新 5.12 版 Fedora 33 的yum update
.
我用了浩二与搜索词核心下载并安装必要的依赖项以恢复到最新的 5.11 内核,重新启动并重建 ZFS,不会出现任何问题。
但是,当从较新的内核中删除软件包时,我发现仅kernel-headers
for5.12.9-200
仍然安装(kernel-headers-5.12.9-200.fc33.x86_64
特别是)。
然后我意识到 Koji 为我选择的软件包列出的软件包5.11不包括kernel-headers
并且我在重建 ZFS 之前忽略了恢复它。
一切似乎都运行正常,但我是否无意中将我的系统或 ZFS 置于危险的未定义状态?
包annobin
、、、boost-devel
全靠perl-ExtUtils-CBuilder
也是我最担心zfs
的。kernel headers
zfs
我计划安装正确的内核头文件并重建这些软件包,但想先在这里征求建议。
另外,为什么kernel-headers
Koji 页面上没有列出已选择核心?由于标头并不总是跟踪实际的内核版本,因此我必须手动找到 5.11 的最后一个版本,即5.11.20-200。如果 Koji 直接将此信息与其他内核包链接起来,我会更愿意,因为手动跟踪它可能会出错。
答案1
你没有误会kernel-headers
吧kernel-devel
?
kernel-headers
是单例的,只能安装一个版本。如果你打算编译任何东西,你必须有一个,因为它是 的要求glibc-devel
,这是 的要求gcc
。它定义了/usr/include
.尝试这个命令:rpm -ql kernel-headers
另一方面,kernel-devel
像 一样kernel
,可能安装了许多版本,并且需要编译内核模块,就像dkms
s 和kmod
s 一样。并且生成的模块只能在具有完全相同版本的内核中运行。
顺便说一句,没有必要有一个dkms
特定于任何内核的 ZFS。与 不同的是kmod
,dkms
为每个内核编译一个新版本。特别是,由于编译器不兼容,我无法升级我的 zfs utils
,dkms
某些升级到fc34
.我很幸运,这些不兼容性只影响用户态实用程序,而不影响内核编译 ( ),而且我很长一段时间dkms
一直使用相同的 dkm 。fc33
通常我倾向于直接从 github 关注 ZFS master。