首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在X时间间隔之后重新启动脚本

在X时间间隔之后重新启动脚本
EN

Server Fault用户
提问于 2018-08-15 16:05:50
回答 2查看 125关注 0票数 0

不确定我是否有意义:我在屏幕会话下对多个AWS实例运行一个脚本。这些脚本基于Python,由于Amazon和EC2实例的网络问题,在一段时间后停止工作。我通过执行screen -d -r <screen_name>访问机器并进入屏幕会话,停止脚本并重新运行。

有什么办法可以让它自动化吗?那就是,重新运行脚本?如果另一个脚本关闭了现有屏幕,然后重新启动,我就没有问题了。

EN

回答 2

Server Fault用户

发布于 2018-08-15 16:08:56

您的主题询问在一定时间之后重新启动脚本。如果这是确切的场景,那么使用cron调用python来运行脚本。我的建议是打开一个外壳,输入man cron,享受眼前展现的奇迹。

如果您想跟踪某个进程是否正在运行,如果没有,请再次启动它,您有几个选项,但是您很可能希望将它写成一个服务,并使用主机操作系统init系统启动它,然后使用Monit、upstart或systemd这样的工具来确保它正在运行并重新启动它。

我得说你刚用读书计划把今年剩下的时间都订完了。=)

票数 0
EN

Server Fault用户

发布于 2018-08-16 02:40:34

我建议创建一个适当的init脚本,在终端多路复用器下运行您的脚本,如果脚本失败,重新启动脚本。然后,在需要时,您可以附加到正在运行的screentmux会话,并监视您的脚本。

在我的例子中,我有几个系统单元,它们在tmux下的控制台上运行golang程序,并将这些golang程序的生命周期(启动、重启失败、关机时停止等)委托给操作系统的“官方”init系统。

我使用了这个问题中的示例作为起点:https://askubuntu.com/questions/802189/how-to-run-tmux-screen-with-systemd-230

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/926537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档