ubuntu9(bt5)下安装TP-LINK TL-WN823N无线网卡驱动(rtl8192cu芯片组)

本文详细介绍了如何在Linux系统中查看并获取无线网卡的USB ID号,根据ID号查找对应的芯片组驱动,包括从Realtek官网下载及安装rtl8192cu驱动的过程,并解决在编译过程中遇到的交叉编译工具链导致的问题。同时,提供了驱动模块添加到开机启动列表的方法,确保无线网卡在重启后能正常工作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 查看无线网卡的USB ID号
终端下输入lsusb:

thinki@G31T - M2 :~ $ lsusb
Bus 001 Device 001 : ID 1d6b : 0002 Linux Foundation 2.0 root hub
Bus 002 Device 001 : ID 1d6b : 0001 Linux Foundation 1.1 root hub
Bus 003 Device 001 : ID 1d6b : 0001 Linux Foundation 1.1 root hub
Bus 004 Device 001 : ID 1d6b : 0001 Linux Foundation 1.1 root hub
Bus 005 Device 001 : ID 1d6b : 0001 Linux Foundation 1.1 root hub
Bus 001 Device 004: ID 0bda:8178 Realtek Semiconductor Corp
Bus 002 Device 002 : ID 0e8f : 0022 GreenAsia Inc
Bus 004 Device 002 : ID 046d : c52f Logitech , Inc . Wireless Mouse M305

红色粗体字即为USB网卡的ID号
2 根据USB ID号查找芯片组驱动
在google上搜索0bda 8178ID号,即可以发现该序列号对应的是Realtek的RTL8192CU芯片组,最后一个“U”指的即是USB接口。在Realtek官网上找到rtl8192cu驱动:
http://152.104.125.41/downloads/downloadsView.aspx?Langid=1&PNid=48&PFid=48&Level=5&Conn=4&DownTypeID=3&GetDown=false&Downloads=true#RTL8192CU,不过悲剧的是realtek的网站貌似出了问题,怎么都下载不了,后来终于在一个第三方网站找到了驱动,链接送上: http://www.strapp.co.uk/downloads/RTL819xCU_USB_linux_v3.4.3_4369.20120622.zip,还有一个稍旧一点的驱动,也送上链接: http://www.gallot.be/resources/RTL819xCU_USB_linux_v3.4.2_3727.20120404.zip,这两个都可以。
3 安装驱动
realtek rtl8192cu的驱动包里面包含了很多安装说明,这一点还是很人性化的:

document ├── HowTo_enable_driver_to_support_WIFI_certification_test.pdf ├── HowTo_enable_the_power_saving_functionality.pdf ├── HowTo_support_more_VidPids.pdf ├── linux_dhcp_server_notes.txt ├── Quick_Start_Guide_for_Bridge.pdf ├── Quick_Start_Guide_for_SoftAP.pdf ├── Quick_Start_Guide_for_Station_Mode.pdf ├── RTK_Wi-Fi_Direct_Programming_guide.pdf ├── SoftAP_Mode_features.pdf ├── Wireless_tools_porting_guide.pdf └── wpa_cli_with_wpa_supplicant.pdf

现在解压安装包:

tar xvf RTL819xCU_USB_linux_v3.4.3_4369.20120622.zip

cd driver

tar xvf rtl8188C_8192C_usb_linux_v3.4.3_4369.20120622

这里有一点需要注意的是,当你的USB插入电脑的USB接口时,对应驱动的加载与否取决于你的USB ID号,因此,对于没有在驱动中注册过相应USB ID号的网卡,我们需要人为添加USB ID号,可以参考document下的HowTo_support_more_VidPids.pdf。具体的做法是修改driver/rtl8188C_8192C_usb_linux_v3.4.3_4369.20120622/os_dep/linux/usb_intf.c,找到rtw_usb_id_tbl数组,添加对应的PID,(VID已经定为0BDA,即代表realtek),我们可以找到如下几行:

/****** 8192CUS ********/
{USB_DEVICE(USB_VENDER_ID_REALTEK, 0x8177)},//8191cu 1*2
{USB_DEVICE(USB_VENDER_ID_REALTEK, 0x8178)},//8192cu 2*2
{USB_DEVICE(USB_VENDER_ID_REALTEK, 0x817C)},//8192CE-VAU USB minCard

由于在驱动中已经添加了TL-WN727N网卡的PID号,因此我们不需要修改, 如果是新设备的话则需要在这里添加,否则USB设备将无法被linux识别!
进入驱动目录,即 driver/rtl8188C_8192C_usb_linux_v3.4.3_4369.20120622/,在终端下直接:

make
sudo make install

这里在make的过程中会出现一个error:
thinki@G31T-M2:~/rtl8188eu$ make
make ARCH=i386 CROSS_COMPILE=arm-xilinx-linux-gnueabi- -C /lib/modules/3.2.0-37-generic-pae/build M=/home/thinki/rtl8188eu  modules
make[1]: 正在进入目录 `/usr/src/linux-headers-3.2.0-37-generic-pae'
/usr/src/linux-headers-3.2.0-37-generic-pae/arch/x86/Makefile:81: stack protector enabled but no compiler support
  CC [M]  /home/thinki/rtl8188eu/core/rtw_cmd.o
Assembler messages:
Error: unknown architecture `i686'

