[FrontPage] [TitleIndex] [WordIndex

This is a read-only archived version of wiki.centos.org

Atheros AR5007EG 无线网络卡

ArtWork/WikiDesign/alert.png

本页由 CentOS 5.4 的发行起已被降级,因此,它不宜被采用在现有系统上。

<<TableOfContents: execution failed [Argument "maxdepth" must be an integer value, not "[1]"] (see also the log)>>

ArtWork/WikiDesign/alert.png

这份教学文档涉及未被 CentOS 小组测试的第三方程序。因此请自行承担下面带来的风险。

话虽如此,它带来损害的机会非常微。

1. 引言

AR5007EG 这张卡日趋普遍,尤其是在低档次的笔记本。举个例说,它被采用于某个常见的 Asus EEE PC 型号内。它没有官方的驱动程序,但 MadWifi 小组及 FreeBSD 的 Sam Leffler 已经创建了一个可以兼容 32 及 64 位元的驱动程序。

本页内的大倍份指命都须要有 root 权限与及 root 用户的 $PATH,包括 /sbin 及 /usr/sbin。因此,请以 root 身份登录,或利用 su - 变为 root。这样能确保你的指命路径已包含上述两个目录。

2. 断定你是否拥有 AR5007EG 这张卡

假若你的计算机仍然安装了 Windows,请使用它的设备管理员来检查这张卡。如果你已经把 Windows 删除,请采用 lspci。

lspci | less

虽然 lspci 仍然未能正确地辨认 AR5007EG,它或许能提供一些线索。这张卡会被显示为 AR5006EG。在一台 CentOS-5.2 64 位元系统上,它会被显示为 AR242x 802.11 abg。现在以 -n 这个标志执行 lspci 来取得辨认号码。

lspci -n

168c:001c 这个辨认号码应该会被列出来。

某些 Acer(宏棋)笔记本在机器的底部有一个标贴显示内置有 Atheros AR5BXB63。这个标贴其它发行商的机器上或许亦会存在。

3. 删除任何 ndiswraper 或旧有的 MadWifi 安装

如果你曾经尝试用 ndiswrapper 或 MadWifi,它们有可能会干扰新的安装。故此,把任何 ndiswrapper 或旧有的 MadWifi 安装完全删除会比较好。

3.1. ndiswrapper

首先删除任何已经被安装的驱动程序。假若你遵从了坊间的教学文档,你多数是安装了 net5211 或 net5416 这两个驱动程序。

ndiswrapper -l

(这个是 list 字的细楷 L,而不是数目的一字。)

譬如它显示你安装了 net5211 这个驱动程序,请删除它。

ndiswrapper -e net5211

要是所显示的驱动程序是 net5416,请把上述指命的 5211 改为 5416。

现在删除 ndiswrapper。如果你是通过 rpm 安装它的,请采用

yum -y remove ndiswrapper

假若你是从源代码安装它的,请进入你解压 ndiswrapper 时所创建的源代码目录并输入

make uninstall

你应该会看见它寻找安装内容,然后输出信息告欣你要再执行 make uninstall 数次,直至你确定没有任何剩下的东西为止。

3.2. MadWifi

这个步骤亦相若。如果是经 yum 安装的,利用 yum -y remove madwifi 应该会删除任何它所安装的组件。若然是从源代码安装的,请进入解压时所创建的目录并输入 make uninstall。

4. 下载已修正的快照

MadWifi 的 1192 传票内含有一个适用于此卡的最新快照的连结。请下载它并把它存于某处。这些快照会经常更新,因此请确保你有最新的版本。

5. 确保你拥有编释源代码的功具

yum -y install gcc gcc-c++ make kernel-devel

这样做亦会引进 kernel-headers 及其它必须的东西。

6. 编释代码

假设你已经位于下载压缩档的目录,请把它解压,进入新的目录及执行 make 和 make install。

tar zxvf madwifi-hal-0.10.5.6-<version>tar.gz
cd madwifi-hal-0.10.5.6-<version>
make
make install

7. 删除 ath5k 模块及把它放入黑名单

这一步并非必须的,但可预防冲突。

modprobe -r ath5k

这样便会删除该模块。

利用你喜欢的编辑器 :) 编辑 /etc/modprobe.d/blacklist。把以下内容加进该文件

blacklist ath5k

8. 插入 ath_pci 这个模块

