国语自产精品视频在线看:您身边最放心的安全下载站! 最新软件|热门排行|软件分类|软件专题|厂商大全

国语自产精品视频在线看

技术教程
您的位置:首页服务器类Linux服务器 → Linux操作系统下以太网卡的安装及配置

Linux操作系统下以太网卡的安装及配置

我要评论 2009/04/25 23:46:18 来源:国语自产精品视频在线看 编辑:佚名 [ ] 评论:0 点击:753次

Linux操作系【cāo zuò xì】统以其🏺独有的开放性🐛、稳定性、高效率【gāo xiào lǜ】等特点,受到越来越多🕒有识之🐞士的青【shì de qīng】🔠睐🍖。随着IT产业巨头纷纷【tóu fēn fēn】宣布对【xuān bù duì】Linux的支持【de zhī chí】,Linux正在迅速扩展🦆其应用🦏市场【shì chǎng】,特别是服务器市场【shì chǎng】。在标准🖌上,Linux与【yǔ】🚖POSIX1003.1兼容,但它具【jù】有比以【yǒu bǐ yǐ】住的【zhù de】🌪UNIX系统更【xì tǒng gèng】合理的内核结🉐构【gòu】。由于它【yóu yú tā】📶的开放性🐛,各种被人们广【rén men guǎng】🥃泛应用的网络协议都在该系统中得到了实现🔚。目前人⛽们所使【men suǒ shǐ】🎚用的Linux系统一【xì tǒng yī】般是指【bān shì zhǐ】由Linux核心🎭、外壳【wài ké】🥓(SHELL)及外围应用软【yīng yòng ruǎn】🏐件构【gòu】成的发行版本。Linux发行版本是不🦄同的公司或组织将🥠Linux核心🎭、外壳【wài ké】🥓、安装【ān zhuāng】工🎸具【jù】、应用软【yīng yòng ruǎn】🏐件有效捆绑起来的结【lái de jié】果🤺,所以种类繁多【lèi fán duō】😡,各有各【gè yǒu gè】的优缺点。但就【dàn jiù】🔃其总体而言🏧,这些发【zhè xiē fā】行版本具有对【jù yǒu duì】尽可能多的网【duō de wǎng】卡的支持【de zhī chí】。本文仅【běn wén jǐn】🔕就🔃RedHat这个特🔮定发行版本下的网卡的选择、安装【ān zhuāng】🔕、配置进行讨论,希望对【xī wàng duì】于其他【yú qí tā】📲发行版本的同样问题🎍有点借鉴作用。

就象💓UNIX,Linux支持的【zhī chí de】网卡主【wǎng kǎ zhǔ】要是以🎍太网卡。如3COM、ACCTON、AT&T、IBM、CRYSTAL、D-LINK等众多🎊品牌的【pǐn pái de】以太网卡只要【kǎ zhī yào】💈安装配置正确,都可以得到你所期望【suǒ qī wàng】💨的效果。

一、 Linux中网卡的工作原理

为了将这个问题说明【tí shuō míng】的更清🥞楚一些【chǔ yī xiē】🤗,不妨先简要地【jiǎn yào dì】剖析一🌚下Linux是如何🎱让网卡工作的。一般来说【shuō】,Linux核心已经实现了OSI参考模【cān kǎo mó】型的网🌡络层及🐧更上层【gèng shàng céng】部分。网络层【wǎng luò céng】的实现依赖于【yī lài yú】数据链【shù jù liàn】👑路层的🎪有效工【yǒu xiào gōng】作。网卡的【wǎng kǎ de】驱动【dòng】程序就是【xù jiù shì】数据链【shù jù liàn】👑路层与💙物理层【wù lǐ céng】🧐的接口。通过调用驱动【dòng】💺程序的【chéng xù de】发送例程向物理端🈷口发送数♎据🚖,调用驱动【dòng】💺程序的【chéng xù de】接收例【jiē shōu lì】程从物理端🈷口接收🐈数据🚖。

1.网卡驱动程序

