我有一个新的 PCI 无线网卡,D-Link DW-525。现在我没有遇到任何问题,因为它运行的是免费驱动程序。使用命令sudo lspci-v 它返回这个:
01:05.0 网络控制器:Ralink corp. RT5360 无线 802.11n 1T/1R
子系统:D-Link System Inc DWA-525 无线 N 150 桌面适配器(rev.A2)
标志:总线主控、慢速设备、延迟 32、IRQ 20
位于 fea00000 的内存(32 位,不可预取)[大小=64K]
功能:[40] 电源管理版本 3
正在使用的内核驱动程序:rt2800pci
但我想知道我是否可以运行官方驱动程序。所以我在 d-link 网站上下载了此卡的驱动程序这是链接
我发现我必须编译这个东西;自述文件告诉我以下说明:
1> $tar -xvzf DPB_RT2860_Linux_STA_x.xxxtgz 进入“./DPB_RT2860_Linux_STA_x.xxx”目录。
2> 在 Makefile 中
在 Makefile 中设置“MODE = STA”,并通过设置“TARGET = LINUX”将 TARGET 选择为 Linux,定义 linux 内核源包含文件路径 LINUX_SRC 进行修改以满足您的需要。
3> 在 os/linux/config.mk 中
定义目标机器的 GCC 和 LD
定义编译器标志 CFLAGS 并修改以满足您的需要。
** 为由 NetworkManager 或 wpa_supplicant wext 函数控制而构建 请设置“HAS_WPA_SUPPLICANT=y”和“HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y”。 => #>cd wpa_supplicant-xx => #>./wpa_supplicant -Dwext -ira0 -c wpa_supplicant.conf -d ** 为由带有 Ralink 驱动程序的 WpaSupplicant 控制而构建 请设置“HAS_WPA_SUPPLICANT=y”和“HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n”。 => #>cd wpa_supplicant-0.5.7 => #>./wpa_supplicant -Dralink -ira0 -c wpa_supplicant.conf -d
4> $make
# 编译驱动程序源代码 # 修复“错误:函数 ¡¥iwe_stream_add_event 的参数太少” => $patch -i os/linux/sta_ioctl.c.patch os/linux/sta_ioctl.c5> $cp RT2860STA.dat /etc/Wireless/RT2860STA/RT2860STA.dat
6> 加载驱动程序 #[内核 2.4] # $/sbin/insmod rt2860sta.o # $/sbin/ifconfig ra0 inet YOUR_IP up
#[内核 2.6] # $/sbin/insmod rt2860sta.ko # $/sbin/ifconfig ra0 inet YOUR_IP up
7> 卸载驱动程序
$/sbin/ifconfig ra0 down $/sbin/rmmod rt2860sta
从第 2 步开始我几乎就瘦了 :P
那么,所有这些都是必要的吗,对于 makefile 和其他东西来说,或者我应该保持免费驱动程序原样?
哦,顺便说一下,我的内核是 3.15.10 :P
其他选择是使用ndiswrapper但我不确定,因为我对这方面的了解不是太深,我可能会把一切都搞砸。希望你们能帮助我,男孩女孩们 :D
答案1
该答案根据 chili555 和其他用户的评论汇编而成
您的 wifi 卡的“免费”驱动程序是rt2800pci
系统现在正在使用的驱动程序。您从 D-Link 站点看到的驱动程序实际上来自芯片制造商 Realtek,在 D-Link 站点上绝不是“官方”的。
此外,包括 Ubuntu 在内的所有 Linux 系统都使用 Realtek 的驱动程序。只要一切正常,就无需尝试其他通用的驱动程序。