在 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 断开连接时,进程仍然在后台运行。