시스템 단위 서비스 파일을 배포하는 데 사용하려는 서비스를 개발 중입니다.
2개의 단위 서비스 파일이 있습니다. 하나는 "스케줄러"용이고 다른 하나는 "작업자"용입니다. 스케줄러에는 호스트 및 포트에 대한 매개변수가 필요합니다. 또한 작업자는 스케줄러의 호스트와 포트를 가리켜야 합니다.
패키지 작성자는 최종 사용자가 어떤 호스트/포트를 사용할지 모르기 때문에 이러한 사용자 수준 구성이 필요한 시스템 단위 파일을 패키지하는 올바른 방법은 무엇입니까? 시스템 단위 파일에는 매개변수화 기능이 제한된 것으로 보입니다. %i
와일드카드 %I
와 환경 변수 만 systemctl
명령이나 환경 변수 구성 파일 위치에서 전파되지 않으며 하드코딩해야 합니다.
데비안 위키에 따르면https://wiki.debian.org/Teams/pkg-systemd/Packaging#systemd_unit_files_naming_and_installation, 최종 사용자는 이 설정을 적절하게 재정의해야 합니다 ExecStart
. 그럴 수도 있겠지만 패키지화된 시스템 단위 파일에는 기본적으로 사용할 수 있도록 일부 기본값이 있어야 하지 않나요?
그렇다면 분산된 시스템 파일을 127.0.0.1
임의의 포트를 사용하여 간단히 8000
하드코딩 할 수 있습니까?