为什么从 12.04 升级到 14.04 后我的 udev 规则无法重命名内核设备节点

为什么从 12.04 升级到 14.04 后我的 udev 规则无法重命名内核设备节点

在 Ubuntu 12.04 中,我编写了以下 udev 规则来修复/devUSB RF 遥控器的名称。

这些曾经是:

KERNEL=="event[0-9]*", ATTRS{name}=="BTC USB Multimedia Cordless Keyboard", ATTRS{phys}=="usb-0000:00:1a.0-1.2/input0", NAME="input/rfremote0"
KERNEL=="event[0-9]*", ATTRS{name}=="BTC USB Multimedia Cordless Keyboard", ATTRS{phys}=="usb-0000:00:1a.0-1.2/input1", NAME="input/rfremote1"

这有效,在启动时总是/dev/input/rfremote[0, 1]

然后我升级到 14.04 并且它们停止运行并出现以下错误:

[   15.540765] systemd-udevd[382]: NAME="input/rfremote0" ignored, kernel device nodes can not be renamed; please fix it in /etc/udev/rules.d/99-emprex.rules:3
[   15.673842] systemd-udevd[382]: NAME="input/rfremote1" ignored, kernel device nodes can not be renamed; please fix it in /etc/udev/rules.d/99-emprex.rules:4

我如何让规则再次发挥作用?

答案1

正如其他地方回答的那样:https://unix.stackexchange.com/questions/119593/is-there-a-way-to-change-device-names-in-dev-directory

udev 手册页说:

姓名

网络接口使用的名称。有关设置接口名称的高级机制,请参阅 systemd.link(5)。udev 不能更改设备节点的名称,只能创建额外的符号链接。

相关内容