나만의 애플리케이션이 있고 이를 서비스로 실행하고 싶습니다. 루트 권한이 필요하지 않습니다. 나는 단지 서비스를 시작하고, 정상적으로 종료하고(예: SIGINT
몇 초 기다림 SIGKILL
), 매시간 실패하면 다시 시작하고, 상태를 가져오는 등 systemd
서비스와 관련된 모든 것을 원합니다. 운영 체제가 시작될 때 시작할 필요가 없으며 모든 서비스 목록에 포함할 필요도 없습니다.
제한 사항은 루트 권한이 필요할 수 없으며 어떤 방식으로든 시스템에 설치되어서는 안 된다는 것입니다(또는 적어도 시스템에 침입해서는 안 됩니다).
~/.config/systemd/user/loved.service
다음에 위치하면 작동하게 되었습니다 systemctl --user link ~/loved.service
. 하지만 애플리케이션 폴더에서 직접 실행하는 것이 더 좋습니다.
systemctl
다음과 같은 상황에서 사용할 수 있다고 생각합니다 .
systemctl --user start ~/loved.service
이것을 실행하면 다음과 같은 결과를 얻습니다.
Failed to start ....mount: Unit ....mount not found.
물론 설치는 제가 원하는 것이 아닙니다.
어떻게 해야 하나요?
답변1
systemd를 사용하여 사용자 서비스를 시작하는 구문은 다음과 같습니다.
systemctl --user start service-name
systemd
~/.config/systemd/user
일치하는 파일이 발견됩니다 .