在Linux上安装ORiNOCO无线网卡办法
发表于:2007-07-04来源:作者:点击数:
标签:
1. 软件描述 1.1描述 该软件支持下列网卡: * ORiNOCO PC Card (Silver and Gold) * WaveLAN/IEEE Turbo 11 Mb Card * WaveLAN/IEEE Turbo Card (8 Mb) * WaveLAN/IEEE PC Card (2 Mb) 该软件是由Agere System Inc.发布和支持的。 1.2软件部件 这个ORiNOCO P
1. 软件描述 1.1描述
该软件支持下列网卡:
* ORiNOCO PC Card (Silver and Gold)
* WaveLAN/IEEE Turbo 11 Mb Card
* WaveLAN/IEEE Turbo Card (8 Mb)
* WaveLAN/IEEE PC Card (2 Mb)
该软件是由Agere System Inc.发布和支持的。
1.2软件部件
这个ORiNOCO PC Card软件是以压缩文档分发:
* wavelan2_cs-6.16.tar.gz
为适应CD-ROM的8.3文件名格式,文件wavelan2_cs-6.16.tar.bz被命名为:
* wlli616.tgz
这个文档包含驱动程序源文件和库。你可以用这些文件为你的特定的Linux内核生成和安装ORiNOCO PC Card驱动。
该驱动源文件支持Intel架构的Linux内核版本2.0.x,2.2.x和2.4.x,并包含在以下Linux发行版:
* Red Hat version 5.2, 6.0, 6.1, 6.2, 7.0, 7.1
* Suse version 6.1, 6.3, 6.4, 7.0, 7.1
内含的HCF库实现了用于ORiNOCO环境的Agere System 802.11 MAC控制器界面。
1.3软件版本
下列软件包含在这次发布里:
* README.wavelan2_cs This file本文件
* LICENSE.wavelan2_cs License
* wavelan2_cs.mk Top level Makefile最上层生成文件
* Build Script to build driver生成驱动的脚本
* Install Script to install driver安装驱动的脚本
驱动源程序和HCF库:
* wireless/wavelan2_cs.mk Driver Makefile驱动生成文件
* wireless/wavelan2_cs.c Driver source (v6.16)驱动程序源文件
* include/hcf/debug.h Driver debug support驱动调试支持
* include/hcf/libhcf.h HCF interface definition HCF接口定义
* lib/libhcf-i386.a HCF library (v4.6b) HCF库
在线驱动手册页:
* man/wavelan2_cs.4 Driver manual page驱动手册页
PCMCIA配置更新
* etc/wavelan2_cs.conf Add-on config file 增加的配置文件
* etc/wavelan2_cs.mk config update Makefile 配置更新生成文件
* etc/wavelan2_cs.patch config update patch file 配置更新补丁文件
-----------------------------------------------------------
2. 系统要求 2.1操作系统
该软件可以在Intel平台的运行Linux内核2.0.x,2.2.x或2.4.x的系统上编译和安装。
2.2 自由磁盘空间
为了编译该驱动,需要安装完整的Linux内核源程序。按照具体的内核版本,需要大约150MB磁盘空间,编译该驱动时,需要40KB左右。
-----------------------------------------------------------
3. 发布特性(略) 4. 安装事项 该驱动软件不是直接安装在Linux机器里。编译和安装驱动需要了解待安装计算机的Linux内核类型和版本。
4.1 开始前
1) 确定Linux内核类型和版本,检查是否满足要求。
2) 阅读Linux PCMCIA-HOWTO。这篇文章可能包含在Linux发行版的CD-ROM。也可
下载最新版:http://pcmcia-cs.sourceforge.net
请阅读PCMCIA-HOWTO的名为"Prerequisites and kernel setup"的段落
4.2 编译驱动
1) 从Linux安装盘上获得Linux PCMCIA包,或下载: target="_blank">http://pcmcia-cs.sourceforge.net。在安装盘上,PCMCIA包在Xtras/Linux/PCMCIA。
2) 拷贝到工作目录,解开包:
% tar xzvf pcmcia-cs-3.1.29.tar.gz
注意:在安装盘上使用文件名"pc3_1_29.tgz"而不是"pcmcia-cs-3.1.29.tar.gz".
3) 解开ORiNOCO源文件在PCMCIA包的上层目录
% cd pcmcia-cs-3.1.29
% tar xzvf ../wavelan2_cs-6.16.tar.gz
注意:在CDROM上文件名是 "../wlli616.tgz" 而不是"../wavelan2_cs-6.16.tar.gz".
4) 编译和安装驱动
% make config
回答提出的问题,通常缺省就可以,按"Enter" 足够。但在RedHat 7.1上需要指定"/usr/src/
linux-2.4"为Linux源文件目录,而不是缺省的"/usr/src/linux"。更多的配置,生成和安装的细节信息见PCMCIA-HOWTO。
现在运行编译脚本
% ./Build
该脚本设定使用系统内置的PCMCIA,以及生成完整PCMCIA包或只生成驱动。在安装驱动前,先转为'root':
% su
..
# ./Install
4.3 配置ORiNOCO PC 卡
在通过模块参数(在/etc/pcmcia/config.opts)配置驱动前,确定/etc/pcmcia/wireless.opts文件不存在或下列参数空白。
*,*,*,00:60:1D:*|*,*,*,00:02:2D:*)
INFO=""
ESSID=""
MODE=""
KEY=""
;;
如果想通过无线扩展(在/etc/pcmcia/wireless.opts)配置驱动,参考章节4.5
1)配置ORiNOCO PC 卡,参考:
* 在线手册页(wavelan2_cs.4)
% man wavelan2_cs
* PCMCIA文档的网卡部分
% more PCMCIA-HOWTO
2) 用编辑器配置参数:
# vi /etc/pcmcia/config.opts
比如:
a) 连接计算机到包含像Agere System AP-1000或AP-500的接入点的无线架构,
需要识别无线网络的网络名。
比如,网络名为"My Network",编辑config.opts文件包含:
module "wavelan2_cs" opts "network_name=My\ Network"
注意空格用反斜杠转义。
b) 要连接RG-1000,需要知道RG的ID(=网络名)和密钥。可从RG的后面板的小标签找到ID。比如,你的RG-1000的ID是225
clearcase/" target="_blank" >ccf,也没有改密钥,如下编辑config.opts: module "wavelan2_cs" opts "network_name=\"225ccf\" key_1=\"25ccf\"enable_encryption=Y"
如果已经改变密钥,应说明key_1的值。
c) 为在没有接入点的点对点网络接入计算机,建议使用IBSS模式。比如连接叫"My Network"点对点网络,编辑config.opts: module "wavelan2_cs" opts "create_ibss=Y network_name=My\ Network"
d) 也可使用"Station Name"在无线网络里区别计算机。比如在连接无线网络时,希望命名计算机"Wave1",编辑config.opts:module "wavelan2_cs" opts "network_name=Ocean station_name=Wave1"
e) 为连接Ad-Hoc无线计算机工作组,编辑config.opts:module "wavelan2_cs" opts "port_type=3"
注意"Ad-Hoc Demo Mode"不是点对点网络的建议模式,这种没有互操作性的模式仅用于特殊应用(如研究,与其它设备的
兼容性/以前WaveLAN/IEEE产品)。IBSS模式是创建点对点网络的推荐模式。
3) 用编辑器修改网络选项。
# vi /etc/pcmcia/network.opts
在连接网络时,参数要确保正确,和网络管理员一起检查网络信息。更多配置信息参考PCMCIA-HOWTO。
例如:
*,*,*,*)
IF_PORT=""
BOOTP="n"
IPADDR="10.0.0.5"
NETMASK="255.255.255.0"
NETWORK="10.0.0.0"
BROADCAST="10.0.0.255"
GATEWAY="10.0.0.1"
DOMAIN="domain.org"
DNS_1="dns1.domain.org"
;;
注意RedHat 7.1不用network.opts配置驱动。使用'netcfg'的图形工具创建脚本,像ifcfg-eth0在/etc/sysconfig/network-scripts目录的。使用缺省GNOME菜单启动netcfg: Programs->System->Network Configuration
4) 启动PCMCIA服务。
# /etc/rc.d/rc.pcmcia restart
或
# /etc/rc.d/init.d/pcmcia restart
有关各种配置选项和定义的更多细节,请参考ORiNOCO网站的PDF文档。target="_blank">www.orinocowireless.com。
4.4 问题解决
在ORiNOCO PC 卡插入时,卡管理器会发出不同的声音指示配置成功或失败。
a)两声高音 – 卡被识别和配置成功。
b)一高一低 – 卡被识别,但未配置成功。检查系统日志(dmesg)。
c)一声低音 – 卡未被识别,执行"cardctl ident",察看适配器PnP信息。
检验PnP信息是否与PCMCIA配置文件一致(/etc/pcmcia/config)。检查系统日志。
ORiNOCO PC 卡有两个指示灯指示卡和网络状态。
* 电源灯(靠近卡中间) – 该灯指示电源情况,在禁用卡能源管理模式时,它一直亮。启用卡能源管理模式时,它快速闪烁(每秒几次)。
* 收发指示灯(靠近卡边缘) – 当它收发报文时,闪烁。
* 两灯每十秒同时闪烁一次 – 卡不能与网络联系。在config.opts里检查网络名与接入点是否一致。
* 灯指示正常,但无通信 – 如果网络使用通常模式(比如port_type = 0或未指定),网络名已指定,检查网络参数是否正确(ifconfig,route,等)。 - 如果网络使用Ad-Hoc(点对点)模式(如port_type = 3),卡需要与其他网卡通信。检查双方网络参数。
参考在线手册页的附加配置,特性和支持信息。
% man wavelan2_cs
或
% man 4 wavelan2_cs
或
% nroff -man wavelan2_cs.4 | more
4.5 无线扩展(Wireless Extensions)
该驱动支持”无线扩展(Wireless Extensions)”。接口允许”无线工具(Wireless Tools)”从驱动取得统计信息和使用时动态更改驱动配置。
PCMCIA 包最新版包含脚本,通过4.3节描述的参数,使用无线扩展更改和配置驱动程序。参考/etc/pcmcia/wireless.opts的操作原理。按4.3节第3步配置网络参数。
更多信息见:
href="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.Extensions.html"target="_blank">http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.Extensions.html
target="_blank">http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
4.6 识别软件
本节解释怎样解开后鉴别软件的版本。
Linux驱动源代码/库包含两个主要部件,驱动源代码和HCF库。
* 快速鉴别wavelan2_cs.c源码:
% grep wavelan2_cs.c wavelan2_cs.c
"wavelan2_cs.c 6.16 11/23/2001 13:00:00 (Agere Systems)";
* 鉴别HCF库:
% strings libhcf-i386.a | grep Revision
HCF$Revision: 4.6
鉴别编译过的wavelan2_cs.o驱动,到驱动所在目录。安装的驱动通常在:
/lib/modules/<kernel-version>/pcmcia
* 检索编译好的驱动版本:
% strings wavelan2_cs.o | grep wavelan2_cs.c
wavelan2_cs.c 6.16 11/23/2001 13:00:00 (Agere Systems)
* 检索编译好的驱动HCF库版本:
% strings wavelan2_cs.o | grep Revision
HCF$Revision: 4.6
启动时,wavelan2_cs驱动报告版本在系统日志文件里(/var/log/messages)。
-----------------------------------------------------------
5. 技术约束 在软件发布时,存在以下约束:
5.1 使用ORiNOCO ISA 转接卡
细节:ORiNOCO设计为单卡的
解决方案,在接入点和笔记本电脑中都使用标准II型PC卡槽提供。为台式机,Agere提供了ISA到PC 卡转换卡(参考"swapbox")。
ORiNOCO ISA转换卡可以配置为两种I/O地址:
* 3E2 (出厂缺省设置)
* 3E0
影响:Linux PCMCIA包的i82365模块缺省仅检测3E0。办法:1)在手册页查找i82365模块的信息:
man i82365
2) 应用下列方法之一:
a)通过改动ISA转接卡的跳线更改I/O地址,正确的设置参见ORiNOCO软件光盘的电子文档"ORiNOCO ISA Adapter, Getting Started Guide"
b)另外,加载i82365模块时将参数"extra_sockets"置为1。在RedHat5.x-7.x系统,添加在文件"/etc/sysconfig/pcmcia":
PCMCIA=yes
PCIC=i82365
PCIC_OPTS="extra_sockets=1"
CORE_OPTS=
CARDMGR_OPTS=
对于其它Linux发行版,可以按照"PCMCIA-HOWTO"更改I/O地址。
5.2 使用ORiNOCO PCI转接卡
细节:ORiNOCO设计为单卡的解决方案,在接入点和笔记本电脑都使用标准II型PC卡槽提供。为台式机,Agere提供了PCI到PC 卡转换卡(参考"swapbox")。
为正确的中断分配,系统应支持PCIBIOS 2.2。推荐使用PCMCIA 3.1.14以上。
TI的CardBus控制器的PCI适配器的缺省中断配置不正确办法:1)i82365模块的TI CardBus 控制器选项说明的手册页:
man i82365
2) 加载i82365模块时,"irq_mode"参数值为0。RedHat5.x-7.x,加入文件"/etc/sysconfig/pcmcia":
PCMCIA=yes
PCIC=i82365
PCIC_OPTS="irq_mode=0"
CORE_OPTS=
CARDMGR_OPTS=
在其它Linux发行版中PCMCAI脚本的位置,参见"PCMCIA-HOWTO"中的”特殊Linux发行版”。
5.3 网卡功能兼容性
细节:该驱动支持卡的固件版本4.x以上。
影响:驱动退出并发送下面的错误信息到系统日志文件里(/var/log/messages):
eth0: ORiNOCO, HCF failure: "Primary
functions are compatible, station
functions are not"
解决办法:有两个办法:a)在
Windows里用WaveLAN卡固件更新工具。b)使用4.00的驱动
(wavelan2_cs-4.00.tar.gz)。
5.4 建立网桥或路由
细节:Linux驱动使用保存在ORiNOCO PC 卡的Flash中的卡固件。在IEEE 802.11卡中不能构建MAC层透明网桥。
这不仅是ORiNOCO的局限,也是IEEE 802.11的结构限制。在802.1D Bridge 标准(1998版)中定义:
到802.11 LAN的网桥将连接802.11门户,连接802.11分布系统。由于分布系统是AP的一部分,需要AP构建网桥。
主要原因是MAC层特点。透明网桥必须应答去往各个目的的帧。定义时,AP可以做;节点不行。
解决办法:使用驱动构建路由。
-----------------------------------------------------------
6. 已知问题 在软件发布时,未发现问题。
-----------------------------------------------------------
7. 技术支持 7.1 查找信息
在ORiNOCO网站上可以找到最近的设备驱动,网桥固件,软件更新和用户文档。
target="_blank">http://www.orinocowireless.com 或
target="_blank">ftp://ftp.orinocowireless.com/pub
7.2 联系技术支持
如果安装或使用时遇到问题,或想了解有关ORiNOCO其它产品的信息,请联系认证分销商或销售处。销售处的地址和电话列在ORiNOCO网站上。
联系技术支持,请用问题报告表发送传真或电子邮件。问题报告表'REPORT.TXT'包含在光盘上。另外也可从ORiNOCO网站上下载。
原文转自:http://www.ltesting.net