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