什么是udev和udev规则
Udev 是用于创建和命名与系统中存在的设备相对应的 /dev 设备节点的机制。
Udev 使用 sysfs 提供的匹配信息和用户提供的规则来动态添加所需的设备节点。
/dev 目录下没有设备的静态文件,设备由 udev(或者 udevd)动态创建/删除,udev(或者 udevd)是一个守护进程,监视哪些设备连接/断开到内核,并相应地运行其他适当的脚本。
手动在 /dev 目录下创建文件或者更改其文件属性没有任何影响,手动修改将被忽略或者可以自动修改。
这篇文章介绍了如何通过 udev 配置 /dev 目录下的设备文件的属性。
udev的常用配置文件在/etc/udev/rules.d目录下,描述了创建设备文件的规则。
文件必须具有 .rules 扩展名/后缀和唯一名称,其他文件将被忽略。
这些文件按词法顺序引用,因此 60-raw.rules 在 70-persistent-net.rules 之前引用,并且后面的规则会覆盖前面的规则,除非我们在后面的规则文件中指定豁免。
注意: .rules 文件的语法在 udev 手册页中描述。
更多: zhilu jiaocheng
使用 udev 规则更改文件所有者/组
让我们看一个使用 udev 规则将设备 /dev/sdx 的所有者/组更改为 oracle/oinstall 的示例。
- 添加一个名为 /etc/udev/rules.d/99-perm.rules 的文件,其中包含以下行。
文件名可以是带有适当数字前缀的任何内容,例如 99.
# vi /etc/udev/rules.d/99-perm.rules KERNEL=="sdx", OWNER="oracle", GROUP="oinstall"
- 使用“udevadm”命令测试新规则。
如下面的输出所示,规则应用于设备 /dev/sdx。
# udevadm test /block/sdx 2>&1 | grep "OWNER\|GROUP" udev_rules_apply_to_event: OWNER ## /etc/udev/rules.d/99-perm.rules udev_rules_apply_to_event: GROUP ## /etc/udev/rules.d/99-perm.rules
其中## 显示oracle/oinstall 的UID/GID。
- 运行 udevadm 激活新规则并检查更改:
# udevadm control -reload-rules # udevadm trigger /block/sdx
- 验证/dev/sdx 设备的权限。
# ls -al /dev/sdx brw-rw----. 1 oracle oinstall 202, 0 Nov 9 14:20 /dev/sdx
注意:配置udev规则后不需要重启系统,但推荐进行重启。
日期:2020-09-17 00:13:18 来源:oir作者:oir