SDB:ASUS WL-160N USB 无线适配器
版本: 11.1
目的
本页旨在提供如何安装和手动配置 WL-160N USB 无线网卡的指南。您将不会使用 Network Manager,但驱动程序将在启动例程中自动加载并建立连接。
情况
您已安装 OpenSuse 11.1,并且您的 WL-160N 适配器在安装或安装后未被 YAST 识别或配置。
理由
ASUS WL-160N 使用的 Ralink 2870 芯片组没有预编译的内核驱动程序,并且未被 YAST 识别。因此,必须手动设置它。
主要组件
手动设置此无线连接时使用的主要组件是
- ralink 2870 驱动程序
- wpa_supplicant
- ifup
预备知识
能够在文件管理器和终端窗口中导航。对您打算连接的无线网络的基本知识。
流程
首先,通过登录到控制台(KDE 中的“应用程序 - 系统 - 终端 - 终端程序”)并键入 lsusb 来检查适配器是否已被识别为 USB 设备。您应该会看到几行输出,类似于以下内容,但当然具体取决于您插入的实际 USB 设备。
... andrew@linux-51jg:~> lsusb Bus 002 Device 005: ID 0b05:1731 ASUSTek Computer, Inc. ASUS 802.11n Network Adapter Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 005: ID 09da:032b A4 Tech Co., Ltd Bus 001 Device 004: ID 046d:c317 Logitech, Inc. Bus 001 Device 003: ID 046d:08d7 Logitech, Inc. QuickCam Communicate STX Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub andrew@linux-51jg:~> ...
我们感兴趣的行应该如下所示
... Bus 002 Device 005: ID 0b05:1731 ASUSTek Computer, Inc. ASUS 802.11n Network Adapter ...
只要您有此行,就可以继续下一步。
驱动配置和编译
从 http://www.ralinktech.com/support.php?s=2 下载最新的 ralink 驱动程序。(随适配器附带的 CD 提供的驱动程序无法与最新的内核编译。)您正在寻找 RT2870USB 或 RT2870WebUI 驱动程序。WebUI 驱动程序还包含一个 Web 界面,用于访问适配器,但我们不会使用它。
将文件解压缩到方便的位置,并按照 README_STA 文件中的说明编译驱动程序。首先您当然需要安装内核源代码和 GCC。此外,根据 readme 的步骤三,请确保在 config.mk 文件中设置以下两个开关,然后再编译驱动程序。
'HAS_WPA_SUPPLICANT=y' 和 'HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y'
驱动程序编译成功后,您可能需要确保驱动程序可以成功加载到内核。因此,在终端窗口中以 root 用户身份登录(键入 su <enter> 然后输入 root 密码以成为 root 用户),导航到解压缩的下载文件的 os/linux 目录,然后键入 /sbin/insmod rt2870sta.ko。驱动程序应加载,而不会向终端报告任何错误。
现在驱动程序已成功编译,将新创建的内核驱动程序文件 rt2870sta.ko(您将在解压缩的下载文件的 os/linux 目录中找到它)复制到 /lib/modules/{您的内核}-default/other。如果需要,请创建“other”目录。您需要以 root 用户身份登录才能执行此操作。最简单的方法(如果您不确定)是转到“应用程序 - 系统 - 文件管理器 - 文件管理器超级用户模式”(在 KDE 中),并在提示时输入 root 密码。现在,您在 Konqueror 窗口中执行的任何操作都将以 root 用户身份进行。
在以 root 用户身份登录的终端窗口中运行 depmod -a。驱动程序现在应该在后续启动时自动加载。您可以通过重新启动,然后在终端窗口中键入 lsmod 来测试驱动程序的自动加载。您将看到很长的输出列表,但我们感兴趣的是如下所示的列表
... usbcore 198656 10 snd_usb_audio,snd_usb_lib,gspca_zc3xx,isp1760,gspca_main,usbhid,rt2870sta,ehci_hcd,ohci_hcd ...
我们感兴趣的是看到 rt2870sta 模块加载到 usbcore。如果驱动程序现在已加载,我们可以继续完成驱动程序配置。
首先,将 RT2870STA.dat 文件从解压缩的下载文件复制到 /etc/Wireless/RT2870STA。您可能需要先创建部分目录结构,并且需要以 root 用户身份登录。完成此操作后,您需要根据 README_STA 文件中的说明编辑该文件。您需要进行的具体更改取决于您的位置和您需要建立的无线连接类型。大多数选项可以保持默认设置,但有些选项需要仔细注意,例如 CountryRegion、CountryRegionBand、CountryCode、ChannelGeography、NetworkType、WirelessMode、AuthMode、EncrypType 和 WPAPSK。完成此操作后,我们可以进入下一步。
例如,这是我的配置文件,但请记住根据您的需要进行更改。
#The word of "Default" must not be removed Default CountryRegion=0 CountryRegionABand=0 CountryCode=NZ ChannelGeography=1 NetworkType=Infra WirelessMode=5 Channel=0 BeaconPeriod=100 TxPower=100 BGProtection=0 TxPreamble=0 RTSThreshold=2347 FragThreshold=2346 TxBurst=1 PktAggregate=0 WmmCapable=1 AckPolicy=0;0;0;0 AuthMode=WPA2PSK EncrypType=TKIP WPAPSK=Your_connection_key DefaultKeyID=1 Key1Type=0 Key1Str= Key2Type=0 Key2Str= Key3Type=0 Key3Str= Key4Type=0 Key4Str= PSMode=CAM FastRoaming=0 RoamThreshold=70 APSDCapable=0 APSDAC=0;0;0;0 HT_RDG=1 HT_EXTCHA=0 HT_OpMode=1 HT_MpduDensity=4 HT_BW=1 HT_AutoBA=1 HT_BADecline=0 HT_AMSDU=0 HT_BAWinSize=64 HT_GI=1 HT_MCS=33 HT_MIMOPSMode=3 IEEE80211H=0 TGnWifiTest=0 WirelessEvent=0 CarrierDetect=0
配置 wpa_supplicant
注意:本节中的所有步骤都需要以 root 用户身份执行
Wpa_supplicant 是将用于建立与无线网络的实际连接的程序。默认情况下应该已安装,但如果未安装,只需使用 YAST 软件管理安装 wpa_supplicant 和 wpa_supplicant-gui。
在 /etc/wpa_supplicant 目录中,您将找到文件 wpa_supplicant.conf。您需要编辑此文件,使其包含行 update_config=1。这将允许您运行图形界面以配置/更新将存储在此处的连接配置文件,而不是手动在配置文件中创建它们。当然,如果您愿意,也可以手动编辑配置文件。如果您想这样做,下面是一个用于 WPA 加密网络的示例文件。
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel
eapol_version=2
update_config=1
network={
ssid="yournetwork-ssid"
psk="yournetwork-connection-key"
proto=RSN
key_mgmt=WPA-PSK
pairwise=TKIP
id_str=""
}
现在,在终端窗口中输入命令 wpa_supplicant -Dwext -ira0 -c/etc/wpa_supplicant/wpa_supplicant.conf &。这将启动 wpa_supplicant。在启动图形界面之前需要这样做。现在键入 wpa_gui。这将启动 wpa_supplicant 的前端,并允许您扫描可用的无线网络并设置连接。只需选择您的适配器,然后选择“扫描”以检查可用的网络。如果已配置为广播 SSID,您应该在此列表中看到您的网络。关闭此窗口,然后选择“管理网络”选项卡,从这里添加/编辑您的网络连接详细信息。您现在应该能够选择您的网络并连接。
如果一切顺利,您现在应该已连接到您的网络。剩下的步骤是在启动时自动执行此操作。如果您仍然无法连接,请仔细检查 wpa_supplicant 和 RT2870STA.dat 的设置。
ifup
Ifup 将与 wpa_supplicant 结合使用,在启动时自动启动您的连接。为此,我们需要在 /etc/sysconfig/network 目录中创建一个名为 ifcfg-ra0 的文件(其中 ra0 是分配给您的网络适配器的接口名称)。此文件需要填充依赖于您的网络设置的配置详细信息,但您可能不需要太复杂,其中一些信息与您为 wpa_supplicant 输入的信息相同。例如,这是我的设置,用于连接到 WPA 加密连接,分配用户控制接口并使用 DHCP 分配 IP 地址。
DEVICE='ra0' BOOTPROTO='dhcp' STARTMODE='auto' USERCONTROL='yes' NAME='Whatever-you-want-to-call-this-connection' DHCLIENT_PRIMARY_DEVICE='yes' WIRELESS_ESSID='Your-Wireless-Network-SSID' WIRELESS_AUTH_MODE='psk' WIRELESS_WPA_PSK='Your-WPA-Network-key' WIRELESS_AP_SCANMODE='1'
作为另一个例子,这里有一个 128 位 WEP 密钥。
DEVICE='ra0' BOOTPROTO='dhcp' STARTMODE='auto' USERCONTROL='yes' NAME='Whatever-you-want-to-call-this-connection' DHCLIENT_PRIMARY_DEVICE='yes' WIRELESS_ESSID='Your-Wireless-Network-SSID' WIRELESS_AUTH_MODE='open' WIRELESS_KEY_LENGTH='128' WIRELESS_KEY_0='Your WEP key here' WIRELESS_AP_SCANMODE='1'
如果所有这些都已设置正确,那么重新启动时应该会自动建立连接。
<keyword>ASUS, WL160N, 无线, 网络, wpa_supplicant, ralink</keyword>