快速业务通道

介绍现代Linux系统的设备管理

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-25
recated by ethtool (8). (array of int)parm: rx_copybreak:Copy breakpoint for copy-only-tiny-frames (int)parm: use_dac:Enable PCI DAC. Unsafe on 32 bit PCI slot. (int)parm: debug:Debug verbosity level (0=none, …, 16=all) (int)注意查看从"depends”开始的那些行. 它描述了r8169这个模块所依赖的其他一些模块.因此Udev也会加载这些模块.

  规则处理和设备节点创建

  如前所述,Udev会为内核中每个设备状态的改变解析/etc/udev/rules.d/ 中的规则.Udev规则可以用于在用户空间操作设备节点的名字/权限/符号链接.

  让我们看一些示例规则,有利于帮助你更好地理解Udev规则.

  内核通过netlink提供的数据可以被Udev用来创建设备节点.这些数据包括主/次设备号对和另外一些设备相关的数据,比如设备/厂商id,设备序列号等.Udev规则可以匹配所有的这些数据,并且用来改变设备节点的名字,创建符号链接,或者注册网络连接.

  下面这个例子展示了怎样书写Udev规则来重命名系统中的一个网络设备.

  我们需要得到一些用于创建规则的设备信息.

  # udevadm info -a -p /sys/class/net/eth0/llooking at device ''/devices/pci0000:00/0000:00:04.0/0000:01:06.0/net/eth0'':KERNEL==”eth0″SUBSYSTEM==”net”DRIVER==”"ATTR{addr_len}==”6″ATTR{dev_id}==”0×0″ATTR{ifalias}==”"ATTR{iflink}==”3″ATTR{ifindex}==”3″ATTR{features}==”0×829″ATTR{type}==”1″ATTR{link_mode}==”0″ATTR{address}==”00:80:48:62:2a:33″ATTR{broadcast}==”ff:ff:ff:ff:ff:ff”ATTR{carrier}==”1″ATTR{dormant}==”0″ATTR{operstate}==”unknown”ATTR{mtu}==”1500″ATTR{flags}==”0×1003″ATTR{tx_queue_len}==”1000″looking at parent device ‘/devices/pci0000:00/0000:00:04.0/0000:01:06.0′:KERNELS==”0000:01:06.0″SUBSYSTEMS==”pci”DRIVERS==”8139too”ATTRS{vendor}==”0×10ec”ATTRS{device}==”0×8139″ATTRS{subsystem_vendor}==”0×10ec”ATTRS{subsystem_device}==”0×8139″ATTRS{class}==”0×020000″ATTRS{irq}==”19″ATTRS{local_cpus}==”ff”ATTRS{local_cpulist}==”0-7″ATTRS{modalias}==”pci:v000010ECd00008139sv000010ECsd00008139bc02sc00i00″ATTRS{enable}==”1″ATTRS{broken_parity_status}==”0″ATTRS{msi_bus}==”"looking at parent device ‘/devices/pci0000:00/0000:00:04.0′:KERNELS==”0000:00:04.0″SUBSYSTEMS==”pci”DRIVERS==”"ATTRS{vendor}==”0×10de”ATTRS{device}==”0×03f3″ATTRS{subsystem_vendor}==”0×0000″ATTRS{subsystem_device}==”0×0000″ATTRS{class}==”0×060401″ATTRS{irq}==”0″ATTRS{local_cpus}==”ff”ATTRS{local_cpulist}==”0-7″ATTRS{modalias}==”pci:v000010DEd000003F3sv00000000sd00000000bc06sc04i01″ATTRS{enable}==”1″ATTRS{broken_parity_status}==”0″ATTRS{msi_bus}==”1″looking at parent device ‘/devices/pci0000:00′:KERNELS==”pci0000:00″SUBSYSTEMS==”"DRIVERS==”"你可以发现Udev拥有大量关于这个网络设备的信息.让我们深入检查一下:

  KERNEL=="eth0" :- 该设备的内核名字是eth0DRIVERS==”8139too” :- 加载的驱动程序是8139tooATTR{address}==”00:80:48:62:2a:33″ :- 该设备的硬件地址ATTRS{vendor}==”0×10ec” :- 厂商 idATTRS{device}==”0×8139″ :- 设备 id让我们创建一个规则来将这个网络设备重命名为eth1 (这个名字将是永久性的并且重启系统以后也不会复原).

  >[root@arch ~]# cat /etc/udev/rules.d/70-persistent-net.rulesSUBSYSTEM==

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号