在某些情况下,于未重新开机前做这个动作可能会引起问题。你的划面也许会显示一大堆错误。若是这样的话,请勿慌张。你只须重新开机并尝试再度(按照以下描述)插入该模块。

要插入该模块

modprobe ath_pci

如果一切顺利的话,你应该会返回指命符。请检查该模块是否被正确地装入。

lsmod | grep ath

你应该会看见如下的内容

ath_rate_sample
ath_pci
wlan
ath_hal

(你也许会看见其它拥有 ath 符串的东西,但你可以忽视它们。)

9. 引导这张卡及扫描网络

ifconfig ath0 up

这应会把你放回指命符。这一步并不是每次都必须的,但它无伤大雅。假设你没有遇上问题,你现在可以测试这张卡能否运作

iwlist ath0 scan

你应该会看见你附近的无线网络的清单。要是这样,你现在便可以用你惯常的方法连接到你的无线网络。

有时你必须重新开机才能把该模块正确地装入。如果你得不到任何结果,请尝试重新开机。

多数笔记本拥有一个开关键或按钮来启用及停用无线网络。要是你收到错误信息告欣你该界面不支持扫描,很有可能这个开关的位置不对。

要拥有正常运作的 LED,请使用以下指命。(多谢 Fedora 论坛上的一位发表者提供 LED 及滑行键的指命。)

sysctl -w dev.wifi0.ledpin=3
sysctl -w dev.wifi0.softled=1

(有些人觉得闪烁着的 LED 很扰人 —— 至少在某些机种上,这样做不会长着灯来告欣你无线网络已被启用,而会闪烁它来显示有活动。)

有些机器利用滑行键来控制无线网络。要叫它们运作,请使用以下指命

/usr/bin/setkeycodes e055 159
/usr/bin/setkeycodes e056 158

要永久采用这些指命,请指它们加进 /etc/rc.local。

有些机器以按钮来代替滑行键或开关。假如 LED 灯未被启用,你很难去分辨无线网络是否被启用。当你认为应该有所作为时,却没有事情发生,按这个按钮数次也许会有帮助 —— 在低档次的机器上,你有时要做数次才会有效。

10. 排除疑难的清单

这不是一份很好的清单,因它只涵盖了上述提及的事情,但你可能用得着它。

你有没有完整地删除旧有的 ndiswrapper 及/或 MadWifi 安装?

要是没有,旧安装残留下来的东西有可能会引起冲突。

你有没有以 root 登录及采用 root 的 $PATH?

假如你没有以 root 的身份登录,又或者你执行 su 时没有采用 - 这个标志,你便不会有 root 用户的路径。这可以引起问题,因为有些程序须要 /sbin 及/或 /usr/sbin。

你有没有把 ath5k 放进黑名单内?

要不然,它经常会诱发冲突。

假如你的笔记本有一个开关或按钮来启用或停用无线网络,你是否肯定它已被设在「启用」的位置?

如上所述,这个问题在某些笔记本上可能较难判断,因为颗 LED 不能亮起来。有时,唯一的方法就是按那开关及不断利用 iwlist ath0 scan 这个指命来检查它能否运作。

如果它依然不能运作,请查看 dmesg 内是否有错误信息。

dmesg | grep HAL

你也许会看见 HAL error 3, Hardware didn't respond as expected,或 unable to attach hardware: Hardware revision not supported (HAL status 13)。

不过,这个情况随着新的快照已经日趋罕见。针对这张卡的支持正在不断改进。

如果你收到这类信息,重试一次也许已经能够把问题解决。

11. 当内核被升级时

由于这是个第三方程序,针对着某个内核创建模块,每次内核升级后它必须被手动更新。虽然在内核升级后,在开机时你也许会看见一个信息汇报 dkms 正在把模块升级,但实质它似乎办不到。(在正常重新开机时,你也许会看见 dkms 汇报该模块已安装了。你可以忽视这个信息。)

如果内核被升级了,重新开机后,该无线网络卡便不能运作。要修正这个问题,请卸装、清理目录、重新编译及重新安装。

cd madwifi<版本编号>
make uninstall
make clean
make
make install
modprobe ath_pci

有时该 modprobe 指命会引致 module mismatch 的错误。要是这样,请你重新开机来解决事情。

这篇文章来自 http://home.roadrunner.com/~computertaijutsu/rhwireless.html#5007

Translation of revision 13


2023-09-11 07:23