dkms가 커널 소스를 찾지 못합니다.

dkms가 커널 소스를 찾지 못합니다.

며칠 동안 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

여기에는 모든 것(아치, 블록, 구성, 데비안 등)이 포함되어 있습니다. 뭐야?

답변1

오랜 디버그 세션 후에 /lib/modules/2.6.32-openvz-042stab090.5-amd64에서 /usr/src 및 /usr/include에 대한 빌드 및 소스 링크가 누락되었음을 발견했습니다.

수동으로 추가했더니 제대로 작동했습니다.

최소한 소스를 살펴보고 디버그할 수 있는 Linux에서 작업할 수 있다는 사실에 모두가 행복합니다.

관련 정보