最近新配了一台台式机,主要用于linux下跑实验用。买了个tplink wn823n的无线usb上网卡,谁知这个小东西却给我填了不少麻烦。该网卡使用的核心是Realtek的8192cu芯片,在linux下插入后可以用lsusb来查看。问题是这一系列的芯片都与linux内核产生冲突,换句话说,其他该厂家产品系列与所有linux kernel都会发生问题,无论distribution。去网上搜索一下会发现大量的问题探讨,众说纷纭。这里只说下我最后“妥协”的解决方案。
我一直使用Ubuntu的LTS版本,其核心并不会经常更新。目前我用3.5.0-45,而fedora会使用最新的3.12.**,所以这个解决方案不确定在新版本下是否能用。主要参考了这个解答,链接最终会转入一个法语解答,不过很好理解。
1. 打开文件加入3行屏蔽掉问题驱动:
sudo gedit /etc/modprobe.d/blacklist.conf
blacklist rtl8192cu blacklist rtl8192c_common blacklist rtlwifi
2.下载补丁包安装
https://code.google.com/p/realtek-8188cus-wireless-drivers-3444749-ubuntu-1304/
之所以最后选用这个方案,就是因为只用一个deb文件十分简洁方便。其它看到的方法过于繁琐,还经常会遇到其它潜在问题。但这里也许会遇到另一个尴尬问题,安装该补丁是针对linux内核,所欲需要以来DKMS这个软件包。当电脑无法上网时,这就又成了个死节,所以最好提前准备好这个70k左右的deb。尝试搜索dkms_2.1.1.2-2fakesync1_all.deb试试。这个软件包也许会因为不信任而阻止安装,可用sudo dpkg -i ***.deb。
3. 安装好这两个程序后,最后的步骤就是调用新包。在 /etc/modules 的最后加入8192cu
sudo gedit /etc/modules
8192cu
DONE!!
再次声明,使用此方法前最好先确定linux内核版本,因为kernel和driver的驱动版本众多,很容易遇到新的问题。
文章详细介绍了如何通过编辑modprobe.d/blacklist.conf屏蔽Realtek无线USB上网卡驱动,下载并安装补丁包,以及在/etc/modules中调用新包来解决Linux内核与Realtek 8192cu芯片驱动冲突的问题。适用于Ubuntu LTS版本用户,可能不适用于最新内核版本。
1956

被折叠的 条评论
为什么被折叠?



