nohup
(no hang-up)命令允许您在后台运行程序,即使关闭终端或断开SSH连接,程序也会继续运行
nohup
命令启动程序。例如,如果您要运行名为my_script.sh
的脚本,可以使用以下命令:nohup ./my_script.sh &
这里,&
符号将程序放入后台运行。
nohup
会自动将输出重定向到名为nohup.out
的文件。如果您想将输出重定向到其他文件,可以使用以下命令:nohup ./my_script.sh > output.log 2>&1 &
这将把标准输出和标准错误都重定向到output.log
文件。
disown
命令。首先,找到进程的PID(进程ID)。您可以使用ps
或pgrep
命令来查找PID。例如:ps aux | grep my_script.sh
或者
pgrep -f my_script.sh
找到PID后,使用disown
命令将其从当前shell会话中分离:
disown -h <PID>
将<PID>
替换为实际的进程ID。
systemd
或supervisord
等工具来管理后台进程,这些工具提供了更多的控制和保护功能,例如自动重启进程、监控进程状态等。使用这些方法,您可以确保在Debian中使用nohup
运行的进程不会被意外杀死。