利用Udev在linux设备装载时实现易于识别的设备文件名.docVIP

利用Udev在linux设备装载时实现易于识别的设备文件名.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用Udev在linux设备装载时实现易于识别的设备文件名   摘 要:随着计算机技术和的发展应用的推广,计算机挂载的设备越来越多,虽然linux依据设备类型分配了设备文件名, 比如eth0, eth1,sda,sdb, 但是人们不查看具体的设备信息,无法从这类名字上判断那是哪一个硬件设备。在计算机维护中,如果有设备需要临时装载移除或者热插拔,往往系统同类设备的编号就会混乱,比如人们插拔硬盘,往往sdb,sdc这些设备序号就会混乱。人们在实际工作中往往希望,linux能将连接的设备设定易于识别的设备文件,这样不但区分识别,而且方便人们实习自动备份等一系列自动功能,在面向用户的设备中提升用户体验。文章简要介绍udev在linux系统的使用,在ubuntu 12.04 LTS中使用的实例。   关键词:udev;linux;ubuntu   通过向内核中添加代码也可以实现修改设备文件名称的功能,但是很少人会这样,一是内核升级维护不方便,每次升级内核都要插入代码;二是容易干扰内核运行,每次都要仔细审查加入的代码,同时也容易引入漏洞。udev,简单,方便,成熟。udev是多个linux发行版默认的设备管理器,udev规则易于在不同的发行版之间移植。   1 Ubuntu 12.04.04 LTS中的udev   udev 是Linux kernel 2.6的默认设备管理器,它的目标是接替devfs和hotplug的功能。udev的守护进程通过侦听内核发出来的 uevent 来管理 /dev 目录下的设备文件。它在用户模式下管理/dev目录底下的设备节点,不会对内核的运行产生影响。因此,内核依然会产生设备文件如sda,sdb等,人们利用udev建立设备的软连接一般不会干扰其他软件的运行。通过编写udev规则,人们就可以根据设备的不同属性区分设备,用人们习惯的命名方式设置设备文件名。文章介绍ubuntu 12.04 LFS中udev的使用。2012年4月Udev已经和systemd项目合并,集成成为一体化的启动及设备管理软件。但在ubuntu12.04 LTS发行版中使用的是分离的udev 175版本,启动管理(init)用的还是Ubuntu自己的upstart。系统的预设规则和辅助文件放在/lib/udev/中,用户自定规则应当存在在/etc/udev/rules.d/目录下,用户规则优先级要高于系统预设规则。   2 获取udev规则属性   为编写匹配规则,人们先要获取设备属性信息,在ubuntu12.04.04 LTS中可以通过查看/sys/下的设备属性信息和使用udevadm info命令获取设备属性信息。   2.1 查看/sys/属性文件   /sys目录下将设备信息分类存放,比如,硬盘作为块设备放置在/sys/block/下,人们执行cat /sys/block/sda/device/model查看设备 sda 的model号。执行该命令得到ST3160815AS,那么人们可以建立匹配规则 ATTR {model}==ST3160815AS,规则表示:如设备model为ST3160815AS,匹配该设备。   2.2 通过udevadm info命令   udevadm info打印指定设备的所有sysfs记录的属性,以用来udev规则匹配特殊的设备。不同发行版中,具体命令不同。通过udevadm info获取设备信息是最常用的方法,它可以将设备节点的信息一次获取完,而且可以同时显示设备的子节点和父节点信息,便于人们编写规则。   可见udev规则的匹配是从母节点到子节点的次序,匹配中同时比较设备的母节点和子节点的属性信息,可以看到人们执行test中,同一条规则多次命中,软链接me_link的指向多次被改变。所以人们要在启动时让me_link指向sda1,要增加一个sda1的属性,ATTR{start},分区1的起始扇区号。   ATTRS{model}==ST3160815AS, ATTR{start}==2048 ,SYMLINK+=me_link   这样计算机在启动udev创建的me_link会指向sda1,即第一个硬盘的第一个分区。   参考文献   [1]http:///manpages/karmic/en/man7/udev.7.html.   [2]http:///software/systemd/man/udev.html.   [3]http:///wiki/Udev.   [4]http:///2009/09/18/how-to-write-udev-rules/. 3

文档评论(0)

jingpinwedang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档