You are not logged in.
Hi,
I used to have a "device" dependency in a service unit file, which stopped to work several weeks ago (not sure when exactly).
Arch Wiki and systemd man page describes that it should still work and that e.g. block devices should create a dev-sda2.device:
Using units
systemd.device — Device unit configuration
Yet, I do not have any dev-*.device unit running:
# systemctl list-units | grep ' dev-' | cut -d" " -f3
dev-hugepages.mount
dev-mqueue.mount
dev-mapper-vg01\x2dlv_swap.swap
And all seem to be prefixed sys-*.device and show a full path now:
# systemctl list-units | grep ' sys-' | cut -d" " -f3
sys-devices-pci0000:00-0000:00:1c.0-0000:01:00.0-net-eno1.device
sys-devices-pci0000:00-0000:00:1c.0-0000:01:00.1-net-eno2.device
sys-devices-pci0000:00-0000:00:1d.0-usb2-2\x2d1-2\x2d1.1-2\x2d1.1:1.0-tty-ttyACM0.device
sys-devices-pci0000:00-0000:00:1d.0-usb2-2\x2d1-2\x2d1.2-2\x2d1.2:1.0-ttyUSB0-tty-ttyUSB0.device
sys-devices-pci0000:00-0000:00:1f.2-ata2-host1-target1:0:0-1:0:0:0-block-sda-sda1.device
sys-devices-pci0000:00-0000:00:1f.2-ata2-host1-target1:0:0-1:0:0:0-block-sda-sda2.device
...
Further, I have a udev rule for a Z-Wave device:
UBSYSTEM=="tty", SUBSYSTEMS=="usb", ATTRS{idProduct}=="0200", ATTRS{idVendor}=="0658", SYMLINK+="zwave-stick", TAG+="systemd"
Man page says that systemd-udev.service should be running. In Arch, there is systemd-udevd.service, which hopefully is the one needed:
# systemctl list-units | grep -e 'udev' | cut -d" " -f3
systemd-udev-trigger.service
systemd-udevd.service
systemd-udevd-control.socket
systemd-udevd-kernel.socket
After boot, the device zwave-stick exists, yet as per above listing there is no "dev-zwave-stick.device" nor "sys-zwave-stick.device" created and there is only a device unit for sys-*-ttyACM0.
# ls -la /dev/zwa*
lrwxrwxrwx 1 root root 7 Apr 25 22:33 /dev/zwave-stick -> ttyACM0
Any idea how to let systemd create the dev-zwave-stick.device unit?
--
Milan Knizek
http://knizek.net
Offline