我在 Ubuntu 16.04 lts 服务器上使用 make localmodconfig 构建自定义 Ubuntu 内核,并安装 zfs 和挂载 zfs 池。
make localmodconfig
using config: '.config'
zfs config not found!!
rdma_cm config not found!!
znvpair config not found!!
zavl config not found!!
spl config not found!!
zunicode config not found!!
zcommon config not found!!
因此,当我在重启并构建内核系统后收到 zfs mount 失败的报告时,我并不感到惊讶。
modprobe: FATAL: Module zfs not found in directory /lib/modules/4.4.8-passthrough
.config 文件和 make menuconfig 中没有与 ZFS 相关的选项。我可以在哪里获取 zfs、rdma_cm、znvpair、zavl、spl、zunicode、zcommon 的遗漏配置,或者我应该使用什么技巧来构建带有 ZFS 的内核?
提前致谢。伊戈尔。
答案1
我建议如下:
安装必要的工具和依赖项:
sudo apt-get install build-essential git
sudo apt-get build-dep linux-image-$(uname -r)
克隆 Xenial Ubuntu Linux 4.4 内核:
git clone https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/xenial
并构建内核:
cd xenial
sudo apt-get install kernel-wedge
fakeroot debian/rules clean
sudo apt-get install libssl-dev ncurses-dev xz-utils kernel-package
debian/rules build
faketroot debian/rules binary-headers binary-generic
最后你应该会得到必要的 Linux 镜像和头文件