简单地【jiǎn dān dì】说,要将你【yào jiāng nǐ】手中的【shǒu zhōng de】网卡利用起来🌱,你唯一【nǐ wéi yī】🉐要做的【yào zuò de】是得到🐖这块网卡的驱🔚动程序。驱动程序提供了面向操作系😗统核心👪的接口【de jiē kǒu】🎺和面向【hé miàn xiàng】物理层的接口【de jiē kǒu】🎺。

驱动程【qū dòng chéng】♍序的操作系【cāo zuò xì】统🎯接口是一些用于发现🛒网卡【wǎng kǎ】、检测网🎀卡参数🧥以及发【yǐ jí fā】送接收【sòng jiē shōu】✂数据的【shù jù de】例程【lì chéng】📻。当驱动程【qū dòng chéng】♍序开始【xù kāi shǐ】运作😟时【shí】🍍,操作系【cāo zuò xì】统🎯首先调用检测【yòng jiǎn cè】例程【lì chéng】📻以发现系统中安装的网卡【wǎng kǎ】。如果该网卡【wǎng kǎ】支持即插【chí jí chā】即用,那么检测例程【cè lì chéng】📻应该可以自动发现网卡【wǎng kǎ】的各种参数【zhǒng cān shù】;否则你就要在驱动程【qū dòng chéng】♍序运作【xù yùn zuò】前,设置好🚍网卡【wǎng kǎ】的参数供【cān shù gòng】驱动程【qū dòng chéng】♍序使用【xù shǐ yòng】💅。当核心📆要发送【yào fā sòng】数据时【shí】🍍,它调用🚋驱动程【qū dòng chéng】♍序的发送例程【lì chéng】📻。发送例程【lì chéng】📻将数据【jiāng shù jù】写入🙂正确的空间,然后激【rán hòu jī】👊活物理【huó wù lǐ】🗿发送过⌛程🌛。

驱动程🛷序面向📑物理层【wù lǐ céng】🍀的接口是中断处【zhōng duàn chù】🚸理例程【lì chéng】。当网卡【dāng wǎng kǎ】🐳接收【shōu】💉到数据【dào shù jù】、发送过程结束🍲,或者发【huò zhě fā】现错误【xiàn cuò wù】时【shí】🙏,网卡产生一个👻中断【zhōng duàn】🏗,然后核【rán hòu hé】心调用【xīn diào yòng】该中断【zhōng duàn】🏗的处理🌊例程【lì chéng】。中断处【zhōng duàn chù】🚸理例程【lì chéng】判断中【pàn duàn zhōng】断🏗发生的原因,并进行响应的处理🌊。比如当网卡【dāng wǎng kǎ】🐳接收【shōu】💉到数据【dào shù jù】而发生中断【zhōng duàn】🚶时【shí】🙏,中断处【zhōng duàn chù】🚸理例程【lì chéng】调用接收【shōu】例程【lì chéng】🥙进行接【jìn háng jiē】收【shōu】💉。

2.驱动程序工作参数

驱动程序的工作参数因网卡性质的【xìng zhì de】不同而不同,大致包【dà zhì bāo】括I/O端口号、中断号【zhōng duàn hào】👊、DMA通道、共享存储区等。输入输【shū rù shū】💰出端口🌞号又被🚹称为输入输【shū rù shū】💰出基地【chū jī dì】址【zhǐ】,当网卡【dāng wǎng kǎ】工作于【gōng zuò yú】💜端口输【duān kǒu shū】🚿入输出💆模式时被使用【shǐ yòng】🚲。端口输【duān kǒu shū】🚿入输出💆模式需【mó shì xū】要CPU的全程【de quán chéng】干预,但所需硬件及存储空间要求😸较低。CPU通过端【tōng guò duān】口号指定的空间与网📢卡交换数据。中断号【zhōng duàn hào】👊是网卡【shì wǎng kǎ】⚓的中断🤪序号【xù hào】,只要不📊与其它设备冲🕓突即可【tū jí kě】。当网卡【dāng wǎng kǎ】使用【shǐ yòng】🏚DMA方式时,它要使【tā yào shǐ】用🏚DMA通道批【tōng dào pī】量传输👩数据而【shù jù ér】不需要👀CPU的干预🐝。

