一,背景 作为系统管理员,我们经常会有备份数据,导入数据,执行发布变更,资源变更...操作,在早期公司自动化运维并不成熟的情况下,依靠人力手动执行这些操作,或者编写shell脚本来执行这些操作,执行这些操作一般是打开终端,然后执行命令或脚本,那么执行的这个命令会一直占用这个终端,我们称之为前台进程,当终端不小心被我们关闭了,那么该进程也会终止,对于这种事故显然是我们不想看到的
二,简介 GNU Screen是一款由GNU计划开发的用于命令行终端切换的自由软件,用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换
三,安装 流行的Linux发行版(例如Red Hat Enterprise Linux)通常会自带screen实用程序,如果没有的话,可以从GNU screen的官方网站下载
yum install -y screen
rpm -a screen
四,常用命令
screen -S 终端名称 # 新建一个指定名称的终端
Ctrl + a + d # 切换到前台,但是保持后台运行的进程
screen -ls # 查看已经放在后台的进程名称列表
screen -r 名称或ID号 # 进入指定名称的后台程序
五,使用演示 运维系统开发早期,我们需要启动celery_beat和celery_worker进程,为了方便测试我们可以使用screen命令来启动这些前台进程
su - hero
cd heroes_gate
screen -S gate_celery_beat
/home/hero/heroes_gate/venv/bin/celery -A crontask.celery_conf.c beat -l info --logfile=/home/hero/log/heroes_gate_celery_beat.log
ctrl + a + d
screen -S gate_celery_worker
/home/hero/heroes_gate/venv/bin/celery -A crontask.celery_conf.c worker -l info --concurrency=8 --logfile=/home/hero/log/heroes_gate_celery_work.log
ctrl + a +d
screen -ls
screen -r gate_celery_worker
screen -r 5879
标签:heroes,hero,beat,screen,celery,gate,新手,必备,Screen
From: https://blog.51cto.com/u_15703497/9469517