所以我有一个 realtek usb wifi 适配器,它使用驱动程序:rtl8822bu
GitHub 网站有司机。
所以我git clone https://github.com/ulli-kroll/rtl8822bu.git
然后
cd rtl8822bu
sudo make
sudo modprobe cfg80211 # as this is what the readme said
sudo insmod rtl8822bu.ko # also from readme
最后,sudo make installfw
我确实让 Fedora 识别了 USB 设备并通过它连接到 WiFi,但每次重新启动后它都会被擦除,我必须再次执行此modprobe
操作insmod
。有没有办法让我每次启动时自动启动?
这个帖子说有一种方法可以让我“#让驱动程序在每次启动时加载”,但我不知道这是否适用于我应该将其更改为什么名称。您可以下载 git 来查看我应该使用什么名称或做什么来让它在每次启动时加载,我是 Fedora 新手,所以老实说我不知道如何执行此操作。
先谢谢大家了!
答案1
作者仅描述了附加信息。它仍然是关于构建内核外部模块,如官方所述:
从...开始:
$ make -C <path_to_kernel_src> M=$PWD
但是模块作者似乎做了一些事情来简化用户的生活,并且make
由于设置了各种变量然后使用而构建了一个简单的将那里:
all: modules modules: $(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KSRC) M=$(shell pwd) modules
该-C
选项将在具有其他目标的内核源代码/头文件 makefile 中继续。要完成安装,仍应遵循内核文档:
然后要安装刚刚构建的模块,请将目标“modules_install”添加到命令中:
$ make -C /lib/modules/`uname -r`/build M=$PWD modules_install
这就是您必须添加的内容,但它应该以 root 身份运行(或前置sudo
,或猜测目标并手动复制文件),因为只有 root 可以写入目标目标 ( /lib/modules/...
):
sudo make -C /lib/modules/`uname -r`/build M=$PWD modules_install
然后你可能还需要重建模块依赖关系(假设这里它与当前内核),再次具有 root 权限:
sudo depmod -a
USB 应该是即插即用的,所以我不确定是否需要 Reddit 建议,您可以先尝试不使用,如果需要的话添加它。
手动,如果您不想在安装后立即删除/重新插入 USB NIC,您现在可以执行以下操作:
modprobe rtl8822bu
注意:如果启用了 UEFI 安全启动,则不要指望这足够。