加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

linux如何配置网卡

发布时间:2019-12-17 10:38:47 所属栏目:编程 来源:站长网
导读:Linux操作系统以其独有的开放性、稳定性、高效率等特点,受到越来越多有识之士的青睐。随着IT产业巨头纷纷宣布对Linux的支持,Linux正在迅速扩展其应用市场,特别是服务器市

那么驱动程序的参数如何指定呢?还是使用conf.modules文件。方法是在接着上述配置信息的后面加入下行信息:

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

  这里parm1 是驱动程序可以接受的参数名,valuel是该参数值;依次类推。

  比如options cs89x0 io=0x200 irq=0xA media=aui

  ●insmod命令直接通过命令行参数将驱动程序模块载入内存,并可以在命令中指定驱动程序参数。例如:

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

  以上两个命令中可以使用驱动程序参数要依据具体的网卡及其驱动程序而定,要仔细阅读网卡及驱动程序的说明书。有的网卡驱动程序可以用这些参数覆盖网卡本身EEPROM中存储的参数。有的则必须使用EEPROM中的参数。有的因为驱动程序不自动检测网卡使用的参数,所以还得把网卡使用的EEPROM中的参数传给驱动程序。

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

  rmmod drivermodule.o

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

  除了以可装载模块的形式使用驱动程序,还可以把驱动程序编译进Linux核心,以获取更高的效率。这种方式需要驱动程序的源代码、Linux核心源代码及其编译工具。Linux核心的编译过程包括配置核心、重建依赖关系、生成核心代码等步骤。配置核心的过程是用系统提供的配置工具(make config 或make menuconfig)重新生成用来编译核心的众多make文件的过程。为了让核心的配置工具了解你的网卡驱动程序,你需要修改一些核心的配置文件。

  (1)修改配置文件:主要修改核心源代码目录下的四个文件,即drivers/net/CONFIG文件、drivers/net/Config.in文件、drivers/net/Makefile 文件和drivers/net/Space.c文件。CONFIG和Config.in文件用于控制核心配置工具(make config 或make menuconfig)的运行,主要是加入关于是否包括该网卡的支持提示。Makefile 和Space.c文件用于编译核心代码并说明面向核心的接口。详细语句参见下面例子。

  (2)运行核心配置工具:在核心源代码目录下执行make config或 make menuconfig命令。 make config是面向命令行的,通过逐句回答提问来配置核心。由于其在配置过程中不可改变或撤消以前的回答,故多有不便。make menuconfig 则是通过窗口菜单方式,使用起来很方便。就本文而言,你只要在上一步中正确修改了配置文件,那么在config中会出现是否需要该网卡支持的提问,你选择‘y’。或者在menuconfig中的 network菜单中出现表示该网卡的菜单项,把它选上即可。

  (3)重建依赖关系:很简单,执行make dep和make clean命令。

  (4)生成核心代码:执行make zImage 命令。这个命令开始真正编译核心代码,并把核心代码存放为arch/i386/boot 目录下的zImage。

  (5)为了使用新的核心代码,你需要用新的核心代码替换原有的。原有的核心代码一般存放在/boot 目录下,文件名称类似于vmlinuz-v.s.r-m (v.s.r-m)表示核心的版本号)。如vmlinuz-2.0.34-1。执行下列命令:

  cp arch/i386/boot/zImage /boot/vmlinuz-v.s.r-m

  为了安全起见,可以先把原有的核心代码做个备份,以便发生错误时恢复。

  至此,你可以重新引导系统以使用新的带有正确网卡驱动支持的Linux核心。唯一剩下未解决的是驱动程序的参数问题。有些网卡驱动程序如果不输入参数,那它工作就会不正常,甚至根本不工作。由于现在网卡的驱动程序是系统启动时由核心载入运行的,系统启动之后用户就很难改变这些参数了,所以你必须在系统启动时告诉Linux核心网卡驱动程序使用的参数。具体方法有两种:

  (1)在系统引导程序LILO中输入。

  在LILO开始引导系统时,用ether子命令设定以太网卡驱动程序的参数。ether命令的使用方式为:

  LILO:linu xether=IRO.BASE_ADDR,NAME

  这里带下划线的是要输入的部分,IRQ表示中断号,BASE_ADDR表示端口号,NAME表示网卡的设备名。例如:linux ether=15,0x320,eth0

  (2)在LILO配置文件中设定。

  每次在系统启动时再输入驱动程序参数似乎有点过于麻烦。幸好系统提供了LILO的配置文件可以用来永久性的设置Linux系统启动时的子命令。方法是在/etc/lilo.conf文件中的适当位置加入以下一行:

  append=“ether=IRQ, BASE_ADDR,NAME”

  这里带下划线部分的意义同上。加入这一行后,还需要用/sbin/lilo命令把这个配置写入引导程序。

  第四步:网络配置及测试

  安装完网卡就可以配置网络通信了。配置网络简单地就是使用ifconfig命令,

  例如:

  ifconfig eth0 1.2.3.4 netmask 255.0.0.0 up

  最后ping一下网上其它机器的ip地址,检查网络是否连通。

  四、一个以太网卡安装实例

  下面以Cirrus公司生产的Crystal CS8920以太网卡为例,详细说明上述安装配置过程。本例中,有些命令参数,如核心源代码目录等,是以我使用的系统环境为出发点。具体应用中还要加以本地化。为了更接近实际,例子中也包括了对安装中碰到的问题的描述。

 

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读