参考链接:
Screen 官方站点:http://www.gnu.org/software/screen/
Screen 官方使用手册:http://www.gnu.org/software/screen/manual/screen.html
使用方法:
使用SSH登录远程服务器时,如果终端由于各种原因与服务器断开连接,那么当前运行的程序都会终止;为了避免这种情况,在CentOS(其余Linux发行版类似)中有多种方法让程序在后台一直运行。
1. nohup命令
nohup 命令会忽略所有挂断(SIGHUP)信号,可以在退出帐户/关闭终端之后继续运行相应的进程。 在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中。 使用方法:
- 输入命令
nohup 正常命令 &
,然后回车使命令生效,同时会输出该命令的pid值; - 输入
exit
命令退出终端,此时命令即可在后台运行。
2. screen命令
Screen是一款用于命令行终端切换软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。 Screen中所有的会话都独立地运行,并拥有各自的编号、输入、输出和窗口缓存。用户可以在不同窗口间切换,并可以自由地重定向各个窗口的输入和输出。
安装方法:
- 在线安装:
1
2yum install epel-release
yum install screen - 离线安装:按需下载RPM软件包(链接),输入命令
rpm -ivh x.rpm
即可完成安装
常用命令:
- 创建一个名字为name的会话并自动切换到改会话:
1
screen -S name
- 切换到名为name的会话:
1
screen -r name
- 查看当前所有screen会话:
1
screen -ls
- 如果切换到screen时提示会话Attached,可以尝试detach会话:
1
screen -d name