Why can't my udev rules rename kernel device nodes after upgrading from 12.04 to 14.04

6,150

As answered elsewhere: https://unix.stackexchange.com/questions/119593/is-there-a-way-to-change-device-names-in-dev-directory

The udev manpage says:

NAME

The name to use for a network interface. See systemd.link(5) for a higher-level mechanism for setting the interface name. The name of a device node cannot be changed by udev, only additional symlinks can be created.

Share:
6,150

Related videos on Youtube

RoboJ1M
Author by

RoboJ1M

@RoboJ1M

Updated on September 18, 2022

Comments

  • RoboJ1M
    RoboJ1M over 1 year

    In Ubuntu 12.04 I wrote the following udev rules to fix the /dev name of a USB RF remote control.

    These were:

    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"
    

    This worked, on boot there was always /dev/input/rfremote[0, 1]

    Then I upgraded to 14.04 and these stopped wotking with the following error:

    [   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
    

    How do I get the rules to work again?