
소스로 빌드해서 LIRC
설치했습니다. systemd
부팅 시 서비스 로 실행되며 훌륭하게 작동합니다. 실행할 수 irw
있고 예상되는 출력이 표시됩니다. 실행할 수 있으며 구성 파일 줄 ircat
에서 실행되어야 하는 항목이 표시됩니다 .config
lircrc
내가 겪고 있는 문제는 irexec
. 쉘에서 실행하면 잘 작동합니다. 수동으로 실행해서 실행하면 systemctl start irexec.service
잘 작동합니다. 재부팅하자마자 자동으로 시작되어야 하는데, 실행되지만 명령이 실행되지 않습니다. 그것은 전혀 아무것도하지 않습니다. 로그에는 오류 메시지도 없습니다.
이상한 점은 irexec.service
이미 시작된 후에 부팅 후 다시 시작하면 제대로 작동하고 명령이 완벽하게 실행된다는 것입니다. 왜 이런 일이 발생하는지 단서가 있습니까?
iexec.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
은 (는) 이미 실행 중인 irexec.service
후에 항상 시작됩니다 lircd.service
.
편집하다LIRC 0.9.4-devel을 사용하고 있습니다.
답변1
같은 문제가 있었지만 반대였습니다.
파일 을 변경 irexec.service
하고 명령을 사용하면 systemctl
서비스를 시작하고 중지하는 데 작동하지 않는 것 같습니다.전체 재부팅이 필요합니다.
--daemon 옵션을 잊어버린 것 같습니다.
이것은 내 irexec.service
파일입니다:
[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
답변2
이것은 아마도 분명하지만 여기와 다른 곳에서 모든 답변을 시도했지만 systemctl을 시작하고 부팅 후 irexec를 계속 실행하는 데 아무런 효과가 없었습니다. lirc를 제거하고 다시 설치한 다음 사용자 정의 구성 파일을 /etc/lirc 폴더에 다시 복사하여 문제를 해결했습니다. 이걸 먼저 시도해 봤으면 좋았을 텐데요. 시간이 많이 절약되었을 겁니다.
sudo apt purge lirc
sudo apt install lirc
#then recopy your custom config files
#irexec.lircrc goes in /etc/lirc/
#remote.conf files go in /etc/lirc/lircd.conf.d/
답변3
나에게 있어서 비결은 iexec 서비스를 활성화하는 것이었습니다.
sudo systemctl enable irexec
@The Demz가 필요로 하는 irexec.service에서 --deamon 옵션이 필요하지 않았습니다.
방금 제출했습니다.버그 보고서따라서 iexec는 lircd(after:lircd) 다음에 실행됩니다.