当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Ethernet HOWTO Linux以太网-HOWTO (8)杂项

Unix/Linux
linux查看内存的大小
在linux下写的代码,用的是utf-8,结果拿到XP下运行的时候,所有的中文都成乱码
linux su和sudo命令的区别
linux cron 下的定时执行工具使用技巧
linux 查找进程及终止进程操作的相关命令
redhat linux 安装 gcc编译器
Linux Mplayer播放各种格式的电影
一起回顾一下linux常用命令
Linux 网站项目发布要做哪些配置
linux SSH配合SecureCRT的密匙完美使用方法
GD 编译出错解决方法
Facebook Open Platform编译FAQ
Linux 系统硬盘 优化
linux 挂载详解
linux crontab定时命令
Linux 系统中确保访问三级域名畅通的方法
Linux 特权帐号VS普通帐号
确保Linux系统安全的前提条件 漏洞防护
Linux 监视系统资源使用率
Red Hat Linux上使用BIND建立DNS服务器

Unix/Linux 中的 Ethernet HOWTO Linux以太网-HOWTO (8)杂项


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 23 ::
收藏到网摘: n/a

  --------------------------------------------------------------------------------

9. 杂项

所有不适合放在别处的相关信息都堆在这里。可能不相干,也可能大家不感兴趣,但还是放在这儿了。 


9.1 向内核传递以太网参数 

有两个通用的内核命令可以在启动时向内核传递以太网参数(ether 和reserve)。可以用LILO、loadlin或其它接受可选参数的启动工具完成该操作。 

例如,如果命令为“blah”,希望接收3个参数(假定为123、456和789),那么在使用LILO时就应该如下: 

LILO: linux blah=123,456,789 

要了解启动时参数的更多信息(和完全的列表),请参见 BootPrompt-HOWTO


ether命令

ether=参数与直接构建在内核的驱动程序一起使用。ether=参数对一个模块化的驱动程序完全不起作用。它的最通用形式如下: 


ether=IRQ,BASE_ADDR,PARAM_1,PARAM_2,NAME 
所有的参数都是可选的。第一个非数字的参数被用做NAME。 

IRQ: 很明显。为“0”的IRQ值(一般为缺省值)意味著autoIRQ。首先设置IRQ而不是base_addr是一个历史性的巧合——无论在改变别的什么时都可以顺便改正这一点。 

BASE_ADDR: 也很明显。值为“0”(一般为缺省值)意味著探测以太网卡的网卡类型特定的地址列表。 

PARAM_1: 这开始是用来覆盖WD80*3这样的共享内存网卡的起始内存的值。有些驱动程序使用该值的低4位来设置诊断信息级别。0——缺省值,1-7——级别1..7,(7是最完全的信息)8——级别0(没有信息)。另外,LANCE驱动程序使用该值的低4位来选择DMA通道。否则就使用auto-DMA。 

PARAM_2: 3c503驱动程序使用它来选择内部还是外部收发器。0——缺省/内部,1——外部AUI。Cabletron的E21XX网卡还使用PARAM_2的低4位来选择输出媒介。否则就自动检测。 

NAME: 选择该值所指的网络设备。标准内核对附属于总线的以太网卡使用名称“eth0”、“eth1”、“eth2”和“eth3”,对并口“袖珍”以太网适配器使用“atp0”。arcnet驱动程序使用名称“arc0”。可以使用这些LILO参数明确设置基址来启用多块网卡。1.0内核把基于LANCE的以太网卡作为特殊情况进行处理:LILO参数被忽略,LANCE网卡总是被分配为从“eth0”开始的名称“eth”。附加的非LANCE网卡必须被明确指定为“eth”,并用诸如“ether=0,-1,eth0”的方式禁止通常的“eth0”探测。(对,这是个Bug。) 


reserve命令

这个紧接著的LILO命令用法与上面的“ether=”一样,即附加在lilo.conf里指定的启动选择名称后面。 


reserve=IO-base,extent{,IO-base,extent...} 
在某些机器上,可能需要防止设备驱动程序在某个特定区域里检查设备(自动探测)。其原因可能是由于设计低劣的硬件使启动冻结(如某些以太网卡)、被错误识别的硬件、在较早的探测中状态被改变的硬件、或者仅仅是不想让内核初始化硬件。 

启动时的参数reserve通过指定无需探测的I/O端口区域来解决这个问题。该区域保留在内核的端口注册表里,就象该区域里已经发现了一个设备一样。注意,这一机制在大多数机器上是不必要的。只有在有问题或特定的情况下才有必要使用它。 

指定区域里的I/O端口受到保护,不被设备探测影响。在某些驱动程序被NE2000挂起,或其它设备被错误地识别为NE2000时使用这一方法。正确的设备驱动程序不该探测一个保留区域,除非另一个启动参数明确指定它这么做。这隐含了reserve经常与其它启动参数一起使用。因此,如果指定了一个reserve区域来保护某个特定设备,通常就必须明确指定对该设备的探测。大多数驱动程序在给定了明确地址后就忽略了端口注册表。 

例如,启动行 


LILO: linux reserve=0x300,32 ether=0,0x300,eth0 
使以太网卡驱动程序以外的所有设备驱动程序都不探测0x300-0x31f。 

一般启动时的参数限制是11个,因此每个reserve关键词只能指定5个保留区域。如果请求很复杂,可以使用多个reserve指令。 


9.2 把以太网驱动程序作为模块使用 

现在大多数Linux发行版里的内核都只包含很少几个内建的驱动程序。驱动程序都采用独立的动态可加载模块的形式提供。这些模块化驱动程序通常由管理员使用modprobe(8)命令载入,或者在某些情况下由内核通过“kerneld”(在2.0版)或“kmod”(在2.1版)自动载入,然后调用modprobe。 

你所用的发行版可能会提供良好的图形配置工具来设置以太网模块。如果可能就先使用它们。下面描述了在这些花俏的配置程序下的信息,以及这些程序改变了哪些东西。 

控制使用哪些模块和每个模块提供哪些选项的信息一般保存在文件/etc/conf.modules里。在这个文件里使用的两