Error: unrecognized option -march=i686
cc1: error: unrecognized command line option '-mregparm=3'
cc1: error: bad value (i686) for -march switch

make[2]: *** [/home/thinki/rtl8188eu/core/rtw_cmd.o] 错误 1
make[1]: *** [_module_/home/thinki/rtl8188eu] 错误 2
make[1]:正在离开目录 `/usr/src/linux-headers-3.2.0-37-generic-pae'
make: *** [modules] 错误 2
在网上google了好一会也没找到是什么问题,后来在国外的网站上发现了问题,原来是 我之前安装了Xilinx zynq的交叉编译工具链,在/etc/profile定义了CROSS_COMPILE宏,然后在make的时候被作为了gcc的前缀,也就是我在用交叉编译工具链编译x86的驱动,自然会报-march=i686是未识别的选项了!
make改成 make CROSS_COMPILE=     即可!
即编译安装,然后使用modprobe加载驱动:

sudo modprobe 8192cu

即可在面板上看到无线网卡被识别出来,并且能够通过Network Manager配置无线网络,如下图:
Ubuntu12.04下安装TP-LINK TL-WN727N无线网卡驱动(RTL8192CU芯片组) - 小辉辉 - 小辉辉的博客
接下来将驱动模块添加到开机启动列表即可,注意这一步需要在root用户下操作

sudo - i
echo 8192cu >> /etc/ modules

 不过经我个人验证,即使不加入开机启动列表,网卡在重启后也能正常工作。
<think>嗯,用户需要查找TP-Link无线网卡在Linux系统下的安装驱动教程。首先,我得回忆一下之前处理类似问题的经验。根据用户提供的引用内容,有几个关键点需要注意:不同的TP-Link型号可能需要不同的驱动,特别是芯片组型号不同的话,驱动可能不一样。比如引用[3]提到TP-LINK TL-WN823N使用的是Realtek的RTL8192CU芯片组,这时候需要下载对应的驱动。 接下来,用户可能不太清楚如何确定自己的网卡型号和芯片组。这时候需要指导他们使用lsusb命令来查看。例如,运行lsusb后,找到对应的TP-Link设备,后面的ID比如0bda:818b,这对应Realtek的芯片。这一步很重要,因为驱动安装方法会根据芯片组不同而变化。 然后,针对不同的芯片组安装方法也不同。比如Realtek的可能需要从GitHub克隆源码编译安装,而Mediatek的可能需要DKMS。引用[1]中提到的项目地址可能是一个资源,用户需要访问该GitHub仓库获取驱动。同时,引用[2]和[3]提到了安装完成后用ifconfig查看是否识别,这可以作为验证步骤。 另外,用户可能遇到的问题包括依赖项安装失败、编译错误或者模块加载问题。这时候需要提醒他们安装必要的构建工具和内核头文件,比如build-essential和linux-headers-generic。如果遇到问题,可能需要查看Makefile或者README中的说明,或者寻求社区支持。 还有,用户可能不太熟悉DKMS的使用,需要简要说明如何使用它来管理内核模块,这样在系统更新时驱动会自动重新编译。此外,不同的Linux发行版可能有细微差别,比如Ubuntu和Fedora的包管理器不同,但用户提到的是Ubuntu,所以可以专注于apt命令。 最后,要确保回答结构清晰,分步骤说明,并覆盖常见问题,比如驱动无法加载或者网络连接问题。同时,生成的相关问题需要覆盖用户可能进一步询问的方向,比如特定型号的安装驱动编译错误等。</think>### TP-Link无线网卡Linux驱动安装方法 根据TP-Link无线网卡型号和芯片组的不同,Linux系统下的驱动安装可分为以下步骤: #### 一、确认设备信息 1. 执行命令查看USB设备信息: ```bash lsusb | grep "TP-Link" ``` 2. 记录设备ID(如`0bda:818b`),该ID对应芯片组型号[^3] #### 二、根据芯片组选择驱动方案 **A. Realtek芯片组(常见于TL-WN823N等型号)** 1. 安装编译依赖: ```bash sudo apt install build-essential linux-headers-generic ``` 2. 克隆驱动仓库: ```bash git clone https://gitcode.com/Resource-Bundle-Collection/76a9b ``` 3. 编译安装: ```bash cd rtl8192cu-fix make && sudo make install ``` **B. Mediatek芯片组(常见于新机型)** ```bash sudo apt install git dkms git clone https://github.com/xtknight/mt7610u-linksys-ae6000-wifi-fixes sudo dkms add ./mt7610u-linksys-ae6000-wifi-fixes sudo dkms install mt7610u/1.0 ``` #### 三、验证安装结果 ```bash ifconfig -a | grep wl sudo modprobe <驱动模块名称> ``` #### 常见问题处理 1. **驱动不生效**:尝试`sudo depmod -a`更新模块依赖 2. **编译错误**:确认已安装对应内核头文件`linux-headers-$(uname -r)` 3. **网络不稳定**:调整电源管理设置: ```bash sudo sed -i &#39;s/wifi.powersave = 3/wifi.powersave = 2/&#39; /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值