學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 >

Linux下USB無線網(wǎng)卡WL-167G驅(qū)動安裝過程

時間: admin1 分享

最近經(jīng)過前期調(diào)研選定網(wǎng)卡,又折騰一兩天,終于搞定了Linux下的無線網(wǎng)卡,對遇到的問題進行了分析,并整理了下詳細(xì)過程,現(xiàn)與大家分享,還有更具體的開發(fā)文檔,有需要的可以聯(lián)系下一步工作要將其移植到ARM平臺上,希望與大家多多探討

網(wǎng)卡 華碩WL-167G、TP-LINK TL-WN321G

驅(qū)動 RT73_Linux_STA_Drv1.0.3.6

下載地址

http://dlsvr01.asus.com/pub/ASUS/wireless/WL-167g/Linux_1218.zip

一、 準(zhǔn)備工作 解壓內(nèi)核源碼,拷貝對應(yīng)內(nèi)核的makefile,并更改文件屬性

[root@dding RT73_Linux_STA_Drv1.0.3.6]# chmod 777 Module

[root@dding RT73_Linux_STA_Drv1.0.3.6]# ls -al

總用量 16

。。。。。

drwxrwxrwx 2 root root 4096 2006-07-04 Module

##確保文件對任何用戶是可讀可執(zhí)行的,否則可能不能make config,777可以保證所有權(quán)限

二、 添加對WL-167G ASUS 網(wǎng)卡的支持,注意官方的1218版本以前驅(qū)動包括網(wǎng)卡自帶的光盤里沒有對此說明,否則驅(qū)動加載后會說找不到設(shè)備

[root@dding Module]# gedit rtmp_def.h

##add support for WL-167G ASUS

{USB_DEVICE(0x0B05,0x1723)}, /* dding add WL-167G ASUS */ \

{USB_DEVICE(0x0B05,0x1724)}, /* dding add ASUS */ \

三、 配置、編譯 確保對應(yīng)目錄下存在/usr/src當(dāng)前系統(tǒng)運行的內(nèi)核源碼,其他位置不行

1> $make config

## ensure there are such directories as /usr/src/linux-2.4.20-8 and /lib/modules/2.4.20-8/kernel/drivers/net, but they are your own kernel

2> $make all # compile driver source code

## ensure no problems occur

四、修改自啟動配置文件ifcfg-rausb0并安裝RT73.o及添加alias rausb0 rt73

1> 修改當(dāng)前目錄下的ifcfg-rausb0,若是動態(tài)IP則不需要修改

[root@dding Module]# gedit ifcfg-rausb0

## edit the file according to your network system, and it can be auto loaded when booting system. and the file is as follows:

DEVICE=rausb0

ONBOOT=yes

## static for fixed ip

BOOTPROTO=static

IPADDR=192.168.0.31 ## 你自己的IP及其他相關(guān)設(shè)置

NETMASK=255.255.255.0

GATEWAY=192.168.0.1

2> 安裝模塊及其他自啟動設(shè)置

[root@dding Module]# make install

install -m 755 -o 0 -g 0 -d /lib/modules/2.4.20-8/extra

………………

## 安裝完畢后請確認(rèn)對應(yīng)目錄下存在下列文件

## 安裝完畢后modules.conf內(nèi)容如下:

...............

alias rausb0 rt73

##安裝完畢后 ifcfg-rausb0 內(nèi)容如gedit ifcfg-rausb0所設(shè)

五、拷貝系統(tǒng)固件及默認(rèn)自啟動時的默認(rèn)配置文件

1> $cp rt73.bin /etc/Wireless/RT73STA/ # copy firmware

[root@dding Module]# cp rt73.bin /etc/Wireless/RT73STA/

##必須先逐層建立目錄/etc/Wireless/RT73STA/后,再執(zhí)行拷貝操作,否則報錯

2> $dos2unix rt73sta.dat

$cp rt73sta.dat /etc/Wireless/RT73STA/rt73sta.dat

[root@dding Module]# dos2unix rt73sta.dat

dos2unix: converting file rt73sta.dat to UNIX format ...

## 拷貝完畢上述目錄確認(rèn)存在此兩個文件

# Use "vi -b rt73sta.dat" to modify settings according to your need.

六、動態(tài)加載模塊 用相關(guān)命令確認(rèn)模塊加載成功

[root@dding Module]# insmod rt73.o

[root@dding Module]# cat /var/log/messages | tail

。。。。。。。。。。

Apr 14 14:05:44 dding kernel: rtusb init ====>

Apr 14 14:05:44 dding kernel: usb.c: registered new driver rt73

[root@dding Module]# dmesg | tail

。。。。。。。。。。

rtusb init ====>

usb.c: registered new driver rt73

[root@dding Module]# lsmod

Module Size Used by Not tainted

rt73 233632 0 (unused)

...............

usbcore 78784 1 [rt73 hid usb-uhci ehci-hcd]

## 也可以確認(rèn)模塊是否加載成功

七、插入網(wǎng)卡,看是否能夠識別

## insert the WL-167G card

[root@dding Module]# cat /var/log/messages | tail

。。。

Apr 14 14:07:58 dding kernel: idVendor = 0xb05, idProduct = 0x1723

Apr 14 14:07:59 dding /etc/hotplug/net.agent: invoke ifup rausb0

。。。

Apr 14 14:08:02 dding /etc/hotplug/usb.agent: Setup rt73 for USB product b05/1723/1

[root@dding Module]# dmesg | tail

。。。。。

## pop out the WL-167G card insert the TL-WN321G card

[root@dding Module]# cat /var/log/messages | tail

。。。

Apr 14 14:11:02 dding /etc/hotplug/usb.agent: Setup rt73 for USB product 148f/2573/1

Apr 14 14:11:02 dding devlabel: devlabel service started/restarted

## support for USB product 148f/2573/1, and all is ok

[root@dding Module]# dmesg | tail

。。。。。。

八、成功識別后,用iwconfig查看無線網(wǎng)絡(luò)并進行相關(guān)設(shè)置

[root@dding Module]# iwconfig

rausb0 RT73 WLAN ESSID:"lab706"

Mode:Ad-Hoc Channel:1 Cell: 00:18:F3:E5:9D:66

。。。。

[root@dding Module]# iwconfig rausb0 mode managed

[root@dding Module]# iwconfig

rausb0 RT73 WLAN ESSID:""

。。。

## Infrustructure mod, 默認(rèn)ESSID:""為空,

[root@dding Module]# iwlist rausb0 scan

rausb0 Scan completed :

Cell 01 - Address: 00:18:F3:E5:9D:66

ESSID:"lab706"

。。。。

Cell 02 - Address: 00:C0:02:0A:8D:52

ESSID:"A509-ID"

。。。

##將自動接收周圍的信標(biāo)幀,并比較信號值自動進行聯(lián)接,也可以掃描手動設(shè)置

[root@dding Module]# iwconfig

rausb0 RT73 WLAN ESSID:"lab706"

Mode:Managed Channel:1 Access Point: 00:18:F3:E5:9D:66

。。。。

## AP端設(shè)置好后,TL-WN321G自動聯(lián)接到AP上了,太爽了,WL-167G還可以當(dāng)AP用

## 在AP端加上了MAC控制列表防止其他用戶聯(lián)接到此網(wǎng)絡(luò)上

11667