Kali Linux ——在无网络情况下安装无线网卡驱动
1、背景
我最近开始学习Kali Linux,但遇到了一个问题:安装完成后系统没有无线网卡驱动,这给我带来了困扰。在校园网中,需要使用认证客户端才能连接有线网络,而认证客户端只有Windows版本,这导致我无法连接无线网络和有线网络,非常尴尬。为了解决这个问题,我浏览了许多博客,虽然没有直接解决问题,但给了我一些启发。最终,我找到了一条相对简单的解决方法。在这里,我将分享我解决问题的过程,希望对需要帮助的读者有所帮助。
2、操作环境
我的电脑是联想ThinkPad E431,无线网卡型号是Broadcom 802.11n,使用的是Kali Linux 2018.3a amd64版本,Linux内核版本是4.15.0-kali2-amd64。虽然配置可能不同,但本文提供的方法具有一般性,相信可以给你一些启发。
3、原理
废话不多说,让我们谈谈我的想法。这个方法是根据"有线网络环境下安装无线驱动"的情况进行改编的。我阅读了许多博客后发现,安装无线网卡大多可以分为两个步骤:
- 安装核心头文件
- 安装无线网卡驱动
4、过程
原文中使用apt-get直接安装,但我们没有网络环境。然而,我想到了一个思路:通过apt-get安装本质上是从软件源的网站下载文件。既然如此,为什么我们不直接从源网站下载所需的文件呢?于是,我访问了中科大的Kali镜像站,发现可以直接下载文件。
然而,我们仍然面临两个问题:
- 下载什么文件?
- 文件应该下载到哪个目录?
接下来,我将逐一解决这两个问题。
5、下载文件
1)内核头文件
在终端执行命令:uname -r
,得到内核版本为:4.15.0-kali2-amd64。记住这个版本号,这将是我们要下载的内核头文件版本。
2)网卡驱动
在终端执行命令:lspci | grep -i net
,得到两行信息,第一行是你的有线网卡,第二行是我们需要的无线网卡。同样记住这个无线网卡的型号。
3)前置驱动dkms、kbuild和debhelper
这些没有特别的要求,将在下一节讲解如何下载。
6、下载文件
为了方便阅读,需要下载的文件都将用绿底粗体标注出来。在这一点上,我借鉴了"从ISO镜像安装"的思路。尽管原文是针对Ubuntu系统的,他们的ISO镜像中集成了大量资源,而我们的Kali没有。但是,原文中列出的Linux镜像中存放文件的规律在镜像站同样适用。因此,我成功地从网站上找到了所需的文件。
根据上文所示,要找到的文件有三种:
- 内核头文件(以4.15.0-kali2-amd64的内核版本为例)
路径:
/pool/main/l/linux/
需要的文件:linux-headers-4.15.0.kali2-amd64
然而,好景不长,你可能会发现镜像站中的内核版本是4.18.0,与你的版本不同。这该怎么办呢?我没有轻率地尝试使用不同内核版本的头文件,而是选择升级Kali的内核版本。当然,这又是一个艰苦的翻阅博客的过程,其中的辛酸不足为外人道。在这里,我直接为大家提供解决方案:
在同一个目录下寻找以下文件并下载:
linux-kbuild-4.18_4.18.10-2kali1_amd64.deb
linux-compiler-gcc-7-x86 4.18.10-2kali amd64.deb
linux-headers-4.18.0-kali2-amd64_4.18.10-2kali_amd64.deb
linux-headers-4.18.0-kali2-common_4.18.10-2kali1_all.deb
linux-image-4.18.0-kali2-cloud-amd64_4.18.10-2kali1_amd64.deb
linux-image-4.18.0-kali2-rt-amd64_4.18.10-2kali1_amd64.deb
linux-image-4.18.0-kali2-amd64_4.18.10-2kali1_amd64.deb
这些文件基本上包含了安装新内核及其头文件所需的所有文件。但根据具体情况,可能仍然会有一些依赖缺失。如果遇到这种情况,建议在该目录下继续寻找,或联系博主以获取帮助。
2)网卡驱动
路径:/pool/non-free/b/broadcom-sta
文件:`broadcom-sta-dkms_驱动版本号.deb