将内核模块添加到Debian

时间:2017-02-04 11:21:44

标签: linux arm debian kernel-module

我安装了imx6-quad和Debian Jessie。以下是有关(uname -a)的完整信息:

Linux linaro-alip 4.1.15-g5599520 #1 SMP PREEMPT Sun Jan 8 13:03:20 IST 2017 armv7l GNU/Linux

我试图为CC1350 Launchpad运行tunslip应用程序,但是没有内核模块" tun"在我的操作系统中当我运行命令modprobe tun时,我给出了一个错误:

modprobe: FATAL: Module tun not found.

此时,我不知道如何将tun模块安装到我的Debian。我甚至都不知道从哪里开始。是否可以将tun模块添加到正在运行的操作系统中,还是应该从头开始编译整个内核?如果我可以添加内核模块,我怎样才能添加到运行OS?

任何帮助对我来说太宝贵了。

2 个答案:

答案 0 :(得分:1)

所以,总结一下评论中的讨论,以防其他人来这里遇到同样的问题:

不幸的是,Variscite here提供的预编译内核映像根本没有tun支持。无论是在模块中还是编译到内核中。

如果您需要tun支持,则必须自己编译内核。可以找到来源here on github

上一个答案:

由于我还不允许发表评论,请将此作为答案,但更多的是建议在哪里寻找解决方案。

以下命令为您提供了什么?

cat /boot/config-4.1.15-g5599520 | grep CONFIG_TUN

应该说CONFIG_TUN=m。如果没有,可能是您的内核已经支持tun设备。

您是否尝试在tun中搜索/lib/modules个模块?如果没有,请运行

find /lib/modules/ -name '*tun.ko*'

让我们知道它给你的东西。

答案 1 :(得分:0)

在构建内核时。有两种方法可以单独编译模块并将其安装在现有图像上。另一种是与内核一起创建tun模块,SD卡图像创建将负责您的模块。

构建tun模块。使用内核文件夹中的menuconfig。如果某个模块的值更改为CONFIG_TUN,则搜索与m匹配的内容。重新构建并再次创建SD卡。这是简单的方法。

您也可以单独使用该模块,然后将该模块带到您的文件系统,但这可能更容易出错。