udevadm命令详解

udevadm是Linux系统中用于控制udev守护进程的工具,它能够处理内核事件,管理设备事件队列,并提供调试功能。通过各种选项,如--debug、--version、--help等,用户可以获取设备信息、触发设备事件或查看事件队列状态。此外,还可以使用udevadm monitor监听内核和udev事件,以及模拟设备事件进行调试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

udevadm 后接一个命令和命令指定选项。它控制了udev运行的行为,处理内核事件,控制事件队列,并且提供简单的调试机制。

选项:

–debug 打印错误信息

–version 打印版本信息

–help 帮助文档

udevadm info [options] 查询udev数据库中的设备信息。也可以从sysfs文件系统中查询到设备的属性以辅助创建udev规则。

–query=type     从数据库中查询指定类型的设备。需要–path和–name来指定设备。合法的查询文件是:设备名,链接,路径,属性

–path=devpath    设备的路径

–name=file      设备节点或者链接

–attribute-walk    打印指定设备的所有sysfs记录的属性,以用来udev规则匹配特殊的设备。该选项打印链上的所有设备信息,最大可能到sys目录。

–device-id-of-file=file 打印主/从设备号

–export-db      输出udev数据库中的内容

udevadm trigger [options]  接收内核发送来的设备事件。主要用于重放coldplug事件信息

(译者补充:内核在启动时已经检测到了系统的硬件设备,并把硬件设备信息通过sysfs内核虚拟文件系统导出。udev扫描sysfs文件系统,根据硬件设备信息生成热插拔(hotplug)事件,udev再读取这些事件,生成对应的硬件设备文件。由于没有实际的硬件插拔动作,所以这一过程被称为coldplug。)

–verbose     输出将要被触发的设备列表。

–dry-run      不真的触发事件

–type=type     触发一个特殊的设备。合法的类型:devices,subsystem,failed.默认是devices

–action=action  被触发的事件,默认是change

–subsystem-match=subsystem  触发匹配子系统的设备事件。这个选项可以被多次指定,并且支持shell模式匹配。

–attr-match=attribute=value    触发匹配sysfs属性的设备事件。如果属性值和属性一起指定,属性的值可以使用shell模式匹配。如果没有指定值,会重新确认现有属性。这个选项可以被多次指定。

–attr-nomatch=attribute=value   不要触发匹配属性的设备事件。如果可以使用模式匹配。也可以多次指定

–property-match=property=value 匹配属性吻合的设备。可以多次指定支持模式匹配

–tag-match=property       匹配标签吻合的设备。可以多次指定。

–sysname-match=name     匹配sys设备名相同的设备。可以多次指定支持模式匹配。

udevadm settle [options]  查看udev事件队列,如果所有事件全部处理完就退出。

–timeout=seconds     等待事件队列空的最大时间。默认是180秒。如果是0则立即退出。

–seq-start=seqnum    只等待到给定的顺序号。

–seq-end=seqnum    只等待到给定顺序号之前。

–exit-if-exists=file     如果文件存在就退出

–quiet    不输出任何信息

udevadm monitor [options]  监听内核事件和udev发送的events事件。打印事件发出的设备。可以通过比较内核或者udev事件的时间戳来分析事件时序。

–kernel  输出内核事件

–udev  输出udev规则执行时的udev事件

–property  输出事件的属性

–subsystem-match=string  通过子系统或者设备类型过滤事件。只有匹配了子系统值的udev设备事件通过。

–tag-match=string  通过属性过滤事件,只有匹配了标签的udev事件通过。

udevadm test [options] devpath  模拟一个udev事件,打印出debug信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值