首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何重新加载udev规则而不重新启动?

如何重新加载udev规则而不重新启动?
EN

Unix & Linux用户
提问于 2012-05-26 00:34:31
回答 6查看 641.9K关注 0票数 311

如何重新加载udev规则,以便新创建的udev能够正常工作?

我正在运行Arch,这里没有udevstart命令。

还检查了/etc/rc.d,那里没有udev服务。

EN

回答 6

Unix & Linux用户

回答已采纳

发布于 2012-05-26 00:59:08

代码语言:javascript
运行
复制
# udevadm control --reload-rules && udevadm trigger
票数 390
EN

Unix & Linux用户

发布于 2012-05-28 00:55:12

Udev使用inotify机制监视规则目录、库和本地配置树(通常位于/lib/udev/rules.d/etc/udev/rules.d)中的更改。因此,大多数情况下,当您更改规则文件时,不需要做任何事情。

您只需要显式地通知udev守护进程,如果您正在做一些不寻常的事情,例如,如果您有一条规则将文件包含在另一个目录中。然后,您可以使用通常的惯例要求守护进程重新加载它们的配置:发送一个SIGHUP (pkill -HUP udevd)。也可以使用udevadm命令:udevadm control --reload-rules

但是,请注意,不同版本的udev历来都有不同的触发器来自动重新加载规则。因此,如果有疑问,打电话给udevadm control --reload-rules:反正也不会有什么坏处。

udev规则仅在添加设备时应用。如果要将规则重新应用于已连接的设备,则需要显式地执行此操作,方法是调用具有正确选项的udevadm trigger来匹配配置已更改的设备(S),例如udevadm trigger --attr-match=vendor='Yoyodyne' --attr-match=model='Frobnicator 300'

票数 87
EN

Unix & Linux用户

发布于 2014-02-21 13:51:46

我增加这个是因为总有一天我会需要它..。再来一次。

有时,您得到一个不正确的匹配以太网设备号码和MAC地址。有时候,这是非常重要的,比如在VM中运行时,每个设备都分配给不同的VLAN。

  1. 关闭网络接口,然后
  2. 修改/etc/udev/rules.d/70-persistent-net.rules (或其等价物)
  3. udevadm control --reload-rules重新加载
  4. udevadm trigger --attr-match=subsystem=net重新触发
  5. 打开网络接口。

我很惊讶这件事有多好。

票数 24
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/39370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档