Linux 后台运行的两种方法:screen
和 nohup
使用指南
如有错误,敬请指正
方法一:使用 screen
管理后台任务(推荐)
🔹 安装(如未安装)
sudo apt install screen # Ubuntu/Debian
sudo yum install screen # CentOS/RHEL
🔹 创建或恢复一个名为 mytask
的会话
screen -R mytask
- 如果已存在名为
mytask
的会话,则自动恢复; - 如果不存在,则新建并进入该会话。
🔹 在会话中运行你的任务
python train.py
🔹 暂时离开 screen 会话(任务继续在后台运行)
按下以下键盘组合:
Ctrl + A,然后再按 D
🔹 查看所有会话
screen -ls
🔹 恢复一个会话
screen -r mytask
方法二:使用 nohup
+ &
运行后台命令
适用于不需要交互的简单后台任务。
🔹 命令格式
nohup python train.py > output.log 2>&1 &
nohup
:防止命令因退出终端而被中断。> output.log
:将标准输出写入output.log
。2>&1
:将标准错误输出重定向到标准输出。&
:放入后台运行。
🔹 查看运行中的任务
ps aux | grep train.py
或:
jobs -l
🔹 杀死后台进程
找到对应进程 PID 后执行:
kill -9 <PID>