我有一个 systemd 服务,在重新启动时停止该服务时遇到问题。
脚本 /home/user1/bin/myscript-shutdown 依赖于文件系统的启动。但看起来文件系统在 /home/user1/bin/myscript-shutdown 完成之前已关闭(磁盘已卸载)。
我如何更正以下问题,以便 ExecStop 脚本在关闭任何系统相关服务(如存储、网络等)之前首先完成。同样,当系统重新启动时,我希望在我的服务启动之前启动所有系统服务(存储、网络)。
我猜诀窍在于“之后/之前/想要”,但我不知道正确的值。
这就是我目前所拥有的:
[Unit]
Description=My Service
After=syslog.target network.target
Wants=network.target
Before=shutdown.target reboot.target halt.target kexec.target
[Service]
RemainAfterExit=yes
User=user1
Group=group1
LimitNOFILE=65536
LimitMEMLOCK=infinity
ExecStart=/home/user1/bin/myscript-startup
ExecStop=/home/user1/bin/myscript-shutdown
TimeoutStopSec=15min
[Install]
WantedBy=multi-user.target