在 Ubuntu 系统中,使用 nohup
命令可以让进程在 SSH 断开连接后继续运行
使用 nohup
命令:
在启动进程时,使用 nohup
命令。例如,如果你要运行名为 my_script.sh
的脚本,可以使用以下命令:
nohup ./my_script.sh &
这将在后台运行脚本,并将输出重定向到名为 nohup.out
的文件。
使用 screen
或 tmux
:
screen
和 tmux
是终端复用器,允许你在单个终端窗口中运行多个会话。当 SSH 断开连接时,你可以重新连接并恢复会话。
例如,使用 screen
:
安装 screen
(如果尚未安装):
sudo apt-get install screen
启动新的 screen
会话:
screen -S mysession
在新会话中运行你的进程,例如:
./my_script.sh
按 Ctrl-A
然后按 D
键,以便从当前会话分离并返回到常规终端。
当你准备好重新连接会话时,可以使用以下命令:
screen -r mysession
如果有多个会话,你将看到一个会话列表,可以通过会话名称或 ID 来选择。
对于 tmux
,过程类似于 screen
。首先安装 tmux
,然后使用 tmux new-session
启动新会话,运行进程,最后使用 tmux attach-session
重新连接会话。
使用这些方法之一,你可以确保在 SSH 断开连接时,进程仍然在后台运行。