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信息。

参考文献:https://blog.csdn.net/yangzhongxuan/article/details/11113431

udevadm命令详解的更多相关文章

  1. Git初探--笔记整理和Git命令详解

    几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...

  2. linux yum命令详解

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  3. Linux下ps命令详解 Linux下ps命令的详细使用方法

    http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...

  4. Docker命令详解

    Docker命令详解   最近学习Docker,将docker所有命令实验了一番,特整理如下: # docker --help Usage: docker [OPTIONS] COMMAND [arg ...

  5. linux awk命令详解

    linux awk命令详解 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分 ...

  6. android adb 命令详解

    ADB (Android Debug Bridge)  是android SDK中的工具,需要先配置环境变量才能使用.起调试桥的作用,可以管理安卓设备.(也叫debug工具) ---------查看设 ...

  7. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  8. Top 命令详解

    Top 命令详解 先感受一下top命令的执行结果吧!哈哈-- top - 17:32:34 up 3 days, 8:04, 5 users, load average: 0.09, 0.12, 0. ...

  9. Ruby Gem命令详解

    转自:http://www.jianshu.com/p/728184da1699 Gem介绍: Gem是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.o ...

随机推荐

  1. babel 基本

    babel的大概知识点 . babel常用的转译器是babel-preset-env. 常用的配置选项是plugins和presets 常用的使用场景是在webpack中 https://www.cn ...

  2. [原]vue - webapp 返回无效 解决方案

  3. 尚硅谷springboot学习10-@PropertySource,@ImportResource,@Bean

    @PropertySource 使用指定的属性文件而不一定是application.xxx 同样可以注入相关内容 @ImportResource 导入Spring的配置文件,让配置文件里面的内容生效: ...

  4. cxgrid合并值相同的某列

    设置 cxGrid 的某列的 CellMerging 属性可使这一列相同值的单元格合并. 1)cxGridDBTableViewColumn1.Options.CellMerging:=true  2 ...

  5. kinematic与static刚体不会触发任何接触回调

    Main.as package{ import Box2D.Common.Math.b2Vec2; import Box2D.Dynamics.b2Body; import Box2D.Dynamic ...

  6. Android Studio 打包时 Signature Version 选择V1还是V2 ?

    只勾选V2会导致 7.0 以下的安卓机出现 INSTALL_PARSE_FAILED_NO_CERTIFICATES 的问题 ,推荐全选. 解决方案一v1和v2的签名使用1)只勾选v1签名并不会影响什 ...

  7. @PathVariable 与@RequestParam

    http://localhost:8080/Springmvc/user/page.do?pageSize=3&pageNow=2 你可以把这地址分开理解,其中问号前半部分:http://lo ...

  8. ionic框架

    ionic 是目前最有潜力的一款 HTML5 手机应用开发框架.通过 SASS 构建应用程序,它提供了很多 UI 组件来帮助开发者开发强大的应用. 它使用 JavaScript MVVM 框架和 An ...

  9. 解决:python 连接Oracle 11g 报错:ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务

    其次,将查询到的service_name替换sid即可:conn=cx_Oracle.connect('hr/admin@localhost:1521/EE.oracle.docker')

  10. 安装 gradle

    Gradle是一种现在很流程的构建工具,目前基本和Maven平分天下,而且大有取而代之的趋势.这篇教程教大家怎么在linux上安装Gradle. 一.获得一台linux服务器 要在linux下安装gi ...