在云服务器系统中,当我们在执行一些长时间运行的项目时(比如:ftp传输,系统备份等),必须保持SSH 连接,不能关掉窗口,否则会导致执行中断。为了减少我们的等待时间或窗口关闭导致任务被杀掉,我们可以通过 screen 来保持我们的项目正常运行。
首先我们了解一下什么是screen简单来说,screen是一个可以在多个进程之间多路复用一个物理终端的窗口管理器。Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。
-
安装screen
yum install -y screen
-
创建 screen 窗口
-
screen -S name #name可以设置成任意名称,用于标注此screen窗口
显示所有的 screen 进程
screen -ls
-
进入正在运行的会话
-
screen -r 29292(29292.csdn) #screen -r 会话名或进程号
退出screen窗口(不影响程序的运行)
在screen窗口中按Ctrl+a+d,退出screen窗口,此时断开ssh连接也不会影响screen中程序的运行。 -
临时中断退出screen窗口(中断程序运行)
Ctrl+d 保存退出,需要再次运行时执行 screen -r -d 就可以恢复回话了。 -
结束当前回话
exit