首页 > 解决方案 > 服务器重新启动后自动运行的 Bash 脚本

问题描述

我有一个脚本,它会在 2 分钟内重启 tomcat,我希望这个脚本在服务器重启后不断启动,如果有人告诉我该怎么做,我将不胜感激?

#! /bin/bash
sleep 120
systemctl restart tomcat

标签: linuxbashcentos

解决方案


阅读有关 systemd/Timer 的 archwiki有关 systemd.timer 的原始 freedesktop 文档

my_super_tomcat_restarter.timer在中创建一个文件/etc/systemd/system/

[Unit]
Description=Superbly restart my tomcat service every 120 seconds!

[Timer]
OnBootSec=120sec
OnUnitActiveSec=120sec

[Install]
WantedBy=timers.target

创建一个包含内容my_super_tomcat_restarter.service的文件/etc/systemd/system/

[Unit]
Description=Superbly restart tomcat service!

[Service]
Type=oneshot
ExecStart=/usr/bin/systemctl restart tomcat

从您的终端执行root

systemctl enable my_super_tomcat_restarter.timer

计时器应在 120 秒内触发并执行my_super_tomcat_restarter.service,然后将重新启动您的 tomcat 服务。


推荐阅读