Если вы действительно хотите запустить службу, вы должны добавить
RUN{program}="/bin/systemctl --user start offnet-uart-log.service"
к вашему правилу udev . Для этого потребуется, чтобы ваша служба имела тип oneshot
или exec
, чтобы вызов systemd
возвращался в течение обычного короткого промежутка времени, разрешенного udev
(, см., например. обсуждение здесь Как запустить длительный процесс на событии Udev? и на других страницах, посвященных udev
и автоматическим креплениям.
Этот пост в блоге делает то, что я хочу, и благодаря ему я заменил SYSTEMD_USER_WANTS
на ENV{SYSTEMD_USER_WANTS}
, что заставило его работать.
Я до сих пор не понимаю, зачем нужна конструкция ENV{}
и почему я не нашел ее в документации.