종료 시 스크립트를 실행하는 데 사용되는 시스템 서비스 파일이 시작 시 실행되도록 변경되었습니다.

종료 시 스크립트를 실행하는 데 사용되는 시스템 서비스 파일이 시작 시 실행되도록 변경되었습니다.

나는 이러한 서비스 파일을 작성하는 것이 처음이고 스택 및 유닉스 오버플로에 대한 몇 가지 블로그를 따라 시스템 서비스 파일을 작성했습니다.

종료 시 실행해야 하는 스크립트가 있고 docker 데몬이 실행되어야 합니다. 서비스 파일은 다음과 같습니다

[Unit]
Description=Shutdown script
Before=shutdown.target
Requires=docker.service

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStop=/path/to/script

[Install]
WantedBy=multi-user.target

쉘 스크립트(스크립트 실행)에 다음을 추가하여 인스턴스의 시작 스크립트에서 위 서비스를 자동으로 생성/활성화하려고 합니다.

chmod +x /path/to/script
if [ ! -f "/etc/systemd/system/path.service" ]; then
  cp  file/path.service /etc/systemd/system/path.service
  systemctl daemon-reload
fi
systemctl enable path.service

종료할 때마다 실행하고 싶지만 인스턴스 시작 시 실행됩니다. 위 서비스 파일에 제가 실수한 것이 있나요?

답변1

[Install]
WantedBy=multi-user.target

종료 시 서비스를 실행하는 대신 시작 시 서비스를 실행하십시오. 당신이 원하는

[Install]
WantedBy=shutdown.target

관련 정보