nohup
(no hang up)命令用于在Linux和Unix系统中使进程忽略挂起(SIGHUP)信号,从而在用户退出系统或关闭终端后继续运行
使用nohup
命令启动进程:
nohup your_command &
这将在后台运行your_command
,并将输出重定向到名为nohup.out
的文件。&
符号表示将进程放入后台运行。
使用disown
命令将已运行的进程从当前shell会话中分离:
首先,找到要分离的进程的进程ID(PID)。你可以使用ps
命令或pgrep
命令来查找PID。例如:
ps aux | grep your_command
或者
pgrep your_command
然后,使用disown
命令将进程从当前shell会话中分离:
disown -h %PID
将%PID
替换为实际的进程ID。
使用screen
或tmux
等终端复用器:
终端复用器允许你在一个终端窗口中运行多个终端会话,并在需要时与它们断开和重新连接。这样,即使你关闭了终端,进程也会继续运行。
例如,使用screen
:
安装screen
(如果尚未安装):
sudo yum install screen
启动新的screen
会话:
screen -S your_session_name
在screen
会话中运行你的命令,然后按Ctrl-A
接着D
来分离会话。此时,你的进程将在后台继续运行。
要重新连接到会话,请运行:
screen -r your_session_name
如果你已经有多个screen
会话,可以使用screen -ls
列出它们。
通过以上方法之一,你可以确保在CentOS中使用nohup
启动的进程在关闭终端或退出系统后继续运行。