1.1下载驱动程序一、首先弄清楚当前使用的是什么版本的Linux,如:Redhat9.0、Freda core5等。
Linux用的是什么版本的内核,可以用uname –a得知内核版本号。
二、使用的是什么接口类型的无线网卡,常见的接口类型有PCI (台式机)、Cardbus/PCMCIA(笔记本)、USB(台式机、笔记本)等。
三、无线网卡使用的是哪一种类型的芯片,判断方法如下,到相关网站下载与其相对应的驱动程序。
常用的无线网卡驱动及其支持的芯片类型和接口类型如下表1所示。
PCMCIA卡:将无线网卡插入笔记本电脑中,用命令lspci可以看到芯片类型,如:Realtek Semiconductor Co.. Ltd, RTL8180L802.11b MAC (rev 20)其中RTL8180L即为网卡芯片类型,用参数v可以看到更详细的信息。
USB卡:用命令lsusb可以看到芯片类型(fc5没有此命令)。
通过其它方法查找。
驱动程序芯片类型接口类型官方网站下载页Linux-wlan-ng Prism2/2.5/3 Cardbus/PCI/USB /download.shtml Madwifi Atheros系列Cardbus/PCI /islsm ISL38XX USB/PCI http://jbnote.free.fr/prism54usb/index.html表1:网卡驱动程序有关信息1.2驱动程序的安装每款驱动的安装方法各不相同,阅读INSTALL文档,获得驱动程序的具体安装方法及系统内核要求。
阅读驱动程序附带的README文档,获得有关此驱动的详细信息,如驱动所支持的网络模式、接口类型、所包含的模块的功能及无线网卡的配置等。
下面是安装网卡驱动程序的一般步骤:编译网卡驱动程序#make安装驱动程序模块#make install加载模块#modprobe 主模块名安装好驱动后插入无线网卡,命令iwconfig可以查看驱动是否加载成功,如果出现新的设备名,则说明驱动已经装上并且能够识别出无线网卡。
#iwconfig1.3无线网卡的配置可以分别通过‘网络配置’界面和命令对无线网卡进行配置,如IP地址、网络模式、ESSID和速率等。
可视化配置无线网卡,方法如下所示:首先用编辑工具编辑文件/etc/modprobe.conf,添加下面行以实现界面配置。
alias 设备名驱动模块名(加到/etc/modprobe.conf)重起笔记本电脑后加载驱动模块,打开桌面﹥管理﹥网络,在“网络配置”界面中,如果在设备栏里没有类型为“Wireless”的设备,新建一个。
点击“新建”,创建一个设备类型为‘无线连接’的设备,选择刚装好的无线网卡,最后对该无线网卡进行初始化配置,其所对应的脚本文件为/etc/sysconfig/network-script/ifcfg-设备名也可以使用命令进行配置,命令有ifconfig、iwconfig、iwlist等,具体用法参见第4节或使用命令man查看详细信息。
2内核编译与安装如果驱动程序要求的内核选项没有打开,则需要进行内核的配置。
使用命令进入内核源代码目录, 命令make mrproper确保源代码目录下没有不正确的.o文件以及文件的互相依赖。
接下来的内核配置过程比较烦琐,但是配置的适当与否与日后Linux的运行直接相关,有必要了解一下一些主要的且经常用到的选项的设置。
配置内核可以根据需要与爱好使用下面命令中的一个:#make config (基于文本的最为传统的配置界面)#make menuconfig (基于文本选单的配置界面)#make xconfig (基于图形窗口模式的配置界面)#make oldconfig (如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦)进行配置时,大部分选项可以使用其缺省值,只有小部分需要根据驱动程序的需要进行选择。
选择相应的配置时,有三种选择,它们分别代表的含义如下:“Y”-将该功能编译进内核“N”-不将该功能编译进内核“M”-将该功能编译成可以在需要时动态插入到内核中的模块。
将与核心其它部分关系较远且不经常使用的部分功能代码编译成为可加载模块,有利于减小内核的长度,减小内核消耗的内存。
2.1 2.6系列内核源代码安装及编译步骤对于Fedora Core 系列来说,内核源码是放在/usr/src/redhat/BUILD/ 目录中,如果系统中该目录没有内容,则说明没有安装内核的源码包,可从下载对应的源码包。
如果下载的是rpm包,可通过以下命令来安装:#rpm -i kernel-2.6.16-1.2096_FC5.src.rpm#cd /usr/src/redhat/SPECS#rpmbuild -bp --target i686 kernel-2.6.spec#cd ../BUILD#cd kernel*/linux*现在就是内核的代码所在的目录(linux-2.6.16.i686)。
如果下的是.tar.bz2或.tar.gz,只要把下载下来的文件移到/usr/src 目录中解压,然后进入解压的目录根据需要进行配置。
2.6系列内核编译安装十分简单,只需以下3个命令即可,并自动完成对启动引导装载器GRUB的配置,非常方便。
# make 编译内核#make modules_install 安装模块#make install 安装内核、修改GRUB配置文件重启计算机后选Fedora Core (2.6.16-prep)以新编译的内核进入Linux操作系统。
2.2 2.4系列内核源代码安装及编译步骤如果驱动要求的内核版本较高,需要升级,可从上下载相应的内核版本进行编译安装。
2.4 系列内核编译所使用的命令较多,最后还需要手动修改启动引导装载器GRUB的配置文件,添加新编译的内核映像文件作为新的启动选项。
将源代码包移动到/usr/src中解压:# tar vxfj linux-2.4.26.tar.bz2# ln –s linux2.4.26 linux# cd /usr/src/linux配置和编译内核:# cp /boot/config-2.4.20-8 .config# make menuconfig# make dep# make clean# make bzImage安装模块:# make modules# make modules_install启动新选项:# cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.26# cp .config /boot/config-2.4.26# cp System.map /boot/System.map-2.4.26# mkinitrd /boot/initrd-2.4.26.img 2.4.26# cd /boot# rm -f System.map vmlinuz# ln -s System.map-2.4.26 System.map# ln -s vmlinuz-2.4.26 vmlinuz# cd grub# vi grub.conf# reboot选择相对快速并且具有权威性的站点下载最新的内核源代码包,例如条件允许的话可以到下面的站点下载:ftp:///pub/linux/kernel国内Linux用户可以到下面的站点下载:Linux系统的核心代码存放于目录/usr/src/linux,实际上,该目录是一个链接,指向当前所用的核心版本的目录,例如如果当前使用的版本是x.y.z,则该核心的实际目录应该是:/usr/src/linux-x.y.z。
而新下载的内核中的目录是linux,这样,直接在/usr/src下解包会导致原来的内核目录被覆盖。
所以稳妥的做法是,首先删除链接linux,然后解包、更名、重新链接。
在解包前要确认在/usr/src目录下没有叫linux的目录,或者不再想保留该目录。
3三款无线网卡驱动的安装与配置过程3.1TL-WN510G无线网卡、SMC EZ Connect™ 802.11g Wireless CardbusAdapter无线网卡这两款无线网卡使用的芯片类型相同(AR5212),以TL-WN510G介绍Cardbus 接口无线网卡驱动程序安装的步骤。
下载驱动程序插上网卡后,通过下面的命令来查看无线的主芯片信息。
#lspci –v运行此命令后,显示如下信息:07:00.0 Ethernet controller: Atheros Communications, Inc. AR5212 MultiprotocolMAC/baseband processor(rev 01)Subsystem: Atheros Communications, Inc. Unknown device 1052Flags: medium devsel, IRQ 11Memory at 38000000 (32-bit, non-prefetchable)[disable][size=64K]Capabilities: [44] Power Management version 2可以看出,网卡的芯片类型为AR5212,是Atheros系列中的一款。
从表1中得知驱动程序Madwifi支持该芯片类型的网卡。
到 下载最新的源代码,一般名称为madwifi-ng-current.tar.gz。
安装驱动程序解压后阅读里面的READER和INSTALL文档来获取帮助信息。
从README文档中得知,该驱动程序支持PCI、miniPCI 、Cardbus的设备类型,驱动的主模块为ath_pci,各种型号所支持的协议以及无线网卡的详细配置。
从INSTALL文档中得知,该驱动的系统要求为要有内核源代码,内核配置选项CONFIG_SYSCTL、CONFIG_CRYPTO要打开(可通过查看文件/boot/config-2.6.15-1.2054_FC5来查找选项是否打开),要使用相同版本的编译器编译内核和驱动程序等。
在Feroda core下没有找到内核源码,到网上下载相应的内核源码。
采用前面所述方法对内核源码进行配置,打开所需的选项,然后编译、安装内核模块。
配置好内核后,依据INSTALL里的流程安装驱动程序:运行下面的命令来编译和安装驱动,选项KERNELPATH为内核源码的路径#make KERNELPATH=/usr/src/*#make install编译成功后可运行下面的命令来加载网卡设备#modprobe ath_pci没有错误提示,表明已经成功安装并加载上了驱动程序。
插入无线网卡后运行命令#iwconfig出现新的设备名ath0,即驱动识别出了网卡设备,驱动程序安装成功。