linux在后台执行脚本命令nohup & tmux
ssh断开脚本会关闭 用nohup快速创建守护进程
yum install coreutils -y
nohup 这里填脚本命令 &
如果想中断查看进程然后kill进程
ps -ef | grep 进程名比如java
kill -9 [PID]
通过nohup和&符号在后台执行命令后,如果想回到这个进程你可以使用screen命令重新连接。
tmux比nohup方便,建议使用tmux新建会话
yum install tmux -y
新开一个会话:tmux new -s session_name
启动进程后回到原本界面的方法: 先按下ctrl+b,然后再单独按d
显示在运行的会话: tmux ls
重新回到会话的方法:tmux a -t session_name
查看会话中历史记录:先按ctrl+b,然后按Page Up ,Page Down
可以同时新建多个会话s1,s2,s3
在会话间切换的命令: 先按ctrl+b ,再按s,然后就可以在会话间选择其中一个,按enter进入。
防止服务器意外重启后程序中断,还可以设置开机自动启动python程序在后台运行
可以先创建一个sh脚本
vi autostart.sh
#!bin/bash
nohup /usr/bin/python3 这里填脚本命令 &
保存后 chmod +7 autostart.sh
systemctl status rc-local.service 确定服务正常运行否则下面的两步操作
chmod +7 /etc/rc.d/rc.local # CentOS7下权限被降需要先提权才能执行.
systemctl enable rc-local.service # 将服务添加开机启动
systemctl start rc-local.service # 启动服务
之后在root权限下编辑 vi /etc/rc.d/rc.local 添加刚才写的sh脚本
简单的程序也可以直接在rc.local中直接加入 nohup /usr/bin/python3 这里填脚本命令 & 跳过sh步骤之后 保存重启即可
以上内容参考下面链接
https://blog.csdn.net/jpmsdn/article/details/86298134
https://blog.csdn.net/weixin_41519463/article/details/89963166
https://blog.csdn.net/lkp1603645756/article/details/99973386