对于一块具体🏬的网卡【de wǎng kǎ】🍮,如果网【rú guǒ wǎng】🔂卡支持完全自【wán quán zì】😖动检测🌪,那么一【nà me yī】个参数也不用💺指定【zhǐ dìng】,驱动程【qū dòng chéng】序的检🏑测例程【cè lì chéng】会自动设定所需参数。一般情【yī bān qíng】况,你需要👒人工设定这些【dìng zhè xiē】参数的🔔一部分。如果你的网卡【de wǎng kǎ】🍮使用❓端口输入输出【rù shū chū】模式【mó shì】🔋,你要设📟定端口【dìng duān kǒu】号和中【hào hé zhōng】断号🛤。如果你的网卡【de wǎng kǎ】🍮使用❓DMA模式【mó shì】🔋,你要设📟定DMA通道和中断号🛤。如果你的网卡【de wǎng kǎ】🍮使用❓共享存🔇储区的模式【mó shì】🔋,那你就【nà nǐ jiù】得设定💢共享存🔇储区的地址范围【wéi】🎺。

3.驱动程序的使用方式

有了网卡的驱【kǎ de qū】🥏动程序【dòng chéng xù】📯后📺,你可以【nǐ kě yǐ】选择是把驱动【bǎ qū dòng】程序📯加入到【jiā rù dào】Linux核心【xīn】之🚦中还是💒把驱动【bǎ qū dòng】程序📯加工成独立模【dú lì mó】块【kuài】。Linux系统一个引人入胜的长处就【zhǎng chù jiù】是可以定制系【dìng zhì xì】🔂统的核心【xīn】🐿。把需要👠频繁调【pín fán diào】用的功能加入系统核【xì tǒng hé】心【xīn】🐿,可以大大提高🖤系统的📨效率【xiào lǜ】。在这种🎐情况下系统启🎄动时,系统核【xì tǒng hé】心【xīn】自动🏜加载网【jiā zǎi wǎng】卡的驱【kǎ de qū】🥏动程序【dòng chéng xù】📯。驱动程【qū dòng chéng】序📯的参数可以通过【guò】LILO命令参数加以指定【zhǐ dìng】。系统启🎄动后驱🉐动程序【dòng chéng xù】📯永久驻【yǒng jiǔ zhù】留核心【xīn】🏌,不能用⛸常规的方法将🥏其卸载【qí xiè zǎi】。至于定😸制的系统核【xì tǒng hé】心【xīn】🐿,是通过【shì tōng guò】重新编译得到🔮的;如何编译核心【xīn】🚜将在后【jiāng zài hòu】🌤文叙及。

如果把【rú guǒ bǎ】驱动程【qū dòng chéng】🎿序编译成可装【chéng kě zhuāng】🏵载模块🌪,就可以用系统提供的命令在🕊系统启【xì tǒng qǐ】✔动后随【dòng hòu suí】🏑时加载。随时加【suí shí jiā】载的好🕺处是减少内存【shǎo nèi cún】开销【kāi xiāo】,易于管理🚘,但同时【dàn tóng shí】🎑也牺牲➖了一点网络传输的效率。驱动程【qū dòng chéng】🎿序的参【xù de cān】数是在命令行中直接输入或通过配【tōng guò pèi】🍼置文件指定。

二、 网卡安装前的准备

在安装【zài ān zhuāng】网卡前,务必检🌨查是否具备下【jù bèi xià】🚏列条件:

1.硬件方面

●以太网卡

●网络连【wǎng luò lián】接线及连接头,如10base-T一般为【yī bān wéi】🐔8芯双绞🗺线配RJ-45接口【jiē kǒu】📄

2.软件方面

●Linux操作系统

●网卡驱动程序(目标码或源代码)

●*网卡配置程序

