我试图在运行Ubuntu 12.04LTS的Linode上安装Idera(R1soft)linux代理。 该代理需要一个驱动程序,该驱动程序又需要内核头文件。 Linode使用自定义内核,但是我想要的内核头文件不在ubuntu的apt-get版本库中。
就我所知,linode跟踪主线,所以我login到linode并将我的内核从“latest”更改为静态版本,所以在未来的重新启动时它不会改变。 然后,我从kernel.org下载了这个版本的linux源代码,并把它放到/ lib / modules目录下。 我指出代理安装过程在那个目录,但它仍抱怨它找不到头。
我应该下载一个只包含头文件的包吗? 头文件是linux源文件的子文件夹吗? 我只是在我想要做的事情的基础上可怕吗?
root@li372-176:~# serverbackup-setup --get-module --kernel-dir /lib/modules/linux-3.13.7 Checking if module needs updated Checking for binary module Waiting | No binary module found Gathering kernel information Gathering kernel information complete. Creating kernel headers package Checking '/lib/modules/linux-3.13.7' for kernel headers Unable to find a '.config'. This file is required to build a kernel module Unable to find a valid source directory. Please install the kernel headers for your operating system. To install kernel headers execute: apt-get install linux-headers-`uname -r`
这已经很久了,早就解决了,但是我第一次login了很久,发现它没有答案,所以我提供了一个添加闭包。
为了在一个linode上安装r1soft内核模块或任何内核模块,你需要从它自己提供的内核引导linode,而不是共享的(默认的)pv内核。 即使你有正确的头文件,也不能加载这个模块,因为这是一个共享的内核,它位于你的linode之外。
简单的答案是使用你的软件包pipe理器来安装分发内核,重新configurationgrub指向内核,configuration你的linode的configuration文件使用pv-grub(xen)或者GRUB2(kvm)来启动,然后重启。
以下两篇文章详细介绍了如何在xen和kvm linode上进行详细说明。