[systemd-devel] Pairing udev's SYSTEMD_WANTS and systemd's templated units

Ivan Shapovalov intelfx100 at gmail.com
Thu Jul 31 05:55:40 PDT 2014


Hello all,

I'm trying to start from an udev rule a templated systemd unit, whose instance
should be a properly escaped device node path (so that %i.device would represent
an existing unit). Which udev specifier should I use for this?

Or, in more clear wording:

given the rule:

ACTION=="add", ..., TAG+="systemd", ENV{SYSTEMD_WANTS}+="foo@$some_specifier.service"

and the unit foo at .service:

[Unit]
After=%i.device
BindsTo=%i.device
...

Which $some_specifier should I use in the udev rule to get %i.device in
my service file to refer to the valid and corresponding device unit?

The closest match I've got is "sys%p", but it does not work because dashes are not
escaped, and I get
"sys-devices-pci0000:00-0000:00:1d.0-usb4-4-1-4-1.2.device"
instead of
"sys-devices-pci0000:00-0000:00:1d.0-usb4-4\x2d1-4\x2d1.2.device"
and so on.

Thanks,
-- 
Ivan Shapovalov / intelfx /
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 213 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.freedesktop.org/archives/systemd-devel/attachments/20140731/00d5e0e2/attachment.sig>


More information about the systemd-devel mailing list