使用 -X 终止正在运行的指定屏幕仅在重新连接后才有效

使用 -X 终止正在运行的指定屏幕仅在重新连接后才有效

我正在使用 ubuntu 8.04.4 并且想要像这样启动守护进程:

screen -dmS SESSIONNAME script.sh

然后我想用 -X 关闭这些屏幕,就像这样

screen -S SESSIONAME -X kill

但是,这不起作用。只有当我连接和分离该会话时,它才会被上面的命令终止。我做错了什么?我不想通过连接/分离会话来终止它,因为我想使用远程启动/停止守护进程的结构脚本。

- 谢谢

答案1

对于守护进程,您确实不应该在屏幕上运行它们。

在 debian 派生系统(例如 Ubuntu)中,start-stop-daemon 是要使用的东西,RedHat 和 derivertives 也有类似的工具。

阅读手册页,查看一些初始化脚本作为示例。在 Ubuntu 上,您可能需要进行一些深入研究,因为 Upstart 已基本取代了标准初始化脚本。

答案2

尝试这个:

screen -S SESSIONAME -X quit

相关内容