Warum funktioniert irexec von LIRC beim Booten nicht richtig?

2180
vane

Ich baute LIRCvon Quelle aus und ließ es installieren. Es läuft als systemdDienst beim Booten und funktioniert hervorragend. Ich kann laufen irwund es zeigt die erwartete Ausgabe an. Ich kann laufen ircatund es zeigt, was in der configZeile der lircrcKonfigurationsdatei laufen soll .

Das Problem, das ich habe, ist irexec. Wenn ich es von der Shell aus laufe, funktioniert es gut. Wenn ich es manuell ausführe systemctl start irexec.service, funktioniert es gut. Sobald ich einen Neustart durchführe und es automatisch starten soll, tut es dies, aber es führt meinen Befehl nicht aus. es tut absolut nichts. Es gibt nicht einmal Fehlermeldungen in den Protokollen.

Das Seltsame ist, wenn ich irexec.servicenach dem Neustart einen Neustart durchführe, nachdem er bereits gestartet wurde, funktioniert es einwandfrei und führt meinen Befehl perfekt aus. Irgendwelche Ahnung, warum das passiert?

Dies ist die Datei irexec.service

[Unit] Description=LIRC command handler After=network.target Wants=lircd.service  [Service] Type=simple ExecStart=/usr/bin/irexec /etc/lirc/lircrc  [Install] WantedBy=multi-user.target 

Der irexec.servicestartet immer nachdem der lircd.servicebereits läuft.

BEARBEITEN Ich verwende LIRC 0.9.4-devel

1

1 Antwort auf die Frage

0
The Demz

Had the same issue but in reverse,

Changing the irexec.service file and using the systemctl commands does not seem to work to start and stop the service. A full reboot is needed.

You seem to have forgotten the --daemon option.

This is my irexec.service file:

[Unit] Description=IR Remote irexec config .lircrc loaded on startup After=lircd.service Wants=lircd.service [Service] ExecStart=/usr/bin/irexec --daemon $HOME/.lircrc Type=forking [Install] WantedBy=multi-user.target