我最近在一台非常旧的 PC 上安装了 Kali Linux,由于它没有 wifi 卡,所以我买了一个 Realtek USB wifi 适配器。适配器附带一个要安装的驱动程序,我去运行“install.sh”,但它返回了两种错误:
1) 提取驱动程序时,无法将任何提取文件的所有权从“400”更改为“401” - 我猜这就像 chmod 所有权一样。
我通过删除 shell 脚本的提取部分并自行提取/修改文件来解决了这个问题。但问题 2 仍然存在:
2)无法找到目录“/lib/modules/$(uname -r)/build”
我检查了“/lib/modules/$(uname -r)”目录,其中保存了驱动程序等:“/lib/modules/$(uname -r)/kernal/drivers”,确实没有“build”目录。显然,该目录应该是“驱动程序编译时使用的内核源码路径'(取自安装 PDF)。现在,鉴于这是脚本的“make”部分,我不知道从哪里开始,因为我对驱动程序编译一无所知。我也不确定这是否是 Kali 特有的问题,但我无法在其他地方找到解决方案,手册中也没有提供任何帮助。如果有人知道在哪里'驱动程序编译时使用的内核源码路径' 在 Kali 中,或者知道如何手动编译它,或者甚至知道如何在 Kali 上安装 wifi 适配器驱动程序,我将不胜感激
http://www.cyberciti.biz/tips/build-linux-kernel-module-against-installed-kernel-source-tree.html是几个网站之一,其中提到与编译有关的事情需要如上所述的“构建”目录,并建议这样做以获取当前内核构建目录:
$ ls -d /lib/modules/$(uname -r)/build
这对我来说当然是一个问题,因为无论出于什么原因,它都不存在。我尝试过:
apt-get install linux-headers-$(name -r)
和
apt-get update && apt-get install linux-headers-$(name -r)
出现错误:
‘E: 无法找到软件包 linux-headers-3.18.0-kali3-686-pae’
和
'E: 无法通过正则表达式 linux-headers-3.18.0-kali3-686-pae 找到任何软件包'
我还使用了:
apt-get install linux-headers-generic
失败的原因如下:
‘E: 无法找到软件包 linux-headers-generic’
最后我完成了:
apt-get install build-essentials
也就是说它已经是最新版本了
我检查过:
apt-cache search linux-headers-$(name -r)
结果没有任何结果。是的,我试过重启系统。请记住,我的电脑上没有互联网——以太网或 wifi。抱歉发了这么长的帖子,我觉得我也应该列出错误。
这是我在 Stack Overflow 上提出的一个问题
它被归类为题外话,所以我在这里重新打开它