10-3-前后台进程切换- nice进程优先级-实战screen后台执行命令
10.3.1 Linux 后台进程与前台进程的区别
前台进程:是在终端中运行的命令,那么该终端就为进程的控制终端,一旦这个终端关闭,这个进程也随着消失。
后台进程:也叫守护进程(Daemon),是运行在后台的一种特殊进程,不受终端控制,它不需要与终端交互;Linux 的大多数服务器就是用守护进程实现的。比如。Web 服务器 httpd等。
10.3.2 进程的前台与后台运行
跟系统任务相关的几个命令(了解):
10.3.3 kill 关闭进程
关闭进程 3个命令:
kill、killall、pkill
kill 关闭进程:kill 进程号 用于关闭单个进程
killall 和 pkill 命令用于杀死指定名字的进程
通过信号的方式来控制进程的
信号编号 信号名
1) SIGHUP 重新加载配置
2) SIGINT 键盘终端 ctrl + c
3) SIGQUIT 退出
9) SIGKILL 强制终止
15) SIGTERM 终止(正常结束),缺省信号
18) SIGCONT 继续
19) SIGSTOP 停止
20) SIGTSTP 暂停 crtl + z
例1:kill 和 killall终止进程
kill -9 PID 强制终止
killall vim 强制终止所有vim程序
pkill vim
10.3.4 进程的优先级管理
优先级取值范围为(-20,19),越小优先级越高,默认优先级是0
命令1:nice 指定程序的运行优先级
格式:nice n command
命令2:renice 改变程序的运行优先级
格式:renice -n pid (renice 0)
改变后的优先级
10.3.5 实战:使用 screen 后台实时执行命令备份命令
场景:公司晚上需要备份1T数据,在xshell上直接执行备份脚本 back.sh 可以吗?或者直接运行back.sh & 放到后台运行可以吗?当关了 xshell 后,back.sh& 还在后台执行吗?
解决:xshell 长时间连接,如果本地网络偶尔端来或xshell 断开连接,都会让后台的备份命令停止运行的
正确做法使用:screen
10.3.6 screen 概述和安装
Screen 中有会话的概念,用户可以在一个 screen 会话中创建多个 screen 窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH 连接窗口那样
安装 screen 软件包:
yum -y install screen
10.3.7 screen 使用方法
1.直接命令行输入 screen 命令回车
2.vim.txt 执行命令,或执行需要运行的备份命令
3.需要让这个命令继续运行,在screen的当前窗口输入快捷键:ctrl+a -----> d,会分离出来独立的会话
附:常用screen参数
screen -S test -> 新建一个叫test的会话
screen -ls -> 列出当前所有的会话
screen -> 回到test会话
总结:
10.1 进程概述和 ps 查看进程工具
10.2 uptime 查看系统负载 -top 动态管理建进程
10.3 前后台进程切换 -nice 进程优先级 -实战 screen 后台执行命令