●*软件开【ruǎn jiàn kāi】发工具【fā gōng jù】,如GNU工具包(包括编🥎译器💋gcc、make等【děng】🔆)

3.系统配置信息

●可用的端口地址

●可用的中断号

以上不😀带星号【dài xīng hào】标记的是必要条件【tiáo jiàn】🍥,带星号【dài xīng hào】的是视【de shì shì】情况不同而要【tóng ér yào】🦈求的条件【tiáo jiàn】🍥。具体情况在下面进一【miàn jìn yī】🕍步说明。

三、 网卡的安装及配置

第一步:配置以太网卡的工作参数

配置网卡就是🎚配置网卡的🍤工作参数【zuò cān shù】,如端口地址、中断号等。网卡的🍤缺省参数一般【shù yī bān】存储于【cún chǔ yú】🐂网卡内部的⤵EEPROM,这是网【zhè shì wǎng】卡出厂前设置【qián shè zhì】🏇好的。缺省参数在大多数情况下是【kuàng xià shì】可行的【kě háng de】,但如果这些参数与你的系统【de xì tǒng】有冲突【yǒu chōng tū】并且网【bìng qiě wǎng】🚠卡又不支持软件动态🚠设置【shè zhì】🏇,那么你🥤就要使⛪用网卡的🍤设置【shè zhì】🏇程序【chéng xù】。并不是所有的🥞网卡都【wǎng kǎ dōu】要经过【yào jīng guò】🖍这一步,因为有💯些网卡【xiē wǎng kǎ】支持通过驱动软件及其输入⛏参数来确定网【què dìng wǎng】🐁卡的工🍔作参数【zuò cān shù】。可以通🗳过查阅【guò chá yuè】🦖网卡使用说明书来确【shū lái què】定这一【dìng zhè yī】点🎡。

网卡【wǎng kǎ】的⚡设置程【shè zhì chéng】🚂序与驱【xù yǔ qū】动程序🏅不同【bú tóng】,设置程【shè zhì chéng】🚂序仅仅【xù jǐn jǐn】用来对网卡【wǎng kǎ】EEPROM中的设💻置进行【zhì jìn háng】✳修改【xiū gǎi】。网卡【wǎng kǎ】程序本身💧可能运行在其它操作系统下【xì tǒng xià】,如👓WINDOWS95/98、OS/2、DOS等【děng】。如👓果是非【guǒ shì fēi】Linux平台,那你就先在适合设置🖊程序运行的系🕷统中安装网卡【wǎng kǎ】,按设置程【shè zhì chéng】🚂序说明【xù shuō míng】设置🌻网卡【wǎng kǎ】参数【shù】。然后再😼在Linux系统下【xì tǒng xià】安装该👨网卡【wǎng kǎ】。

第二步:安装Linux系统

假如你将要安装【zhuāng】📬以太网【yǐ tài wǎng】卡的🔩Linux系统本【xì tǒng běn】身还未【shēn hái wèi】安装【zhuāng】📬,那么可🐁以先试⭕着在安装【zhuāng】📬Linux的同时【de tóng shí】安装【zhuāng】📬网卡。这一步【zhè yī bù】📡成功的【chéng gōng de】🕖前提是你的🐱Linux发行版⚽本包含将要安装【zhuāng】📬的网卡【de wǎng kǎ】的🔩驱动程序。

运行【yùn háng】📿Linux的安装程【ān zhuāng chéng】序,按提示👡进行操【jìn háng cāo】作🌌,别忘了安装核【ān zhuāng hé】心的网【xīn de wǎng】络部分。当进行【dāng jìn háng】到🚀LAN配置时,安装程【ān zhuāng chéng】序会列💑出它支持的所有网卡【yǒu wǎng kǎ】的类型【lèi xíng】。看看你的网【nǐ de wǎng】💉卡是否【kǎ shì fǒu】榜上有名【míng】🐕。随着Linux发行版🐝本的不【běn de bú】断升级,目前RedHat 6.0已经覆💹盖了常🐸用的网【de wǎng】卡🗃类型【lèi xíng】。如果很【rú guǒ hěn】幸运地🍴你的网【nǐ de wǎng】💉卡恰好在其中,那么下【nà me xià】文讨论🔞的很多步骤都可以不【kě yǐ bú】必考虑了,安装程【ān zhuāng chéng】序会自💱动完成【dòng wán chéng】🔮网卡的【wǎng kǎ de】安装与驱动。但如果🌋没找到🚀适用于你的网【nǐ de wǎng】💉卡类型【lèi xíng】👄,也不必担心⛰,继续下一步【yī bù】。

