记一次失败的安装tun设备过程

由于bochs, qemu想要配置网络,比较好的选择是采用tun设备,所以在网上找了一些教程。

先下载Linux的源码(apt-get install -y linux-source),由于我的内核版本是 4.15.0-70-generic, 只能下载4.15.0版本的源码。

然后按照教程把tun模块编译出来,得到tun.ko, 但是把它放到/lib/modules...相应目录下,执行depmod, modprobe都没有反应。

于是使用insmod加载,但是又提示 ‘Require key’ 具体提示忘了,这是因为Linux为了安全,一般不允许加载外部模块,需要设置一下secureboot, 重启。

这时重新insmod, 提示变成了'Invalid format', 使用dmesg命令查看问题,提示'...4.15.0 should be 4.15.70-generic', 也就是版本不匹配,但是又找不到相应版本的源码,于是只能修改下载的这份源码的版本号(modinfo tun.ko可以查看生成的这个模块的版本号信息),但是又要去哪里修改呢?

看到源码中包含了 include/generated/utsrelease.h这个头文件,而其中的内容恰好就是 #define UTS_RELEASE "4.15.0" 也就是版本号信息,这就简单了,直接改为#define UTS_RELEASE " 4.15.0-70-generic" 不就行了吗,改完之后,重新编译模块,(两个小时),拿着它去insmod,dmesg中还是'...4.15.0 should be 4.15.70-generic,也就是版本号还是4.15.0, 明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值