在 Redhat 7.9 中安装 TP-Link AC1300 时遇到问题

在 Redhat 7.9 中安装 TP-Link AC1300 时遇到问题

我在 Red Hat 中安装 TP-Link AC1300 dongle 的驱动程序时遇到问题。
我跟着Ubuntu 的程序,最终成功了。
一直尝试在Red Hat中遵循相同的步骤,但无济于事。

  1. 不知道如何确定要在 Linux 上安装的驱动程序。官方网站没有提到Linux支持驱动程序页面
  2. 根据谷歌上的跟踪,我必须假设它是 Realtek 驱动程序。可能, 也许
  3. 尝试了我理解需要完成的程序:
    • 克隆源代码
    • 添加与 dkms 的符号链接
    • 使用 dkms 安装模块

我无法通过第三个项目 - 使用 dkms 安装模块。
尝试过(使用(此源代码)2sudo dkms install -m 8812au -v 4.2.2
得到

Error! Your kernel headers for kernel 3.10.0-1160.el7.x86_64 cannot be found at /lib/modules/3.10.0-1160.el7.x86_64/build or /lib/modules/3.10.0-1160.el7.x86_64/source.
Please install the linux-headers-3.10.0-1160.el7.x86_64 package or use the --kernelsourcedir option to tell DKMS where it's located.

install.sh源代码文件夹中有一个。运行它给出

make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/3.10.0-1160.el7.x86_64/build M=/home/qa_user/avraham/rtl8812au  modules
make: *** /lib/modules/3.10.0-1160.el7.x86_64/build: No such file or directory.  Stop.
make: *** [modules] Error 2

如果我尝试查看 处的内容/lib/modules/3.10.0-1160.el7.x86_64/build,我会发现它是一个链接,指向/usr/src/kernels/3.10.0-1160.49.1.el7.x86_64。这次使用 --kernelsourcedir 再次尝试 dkms install 到上面的链接,例如
sudo dkms install -m 8812au -v 4.2.2 --kernelsourcedir /usr/src/kernels/3.10.0-1160.49.1.el7.x86_64

Building module:
cleaning build area...
'make' all KVER=3.10.0-1160.el7.x86_64...(bad exit status: 2)
Error! Bad return status for module build on kernel: 3.10.0-1160.el7.x86_64 (x86_64)
Consult /var/lib/dkms/8812au/4.2.2/build/make.log for more information.

查看日志给出

DKMS make.log for 8812au-4.2.2 for kernel 3.10.0-1160.el7.x86_64 (x86_64)
Wed Dec  8 16:19:11 EST 2021
make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/3.10.0-1160.el7.x86_64/build M=/var/lib/dkms/8812au/4.2.2/build  modules
make: *** /lib/modules/3.10.0-1160.el7.x86_64/build: No such file or directory.  Stop.
make: *** [modules] Error 2

这是我一开始遇到的错误,这意味着......我被困住了。


更新(1):

遵循@GracefulRestart 建议。尝试为我的 Linux 内核版本安装内核头文件。

我的 Linux 内核版本(hostnamectl 输出):Kernel: Linux 3.10.0-1160.el7.x86_64

sudo yum install -y kernel-headers-3.10.0-1160.el7.x86_64.rpm。收到消息

warning: /var/tmp/rpm-tmp.GncnUX: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
    package kernel-headers-3.10.0-1160.49.1.el7.x86_64 (which is newer than kernel-headers-3.10.0-1160.el7.x86_64) is already installed
    file /usr/include/linux/version.h from install of kernel-headers-3.10.0-1160.el7.x86_64 conflicts with file from package kernel-headers-3.10.0-1160.49.1.el7.x86_64

然后我删除了内核版本 49。

目前我只有看起来正确的内核头:仅
rpm -qa kernel
返回。kernel-3.10.0-1160.el7.x86_64

正如所指出的@Natolio,我应该逃跑rpm -qa kernel-headers
完成了,结果是kernel-headers-3.10.0-1160.el7.x86_64


更新(2)

转到 /usr/src/kernels/3.10.0-1160.el7.x86_64 并尝试make在那里运行。
得到

make[1]: *** No rule to make target arch/x86/syscalls/syscall_32.tbl', needed by arch/x86/syscalls/../include/generated/uapi/asm/unistd_32.h'.  Stop.
make: *** [archheaders] Error 2

更新(3)

运行lsusb我发现我正在尝试(我不知道如何确定匹配的驱动程序!)错误的驱动程序源代码。我已将加密狗连接到计算机,并且 lsusb 显示TP-Link Archer T3U [\[Realtek RTL8812BU\]][5]。但是按照源代码说明进行安装或按照我最初使用的过程进行操作dkms- 结果是相同的。


我如何在这里找到安慰?

相关内容