WantedBy=default.target
시스템이 내가 정의한 "준비" 상태가 될 때까지 모든 사용자 단위를 지연시키려고 합니다 .
그래서 저는 몇 가지 Type=oneshot
서비스를 가지고 있습니다 RemainAfterExit=true
. 그들은 (중요하게, 내가 알기로는 그들이Before=
RequiredBy=default.target
ExecStart
기다리다실패하고 다시 시작하는 대신) 준비 상태로 전환한 다음 성공적으로 종료하여 서비스를 활성 상태로 유지합니다.
모든 사용자 조직이 이 옵션으로 설정되어 있으면 After=default.target
작동합니다 .
문제는 이것이 정말 잘못된 방향이라는 것입니다. 그들은 내가 이 일을 하고 있다는 것을 알 필요가 없으며 그 중 일부는 내 통제 범위를 벗어났고(나는 재정의할 수 있음을 알고 있습니다) 패키지에 의해 배포되고 내 프로그램에 의해 활성화되었습니다. 사용자.
Before
서비스가 지정된 대상뿐만 아니라 WantedBy
해당 대상이 됨으로써 트리거되는 모든 항목을 실행하도록 지정할 수 있는 방법이 있습니까 ?
답변1
내가 이해한 바로는 특정 대상이 시작되기 전에 서비스가 실행되기를 원합니다. 이 경우 default.target 이전에 대상에 서비스를 배치할 수 있습니다. 인용하다https://www.freedesktop.org/software/systemd/man/bootup.html
이 페이지에서 동일한 수준에 있는 모든 대상은 동시에 실행됩니다.
추신: 이 질문에 대해서는 논평할 수 없습니다. 이는 정답이 아닐 수도 있습니다.