Ubuntu 18.04.3 上的 Realtek RTL8723BU

Ubuntu 18.04.3 上的 Realtek RTL8723BU

我买了一台带 Realtek rtl8723bu wifi 适配器的笔记本电脑。与 Windows 相比,Wifi 运行缓慢且信号弱。我在网上搜索过,有一些解决方案可以从 github 下载驱动程序,但它们都不适合我(从第一步开始我就收到错误)。我该怎么办?非常感谢。

我已遵循以下步骤:

第一步:

sudo apt install build-essential dkms
sudo apt install git
git clone https://github.com/lwfinger/rtl8723bu.git
sudo apt install libelf-dev

第二步:

sudo -i
echo blacklist rtl8xxxu >> /etc/modprobe.d/blacklist.conf
exit

这确保了旧驱动程序不会用于我的设备。在我的情况下,有问题的驱动程序是 rtl8xxxu。所以我把它列入了黑名单。

第三步:现在我禁用了新驱动程序 makefile 中的一行,因为如果没有这个 hack,网络管理器中会显示两个无线芯片组实例

cd rtl8723bu
nano Makefile

转到第 21 行并更改此行:

EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE

要将其注释掉,就像这样:

#EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE

保存(Ctrl+o 然后按 Enter)并退出(Ctrl+x)文本编辑器。

第四步:现在构建并安装驱动程序:

source dkms.conf
sudo mkdir /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
sudo cp -r core hal include os_dep platform dkms.conf Makefile rtl8723b_fw.bin /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
sudo dkms add $PACKAGE_NAME/$PACKAGE_VERSION
sudo dkms autoinstall $PACKAGE_NAME/$PACKAGE_VERSION

第五步:最后,使用以下命令安装编译后的模块:

make
sudo make install

但我不能让 dkms 在第一步就失败。另外,我想知道这样做是否安全。

答案1

对我来说很好。没有构建错误。在虚拟机中使用 Ubuntu 18.04LTS 进行了测试。我完成了除make和之外的所有步骤make install,因为不需要 和一定不使用 DKMS 完成。

make+make install适用于手动的仅当您不使用 DKMS 时才需要安装。那么每次安装新内核时,或者新内核没有驱动程序时,您都必须执行make+ make install。这就是开发 DKMS 的原因 - 这样您就不必这样做了。使用 DKMS,一切都是自动的。

我的构建日志,没有错误:

$ sudo dkms autoinstall $PACKAGE_NAME/$PACKAGE_VERSION

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
make -j2 KERNELRELEASE=4.15.0-70-generic -C /lib/modules/4.15.0-70-generic/build M=/var/lib/dkms/rtl8723bu/4.3.6.11_12942.20141204_BTCOEX20140507-4E40/build............
cleaning build area...

DKMS: build completed.

rtl8723bu.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/4.15.0-70-generic/updates/dkms/

depmod...

DKMS: install completed.

如果确实如此make install,则必须先清理干净,然后再重试。尝试一下(将 /path/to 替换为真实路径):

cd /path/to/rtl8723bu
sudo make uninstall

然后再试一次makemake install 如果您没有做任何其他事情,那么您可能只需要第 4 步中的这两行:

source dkms.conf
sudo dkms autoinstall $PACKAGE_NAME/$PACKAGE_VERSION

相关内容