루트 권한으로 시작할 때 Qt 응용 프로그램을 실행해야합니다. 아래는 systemctl을 사용하여 만든 스크립트입니다. QtApp.service
[Unit]
Description=QtApp
[Service]
ExecStart= exec su -l user -c 'export DISPLAY=:0; /QtInst/QtApp'
Restart=always
[Install]
WantedBy=multi-user.target
그러나 서비스를 시작하기 위해 명령을 실행하면 sudo systemctl start QtApp.service
다음과 같은 오류가 발생합니다.
Failed to start QtApp.service: Unit QtApp.service is not loaded properly: Invalid argument.
에러의 상세는 이쪽
systemctl status QtApp.service
● QtApp.service - QtApp
Loaded: error (Reason: Invalid argument)
Active: inactive (dead)
Jul 06 15:23:54 user-pc systemd[1]: [/etc/systemd/system/QtApp.service:5] Executable path is not absolute, ignoring: exec su -l user -c 'export DISPLAY=:0; /QtInst/QtApp'
Jul 06 15:23:54 user-pc systemd[1]: QtApp.service: Service lacks both ExecStart= and ExecStop= setting. Refusing.
Jul 06 15:26:08 user-pc systemd[1]: [/etc/systemd/system/QtApp.service:5] Executable path is not absolute, ignoring: exec su -l user -c 'export DISPLAY=:0; /QtInst/QtApp'
Jul 06 15:26:08 user-pc systemd[1]: QtApp.service: Service lacks both ExecStart= and ExecStop= setting. Refusing.
/QtInst/