第三步:手工安装网卡

安装网🦒卡也就是安装【shì ān zhuāng】网🦒卡的驱动🌯程序【chéng xù】🎵。网卡要工作必须要有【xū yào yǒu】💾驱动程【qū dòng chéng】💧序,并且驱【bìng qiě qū】动程【dòng chéng】💧序越成熟越好。驱动程【qū dòng chéng】💧序一般由网卡的➿生产或供应商提供。由于Linux是一个📙起步不久的新兴操作🗡系统,网卡的➿生产商【shēng chǎn shāng】并不一❔定提供Linux环境下⚽的驱动🌯程序【chéng xù】🎵。这时候【zhè shí hòu】你就得从其它【cóng qí tā】途径想【tú jìng xiǎng】💎办法了【bàn fǎ le】,比如到INTERNET上专门👰提供硬【tí gòng yìng】件驱动程【qū dòng chéng】💧序的网站查【zhàn chá】🖥找一下,也可以【yě kě yǐ】在新闻组上贴个求助🔛信息【xìn xī】😭。总之【zǒng zhī】,只有得【zhī yǒu dé】到网卡🏤的驱动🌯程序【chéng xù】🎵后【hòu】,方可进【fāng kě jìn】📱行下一步。

网卡的驱动程序有两【xù yǒu liǎng】种类型。一是可直接使👙用的二【yòng de èr】进制代码;另一种【lìng yī zhǒng】是驱动➕程序的【xù de】🤭源代码。二进制代码一【dài mǎ yī】🥄般是预先编译【xiān biān yì】好的可🎈装载模块【mó kuài】😂。源代码可以编【kě yǐ biān】译成🛬可装载【kě zhuāng zǎi】⌚模块【mó kuài】😂,也可以🎥编译成【biān yì chéng】🛬系统核心的一【xīn de yī】部分🍾。如何把源代码编译成【biān yì chéng】🛬可装载【kě zhuāng zǎi】⌚模块【mó kuài】不👫在本文讨论之【tǎo lùn zhī】列,具体可【jù tǐ kě】👐以查阅🌑驱动程序的【xù de】🤭说明书。

1.可装载模块的使用

系统提🈷供了一👘组命令【zǔ mìng lìng】用于将驱动程【qū dòng chéng】序模块载入内【zǎi rù nèi】👭存执行。这些命令包括🗒modprobe、insmod、Ismod、rmmod。modprobe 与🚅insmod命令功【mìng lìng gōng】能相似【néng xiàng sì】,但是方式各异。

●modprobe 命令使用配置【yòng pèi zhì】文件/erc/config.modules来加载【lái jiā zǎi】可执行【kě zhí háng】🍅模块。要用🍋 modprobe命令加【mìng lìng jiā】载以太网卡的驱动程序☕,可以在🤜 config.modules文件中💌加入【jiā rù】:

alias eth0 drivermodule (drivermodule是驱动【shì qū dòng】程序模【chéng xù mó】🚉块的名㊙称)

这行配【zhè háng pèi】📶置信息把以太【bǎ yǐ tài】网卡的【wǎng kǎ de】设备名与驱动【yǔ qū dòng】💗程序模【chéng xù mó】💼块联系起来🏕。modprobe命令依据这条【jù zhè tiáo】信息,自动加载存放👼于【yú】 /lib/library/xxxx/net目录下【mù lù xià】名为 drivermodule.o的模块。因此要使🙊 modprobe命令找【mìng lìng zhǎo】到驱动📔程序模【chéng xù mó】💼块,必须将该模块🐹放在 /lib/library/xxxx/net目录下【mù lù xià】。

