MY_SERVICE@SOME_SERVICE.service
추가 해서 OnFailure=
튼튼하게 만들고 싶어요 . 예를 들어 에서는 해당 섹션 에 이 행을 포함하고 /lib/systemd/system/apache2.service
싶습니다 .[email protected]
[Unit]
이는 으로 수행할 수 있습니다 systemctl edit
. 그러나 기본적으로 apache2.service
포함된 경우 OnFailure=
(예: 최신 버전으로 업데이트한 후) 변경 사항이 덮어쓰여집니다. 기본값 OnFailure=
과 고유한 값 OnFailure=
(예: )을 원합니다.OnFailure=default.service [email protected]
이 목표를 어떻게 달성할 수 있나요?
기본 콘텐츠/lib/systemd/system/apache2.service
[Unit]
Description=The Apache HTTP Server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
Environment=APACHE_STARTED_BY_SYSTEMD=true
ExecStart=/usr/sbin/apachectl start
ExecStop=/usr/sbin/apachectl stop
ExecReload=/usr/sbin/apachectl graceful
PrivateTmp=true
Restart=on-abort
[Install]
WantedBy=multi-user.target
/lib/systemd/system/apache2.service
뒤에 오는 내용 systemctl edit
(4행 추가)
[Unit]
Description=The Apache HTTP Server
After=network.target remote-fs.target nss-lookup.target
[email protected]
[Service]
Type=forking
Environment=APACHE_STARTED_BY_SYSTEMD=true
ExecStart=/usr/sbin/apachectl start
ExecStop=/usr/sbin/apachectl stop
ExecReload=/usr/sbin/apachectl graceful
PrivateTmp=true
Restart=on-abort
[Install]
WantedBy=multi-user.target
/lib/systemd/system/apache2.service
새로운 기본 서비스 로 콘텐츠 업데이트(4행 수정)apache2
OnFailure=
[Unit]
Description=The Apache HTTP Server
After=network.target remote-fs.target nss-lookup.target
OnFailure=default.service [email protected]
[Service]
Type=forking
Environment=APACHE_STARTED_BY_SYSTEMD=true
ExecStart=/usr/sbin/apachectl start
ExecStop=/usr/sbin/apachectl stop
ExecReload=/usr/sbin/apachectl graceful
PrivateTmp=true
Restart=on-abort
[Install]
WantedBy=multi-user.target
답변1
당신이 달리면systemctl edit apache2
/etc/systemd/system/apache2.service.d
에서는 기본적으로 오버레이 조각을 생성해야 하며 에서는 원본 콘텐츠를 편집하지 않습니다 /lib
. 코드 조각에 다음을 추가합니다.
[Unit]
[email protected]
왜냐하면OnFailure
목록이고,코드 조각에서 재설정되지 않음, 위에 제공된 값은 원래 단위로 지정된 항목에 추가되며 대체되지 않습니다.