何日もの間、Debian 7でZFS-on-Linuxを動作させようとしていますが、モジュールはコンパイルしたくありません。
# dpkg-reconfigure zfs-dkms
------------------------------
Deleting module version: 0.6.3
completely from the DKMS tree.
------------------------------
Done.
Loading new zfs-0.6.3 DKMS files...
Building only for 2.6.32-openvz-042stab090.5-AMD64
Module build for the currently running kernel was skipped since the
kernel source for this kernel does not seem to be installed.
もちろん、ヘッダーとソースがインストールされます。
# uname -r
2.6.32-openvz-042stab090.5-AMD64
# dpkg -l | grep 2.6.32-openvz-042stab090.5-AMD64
ii linux-headers-2.6.32-openvz-042stab090.5-AMD64 1 AMD64 Header files related to Linux kernel, specifically,
ii linux-image-2.6.32-openvz-042stab090.5-AMD64 1 AMD64 Linux kernel binary image for version 2.6.32-openvz-042stab090.5-AMD64
ii linux-source-2.6.32-openvz-042stab090.5-AMD64 1 all Linux kernel source for version 2.6.32-openvz-042stab090.5-AMD64
#
だから私はそれを手動で試しています。まだありません:
# dkms build zfs/0.6.3 -k `uname -r` --kernelsourcedir=/usr/src/linux-source-2.6.32-openvz-042stab090.5-AMD64
Error! Your kernel headers for kernel 2.6.32-openvz-042stab090.5-AMD64 cannot be found.
Please install the linux-headers-2.6.32-openvz-042stab090.5-AMD64 package,
or use the --kernelsourcedir option to tell DKMS where it's located
ls /usr/src/linux-source-2.6.32-openvz-042stab090.5-AMD64 | wc -l
90
すべてが含まれています(Arch、block、configs、debian、...)。 WTF?
デバッグセッションが長引くと、/ lib/modules /2.6.32-openvz-042stab090.5-AMD64から/ usr/srcおよび/ usr/includeへのビルドリンクとソースリンクが欠落していることがわかりました。
それらを手動で追加し、それは機能しました。
少なくともソースを調べてデバッグできるLinuxで作業できることを嬉しく思います...