282 字
1 分钟
Ubuntu 后台运行程序
Screen
apt install screen # 安装 screenscreen -s yolo # 开启名为 yolo 的 sessionpython train.py ... # 开始训练
完成后先不要放开不管,把当前的 ssh 连接断开,并重新连接。
输入如下指令,查看所有 screen 的 session :
screen -ls
输入如下指令,回到刚才创建的 session ,如果 yolo 训练在正常进行就没有问题了:
screen -r 350924 # screen -r yolo
如果想要关闭这个 session 可以使用如下指令:
screen -r 350924 # 回到创建的 sessionexit # 退出并关闭 session
Ctrl + A + D
退出当前会话
nohup
后台运行 python 脚本:
nohub python main.py
- 执行命令后程序会在前端运行,此时
Ctrl+C
可关闭程序 - 执行命令后如果关闭终端,程序则会在后台运行
查找后台运行的 python 脚本:
ps aux | grep python
systemctl
创建新的 service:
sudo vim /etc/systemd/system/my-app.service
将以下内容写入文件:
[Unit]Description=App DescriptionAfter=network.target
[Service]Type=simpleUser=rootGroup=rootExecStart=/root/anaconda3/bin/python /root/main.pyRestart=no
[Install]WantedBy=multi-user.target
重新加载服务:
sudo systemctl daemon-reload
启动服务:
sudo systemctl start my-app.service
查询服务状态:
sudo systemctl status my-app.service
开机自启动服务:
sudo systemctl enable my-app.service
Ubuntu 后台运行程序
https://fuwari.vercel.app/posts/ubuntu/ubuntu-后台运行程序/