我在 Rails 环境中有两个脚本,必须 24/7 运行。我在远程服务器上工作,所以我需要使用 启动脚本ssh
,这意味着我需要一直打开 ssh 窗口。
我正在寻找一种在后台运行这些脚本的简单方法,以便在我关闭 ssh 连接后它们不会被取消。
我不想使用screen
. 我认为必须有更简单的方法来处理这个问题。没有吗?
我在 Rails 环境中有两个脚本,必须 24/7 运行。我在远程服务器上工作,所以我需要使用 启动脚本ssh
,这意味着我需要一直打开 ssh 窗口。
我正在寻找一种在后台运行这些脚本的简单方法,以便在我关闭 ssh 连接后它们不会被取消。
我不想使用screen
. 我认为必须有更简单的方法来处理这个问题。没有吗?
我认为最基本的解决方案是nohup
:
nohup myscript &> /dev/null &
您可以拒绝脚本:
ruby script.rb &!
STDOUT/STDERR 仍然附加到当前 shell,但该ruby
进程不再是 shell 的子进程,因此如果您关闭终端,它不会被杀死。
检查守护进程。它是一个将脚本转换为可控守护进程的工具包。