刘荣星的博客

  • 留言
  • About
一个关注Linux/BSD运维等相关知识的博客
  1. 首页
  2. Linux
  3. 正文

在 debian-7.7.0 编译 Realtek RTL8188CUS USB 无线网卡驱动

2014-12-21 12892点热度 0人点赞 0条评论

前几天因FreeBSD10.0在我的笔记本上接投影无法双屏,然后新安装了 Linux mint 17 一切的完美,非常不错的一个发行版。完美支持 X61s 的多功能键,休眠,我想要的双屏也支持。唯一就是我的网件(Netgear)WNA1000M 150M迷你USB无线网卡无法驱动,通过 lsusb 命令可查看到这块网卡所用芯片为 Realtek RTL8188CUS。说明内核可以认这块网卡,Google 之发现问题是内核自带的驱动不正常,原因是内核太新了,Realtek 官方的驱动源代码 (Version 4.0.2_9000) 只支持 Linux Kernel 2.6.18~3.9,而这个系统使用的内核如下:

3.13.0-42-generic
lsusb
Bus 004 Device 004: ID 0846:9041 NetGear, Inc. WNA1000M 802.11bgn [Realtek RTL8188CUS]

按照 http://blog.chinaunix.net/uid-22883023-id-4392914.html 这篇博文的方法编译也无效,系统启动的时候报:

dmesg | grep 8192

8192cu module verification failed signature and/or required key missing - tainting kernel

折腾几个小时后,决定装个 ubuntu-14.04.1 这个内核正好是上面博文中讲到的 3.13.0-32-generic。可是当我装好正常编译后,也同样遇到上面这个问题,不过这是我这么多年再次装 Ubuntu 字体显示效果比 xfce4 好太太妈多了,都不舍得换其它发行版系统鸟。

再次想找个内核版本旧一点的系统,这次必须拿出 Debian 这个号称最稳定的版本了。下载 debian-7.7.0-amd64-xfce-CD-1.iso ,量产 U 盘一气呵成。安装的过程中最好插上网线联上网,因为我是要安装 xfce 桌面环境,这样在安装的过程中会安装最新的软件,以及字体,还有一些驱动。

安装好之后首先查看内核版本是多少(其实下载 iso 镜像的时候我就查过了在 2.6.18~3.9 之内,就是怕安装的过程中更新了内核)。

javasboy:~$ uname -a
Linux javasboy 3.2.0-4-amd64 #1 SMP Debian 3.2.63-2+deb7u2 x86_64 GNU/Linux

很好,内核版本为 3.2.0-4-amd64,这次我是到 Realtek 官网下载的RTL8188CUS源代码驱动。
下载地址如下:
http://www.realtek.com/downloads/downloadsView.aspx?Langid=1&PNid=48&PFid=48&Level=5&Conn=4&DownTypeID=3&GetDown=false&Downloads=true#2742
下载好的文件名为:
RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911.zip

解压、进入 RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver 目录,再把这个目录下的 rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911.tar.gz 解压。
这份驱动默认是使能了网卡节能功能,并且打开了debug信息,我对比了关闭节能功能,传输速度从 2M/s 提升到了 2.8M/s,暂时还不清楚关掉这个节能功能对笔记本有啥影响,反正我这电池只能坚持30分钟的样子,到哪都带着电源线。

补丁如下:

diff -uNr rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/include/rtw_debug.h rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911_patch2/include/rtw_debug.h
--- rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/include/rtw_debug.h   2013-09-11 11:56:55.000000000 +0800
+++ rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911_patch2/include/rtw_debug.h    2014-12-21 17:32:12.457692312 +0800
@@ -310,6 +310,7 @@
 
 #define DBG_871X_LEVEL LOG_LEVEL
 
+#undef _dbgdump
 #if     defined (_dbgdump)
         #undef DBG_871X
 //      #define DBG_871X _dbgdump
diff -uNr rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/Makefile rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911_patch2/Makefile
--- rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/Makefile      2013-09-11 11:56:55.000000000 +0800
+++ rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911_patch2/Makefile       2014-12-21 17:30:52.749296924 +0800
@@ -29,7 +29,7 @@
 CONFIG_SDIO_HCI = n
 
 CONFIG_MP_INCLUDED = n
-CONFIG_POWER_SAVING = y
+CONFIG_POWER_SAVING = n
 CONFIG_USB_AUTOSUSPEND = n
 CONFIG_HW_PWRP_DETECTION = n
 CONFIG_WIFI_TEST = n

(1) 编译准备工作:
sudo apt-get install build-essential linux-headers-3.2.0-4-amd64

(2) 进入编译目录 driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911 (其实也可以使用官方提供的 install.sh 脚本)

sudo make modules
sudo make install

(3) 编译好的 8192cu.ko 文件将会自动安装到 /lib/modules/3.2.0-4-amd64/kernel/drivers/net/wireless/ 目录下。

(4) 禁止内核默认的rtl8192cu模块加载:

sudo echo "blacklist rtl8192cu" >> /etc/modprobe.d/blacklist.conf

(5) 最后重新加载 modules

sudo depmod -a 3.2.0-4-amd64

(6) 重启动系统,进入桌面后网络连接里已经可以看到无线网卡列出的可用网络,连接家里的无线,通过台式机传送了一个1G多的电影,速度达到了2.8M/s,这样的小网卡有这个速度已经不错了。就是ping 网关的延迟有6-8 ms。

(7)

  1. 测试 USB 网卡插拔也能正常工作。
  2. 系统挂起(睡眠)后 wifi 也能正常工作。
  3. 系统休眠启动后也能正常工作。
  4. 发热也不能高,在 FreeBSD 系统下巨热。
标签: Debian Linux Ubuntu wifi 无线网卡
最后更新:2014-12-21

JavasBoy

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

最新 热点 随机
最新 热点 随机
在VMWare Workstation虚拟机里使用 yubikey Gentoo Gnome 登陆界面开启触摸板轻击 python3去除emoji表情符号 记录几个内网广播包 Linux Mint 20 gnome-terminal 使用等距更纱黑体 SC字体 FreeBSD12安装GoLand编辑器
终于开始学习Motion了 Nginx+Apache有效提高服务器负载能力-LNAMP Django APPEND_SLASH 参数自动给网址结尾加'/' Autodesk Custom Red Hat Enterprise Linux Client 5.3 x86_64 DVD 参观中国电影博物馆 trapcode's particular制作的烟雾效果欣赏
分类
  • After Effects / 20篇
  • Apple / 5篇
  • Archlinux / 4篇
  • Bash / 2篇
  • Cinema 4D / 1篇
  • Docker / 1篇
  • eMule / 2篇
  • FreeBSD / 9篇
  • Gentoo / 1篇
  • Go / 2篇
  • gpg / 1篇
  • Graphics / 15篇
  • Haproxy / 1篇
  • ingress / 1篇
  • IntelliJ_IDEA / 1篇
  • java / 2篇
  • kafka / 1篇
  • Linux / 24篇
  • MySQL / 3篇
  • Network / 4篇
  • network / 3篇
  • Nginx / 5篇
  • Perl / 4篇
  • Python / 8篇
  • Python 操作符 / 1篇
  • Python 正则 / 2篇
  • rose / 1篇
  • Script / 4篇
  • Tornado / 1篇
  • Vim / 5篇
  • 学习 / 24篇
  • 电脑 / 29篇
  • 那不勒斯 / 1篇
  • 随笔 / 45篇
标签聚合
Linux FreeBSD After Effects AE 双系统 python MAC Graphics

COPYRIGHT © 2023 刘荣星的博客. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang