在 VPS 上,我有一个 24/7 运行的 Python 脚本。由于各种原因,我需要该脚本来重新启动每个小孩。小时,基本上只需要每2-3-4小时重新启动一次。我也许能够找到一个解决方案来在代码中做到这一点,但我更愿意看看是否可以在 Linux 上做到这一点。
为了启动它,我使用nohup python3 myscript.py
.有什么办法可以做到这一点吗?我需要外部依赖吗?
答案1
您可以运行 usecron
来安排脚本每 X 小时运行一次。当新实例启动时,它
- 定位现有实例(检查
/var/run/{scriptname}.pid
) - 如果存在则杀死它
- 将自己的进程ID写入
/var/run/{scriptname}.pid
- 继续直到被下一个杀死
的变体cron
还可以让您在系统引导时启动脚本。
更好的解决方案是创建/安装脚本作为 systemd 服务,并且让它成为定期重新启动。