linux系统管理之工作管理
编辑linux系统管理之工作管理
工作管理简介
- 工作管理指的是在单个登录终端中(也就是登录的shell界面中)同时管理多个工作的行为
注意事项
-
当前的登录终端只能管理当前终端的工作,而不能管理其他登录终端的工作
-
放入后台的命令必须可以持续运行一段时间,这样我们才能捕捉和操作这个工作
-
放入后台执行的命令不能和前台用户有交互或者需要前台输入,否则放入后台只能暂停而不能执行
把进程放入后台
-
tar -zcf etc.tat.gz /etc &
命令后面加上&
把命令放入到后台,并在后台执行 -
top
执行命令按下ctrl +z
快捷键,放在后台暂停;(Ctrl + C
终止命令执行)
查看后台的工作
-
jobs -[l]
: 选项-l
显示工作的 PID -
如下图top命令是用来查看系统的健康状态的,放入后台会停止,和用户有交互的需要输入的或者需要用户查看的,都无法在后台运行
注意:
+
号代表最近一个放入后台的工作,也是工作恢复时,默认恢复的工作,-
号代表倒数第二个放入后台的工作;
-
压缩解压缩或者find查找是可以放入到后台的(虽然需要用户查看结果,但是一旦执行就不需要用户交互了)
find / -name abc &
从根目录开始查找 abc字符串, 用jobs 命令查看会经历 Running ,Done ,再次查看就不在后台了
将后台暂停的工作恢复到前台执行
fg %工作号
,如果直接执行fg
那么恢复由+号标识的命令恢复到前台执行- 参数 -%工作号: %可以省略,但是注意工作号和PID的区别;
把后台暂停的工作恢复到后台执行
ctrl + z
暂停任务;jobs
查看任务,会返回任务编号a以及具体内容;bg %a
后台继续执行该任务,a 是第2步返回的,不是瞎填的;- 再次 jobs 可以查看任务处于执行状态 Running。
-
bg %工作号
, 如果直接执行bg
那么恢复由+号标识的命令恢复到后台执行 -
**注意:**后台恢复执行的命令,是不能和前台有交互的,否则不能恢复到后台执行,只能使用fg命令恢复到前台执行
-
例如之前执行的
top
命令和vi
编辑命令就不可以放在后台执行,只能恢复到前台执行,然后正确操作然后退出即可
后台命令脱离终端
-
简介:把命令放入后台,只能在当前终端执行,一旦退出或者关闭终端,后台程序就会停止
- 正常退出终端 logout或者被强制踢出,都会关闭当前终端的后台程序 ,相当于
kill -l
查看的信号1SIGHUB
- 关闭终端系统发出SIGHUB 信号,终止当前终端后台任务,重启重新加载配置
- 正常退出终端 logout或者被强制踢出,都会关闭当前终端的后台程序 ,相当于
-
/usr/local/mysql/bin/mysqld --user=mysql &
启动mysql并且在后台执行,但是该条命令比较特殊不会随着终端的关闭而停止运行,mysql将其作为守护进程daemon
启动 ,相当于服务 -
但在实际的系统管理中添加守护进程比较复杂,并且增加了系统管理的难度,不常使用
后台命令脱离登录终端执行的方法
-
第一种方法是把需要后台执行的命令加入
/etc/rc.local
文件,配置自启动文件,开机自动执行,不需要手动重新启动 -
里面自带一句
touch /var/lock/subsys/local
用于记录系统启动时间 -
第二种方法就是使用系统定时任务,让系统在指定的时间执行某个后台命令
-
这种方法不够稳定,有时候不会生效
-
第三种方法就是使用
nohup
命令;标准方法让后台任务脱离当前终端
- 0
- 0
-
分享