다음 현상은 Arch Linux와 Ubuntu Artful에서 재현 가능하므로 systemd
다시는 에 대한 세부 정보를 얻지 못한다고 결론을 내립니다.
Docker 데몬이 서비스로 시작된 후 실행될 명령을 추가하고 싶습니다 systemd
.
systemctl edit docker.service
나는 평가 수단을 사용하여 편집자를 호출 하고 다음을 입력합니다.
[Service]
ExecStartPost=true
이제 해당 내용이 포함된 파일 이 있으며 확인하기 위해 /etc/systemd/system/docker.service.d/override.conf
호출합니다 .systemctl daemon-reload
이제 구문 분석된 단위를 표시 systemctl show docker.service
하고 지시문은 출력에 표시되지 않습니다 ExecStartPost
. 그러나 예상한 대로입니다. A는 systemd-analyze verify
아무것도 산출하지 않습니다.
그렇다면 ExecStartPost
대체 파일의 가 에 의해 장치의 일부로 간주되지 않는 이유는 무엇입니까 systemd
?
재정의 지시어가 포함된 파일이 실제로 평가되는지 테스트하기 위해 다음 콘텐츠를 시도했습니다.
[Service]
ExecStart=
ExecStart=foo
혼란스럽게도 ExecStart
이제 systemctl show docker.service
.
이 경우 첫 번째 지시어가 고려되는 반면 두 번째 지시어는 고려되지 않는 이유를 누군가 나에게 설명할 수 있습니까?
답변1
내 실수는 다음과 같은 명령에 대한 절대 경로를 지정하지 않은 것 같습니다.
[Service]
ExecStartPost=/bin/true