我想知道如何在重新启动服务时安排自定义脚本运行。
我的用例是每次重启Tomcat服务时都要运行几个命令。我想知道是否有一种方法可以编写脚本并安排它在重新启动Tomcat服务时运行。
我已将tomcat脚本设置为systemd服务。我使用的是Cent OS 7 x64。
答案 0 :(得分:2)
我已经能够通过创建另一个服务并在新服务中整合Tomcat服务的启动停止来实现这一目标。新服务充当包装器服务,首先启动tomcat,然后在tomcat启动时执行我们需要运行的命令。
然后在停止时,它会停止tomcat并运行清理命令。
编辑:我在unix& amp;上找到了另一种方法。 linux stackexchange。 只需在/ etc中创建一个新的systemd .service文件,其中包含并覆盖/ lib中的一部分。例如,创建/etc/systemd/system/tomcat.service以包含.include /lib/systemd/system/tomcat.service
[Service]
ExecStartPre=/home/meuh/myscripttorun some pre args here
ExecStartPost=/home/meuh/myscripttorun some post args here
任何ExecStartPre行都将在ExecStart行之前执行,类似地,任何ExecStartPost都将在tomcat启动后运行。