那么驱【nà me qū】动程序🎇的参数如何指【rú hé zhǐ】定呢?还是使🌏用conf.modules文件。方法是在接着【zài jiē zhe】👙上述配🌳置信息【zhì xìn xī】🐦的后面【de hòu miàn】加入下行信息:

options drivermodule parml=valuel,parm2=value2,……

这里🏦parm1 是驱动程序可以接受【yǐ jiē shòu】的参数名【míng】,valuel是该参🍦数值;依次类🥉推【tuī】。

比如【bǐ rú】👉options cs89x0 io=0x200 irq=0xA media=aui

●insmod命令直【mìng lìng zhí】接通过命令行参数将驱动程🦍序模块🎨载入内【zǎi rù nèi】😓存,并可以【bìng kě yǐ】在命令🍏中指定驱动程🦍序参数【xù cān shù】。例如【lì rú】:

insmod drivermodule.o parml=valuel,parm2=value2,……

以上两【yǐ shàng liǎng】⏮个命令中可以使用【yòng】驱动程【chéng】➰序参数【xù cān shù】👕要依据具体的网卡及其驱动程【chéng】➰序而定【xù ér dìng】,要仔细阅读网【yuè dú wǎng】卡及驱【kǎ jí qū】动程【chéng】➰序的说【xù de shuō】明🥔书💑。有的网卡驱动程【chéng】➰序【xù】可以用【yòng】这些参数【shù】📷覆盖网🏘卡本身EEPROM中存储😺的参数【de cān shù】👕。有的则【yǒu de zé】必须使用【yòng】EEPROM中的参Ⓜ数【shù】👕。有的因【yǒu de yīn】🥉为驱动程【chéng】➰序【xù】不自动检测网卡🖲使用的【shǐ yòng de】参数【shù】👕,所以还得把网【dé bǎ wǎng】🤟卡使用【yòng】😳的EEPROM中的参Ⓜ数【shù】👕传给驱动程【chéng】➰序【xù】。

卸载驱动程序模块使用rmmod命令:

rmmod drivermodule.o

2.把驱动程序编译入系统核心

除了以😅可装载模块的【mó kuài de】🛷形式使【xíng shì shǐ】用驱动【yòng qū dòng】程序⛵,还可以【hái kě yǐ】🛎把驱动✡程序⛵编译进Linux核心【hé xīn】📎,以获取👉更高的效率🐉。这种方式需要驱动程序⛵的源代码、Linux核心【hé xīn】📎源代码及其编【jí qí biān】译📍工具。Linux核心【hé xīn】📎的编译过程【guò chéng】🌄包括配置核心【hé xīn】📎、重建依赖关系、生成核🥦心【xīn】代码等步骤。配置核心【hé xīn】📎的过程【guò chéng】🌄是用系【shì yòng xì】统提供的配😘置工具(make config 或make menuconfig)重新生【chóng xīn shēng】⏲成用来编译核心【hé xīn】📎的众多【de zhòng duō】make文件【wén jiàn】的过程【guò chéng】🌄。为了让🤴核心【hé xīn】📎的配置【de pèi zhì】工具了【gōng jù le】解【jiě】🚈你的网卡驱动🔘程序⛵,你需要【nǐ xū yào】修改一【xiū gǎi yī】些核心【xiē hé xīn】📎的配置【de pèi zhì】文件【wén jiàn】。

(1)修改配【xiū gǎi pèi】置文件:主要修【zhǔ yào xiū】😢改核心源代码😵目录下【mù lù xià】🥜

关键词:Linux,操作系统👉,以太网【yǐ tài wǎng】卡

阅读本文后您有什么感想? 已有 人给出评价!

  • 1 欢迎喜欢
  • 1 白痴
  • 1 拜托
  • 1 哇
  • 1 加油
  • 1 鄙视