Tôi muốn biết liệu có cách nào Systemd
để khởi động lại A.service
( After
) khi B.service
bắt đầu hoặc tải lại (chỉ tải lại cấu hình), nếu có thể mà không cần chỉnh sửa B.service
được hệ thống cài đặt và nâng cấp.
A.service
nên bắt đầu ngay cả khi B.service
không được cài đặt, vô hiệu hóa hoặc dừng lại.
A.service
:
[Unit]
After = B.service network-online.target
Wants = B.service
[Service]
Type=oneshot
ExecStart = /script.sh start
ExecStop = /script.sh stop
RemainAfterExit=yes
[Install]
WantedBy = network-online.target
B.service
:
[Unit]
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/cmd start
ExecStop=/cmd stop
ExecReload=/cmd reload
PIDFile=/var/run/cmd.pid
[Install]
WantedBy=multi-user.target
Overriding vendor settings
nhưng có vẻ điều này thậm chí dễ dàng hơn và hứa hẹn, chỉ excpetion là tôi không muốnA
dừng lại nếuB
ngừng, chỉA.restart
nếuB.start
, dù sao, tôi sẽ làm một số xét nghiệm sớm và xem nếu có một số cách để quản lý nó, sau đó sẽ cho bạn biết