管理Linux系统中的进程【RHEL8】

1.进程理解

进程(Process)

  • 程序是静态的文件
  • 进程是运行中的程序的一个副本
  • 进程存在生命周期(准备期,运行期,终止期)
    进程状态
状态 定义
R(TASK_RUNNING) 可执行状态(RUNNING,READY)
S(TASK_INTERRUPTIBLE) 可唤醒睡眠状态
D (TASK_UNINTERRUPTIBLE) 不可唤醒睡眠状态
T(TASK_STOPPED) 暂停状态
z( EXIT_ZOMBIE) 僵死态

2.进程查看

pstree
查看进程树 --> 进程用树形结构显示出来
在这里插入图片描述

进程与线程
线程是进程运行的最小单位,进程是资源调配的最小单位
各个进程资源也是独立的
一个进程中的所有资源是被所有线程共享的【例如 打扫房间这个进程中 扫地,拖地线程】
systemd —>守护进程,相当于其下属进程的领导,在系统开启时候会自动打开

ps
显示当前命令执行时进程状态【分别包含UNIX,BSD两种不同格式】

a 显示与终端相关进程(BSD)
x 显示所有与终端无关进程(BSD)
u 以用户为归类来显示进程状态信息(BSD)
f 层级结构显示进程信息
o 指定查看选项,pid,comm,nice优先级,pri,pcpu,stat,ppid
-e 显示所有进程(uinx)
-f 显示完整格式信息(unix)
-H 层级结构显示进程的相关信息
-o 指定查看选项,pid,comm,nice,%cpu,%mem,nice
  • 显示与终端相关进程(BSD)
    在这里插入图片描述
  • 显示与终端无关进程(BSD)
    在这里插入图片描述
  • 显示所有进程
    在这里插入图片描述
  • 显示所有进程的层级结构
    在这里插入图片描述
  • 显示BSD风格的所有进程的相关信息
    在这里插入图片描述
  • 显示所有进程(uinx)
    在这里插入图片描述
  • 显示完整格式信息(unix)
    在这里插入图片描述
  • 层级结构显示进程的相关信息
    在这里插入图片描述
    详细在这里插入图片描述
  • 指定查看选项,pid,comm,nice优先级,pri,pcpu,stat,ppid【BSD风格】
    在这里插入图片描述
  • 指定查看选项,pid,comm,nice,%cpu,%mem,nice【UNIX风格】
    在这里插入图片描述
  • ps命令对当前的程序或者某些资源进行排序
    1.根据cpu进行排序
    正序:
    在这里插入图片描述在这里插入图片描述
    倒序:
    在这里插入图片描述倒序显示前6行:
    在这里插入图片描述ps命令显示信息
字段 解释
USER 用户名称
PID 进程id
%CPU cpu用量百分比
%MEM 内存用量百分比
VSZ 占用虚拟内存大小
RSS 常驻内存集大小
TTY 字符终端
STAT 进程状态
START 运行时间
TIME 占用cpu时间
COMMAND 进程名称

pgrep
显示指定信息进程–>注意此环境之下必须要启动所查询的用户进程

命令 解释
-u uid 显示指定用户进程
-U name 显示指定用户进程
-t tty 显示指定终端进程
-l 显示进程名称
-a 显示完整格式进程名
-P pid 显示指定进程的子进程
  • 显示指定用户进程
    1.查看用户 uid
    在这里插入图片描述
    2.进行筛选
    在这里插入图片描述
  • 显示进程名称&显示指定用户进程
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200205224350977.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzUxOTk1MQ==,size_16,color_FFFFFF,t_70
  • 显示指定终端进程
    1.查看指定进程的终端
    在这里插入图片描述
    2.命令查看
    在这里插入图片描述
  • 显示完整格式进程名
    在这里插入图片描述
  • 显示指定进程的子进程
    1.创建子进程
    在这里插入图片描述2.查询
    在这里插入图片描述
    pgrep
    根据进程名称获取pid
    1.运行一个watch进程
    在这里插入图片描述2.查看该命令操作所对应的进程id
    在这里插入图片描述top
    实时的对于进程信息进行扫描并且显示出来
    1.top内部参数
P cpu百分比排序
M 内存百分比
T 累计占用cpu时间
l 开启/关掉uptime信息
t 开启/关闭task&cpu信息
s 调整刷新频率
k 终止进程
u 查看指定用户进程
  • 查看指定用户进程
    在这里插入图片描述在这里插入图片描述
    2.top命令参数
-d 指定刷新间隔
-b 以批次方式显示
-n 显示批次数量
  • 指定刷新间隔
    在这里插入图片描述
  • 以批次方式显示
    在这里插入图片描述
  • 显示批次数量
    在这里插入图片描述
    3.top显示进程信息详解
top 系统当期时间
up 系统运行时常
user 登录当前系统的用户数量
load average 平均负载1分钟 5分钟 15 分钟的队列长度(uptime)
task 任务
%cpu cpu占用百分比
us 用户空间
sy 内核空间
ni nice调整时间
id 空闲时间
wa 等待io
hi 处理硬件中断
si 处理软件中断
st 被虚拟化程序占用的百分比
mem 物理内存
swap 交换分区占用

3.进程优先级

按照资源占用划分进程类

资源使用量 进程类型
cpu使用密集(计算量大) CPU-Bound
I/O使用密集 I/O-Bound

对于cpu使用密集的程序CPU分量会多,那么对于i/o可能会受阻。为了避免这样的情况发生,可以对cpu使用密集多分配,那么也要提高i/o使用密集程序的优先级。

优先级范围

  • 对Linux而言优先级被划分成固定个数(0-139)
  • 1-99为实时有优先级,数字越大优先级越高,不用手动处理系统自用【不能人为进行干预】
  • 100-139为静态优先级,数字越小优先级越高
    NICE值
  • NICE值:-20~19对用静态优先级【对应的是上面优先级范围的100-139】
  • 普通用户只可以调低优先级,超级用户任意调整
  • 关于优先级的命令
    1.ps ax –o nice,pid,comm
    2.nice –n 优先级 程序
    指定优先级进行开启
    在这里插入图片描述
    3.reince–n 优先级 程序pid
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200206133124649.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzUxOTk1MQ==,size_16,color_FFFFFF,t_70

4.进程前后台调用

进程前后台调用相关命令

指令 含义
jobs 查看后台任务
ctrl+z 将前台运行进程打入后台
bg 激活后台进程
fg 调回进程
& 运行在后台

1.占用终端的进程
在这里插入图片描述2.将前台运行进程打入后台
ps查看发现已经被暂停,不能使用
在这里插入图片描述3.查看后台任务
在这里插入图片描述4.激活后台进程
在这里插入图片描述在这里插入图片描述
然而,该操作不能将vim进程运行起来,因为该进程必需要占用终端提供操作界面,才能运行起来
在这里插入图片描述5.调回进程
在这里插入图片描述
6.运行在后台
在这里插入图片描述

5.信号

可控信号类型
man 7 signal

可控信号 含义
1 刷新【让进程再次读取配置】
2 中断键盘输入
3 退出键盘
9 强制结束
15 正常关闭
18 激活进程
19 强制暂停
20 正常暂停
  • 中断键盘输入
    在这里插入图片描述

  • 退出键盘 ctrl+/
    在看电影时,鼠标就会被隐藏起来

  • 强制暂停
    在这里插入图片描述

  • 激活进程
    在这里插入图片描述

  • 正常暂停【被系统阻塞掉,没有效果】
    系统认为这样做不对,hhh
    在这里插入图片描述

  • 强制结束
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述信号指令
    kill 信号 pid
    pkill 信号 进程名称

    在这里插入图片描述在这里插入图片描述

6.系统守护进程

设置实验环境
1.nm-connection-editor
在这里插入图片描述2.检查是否设置正确
在这里插入图片描述3.ssh建立连接
在这里插入图片描述守护进程的定义

  • 守护进程就是通常讲Daemon进程
  • 是linux后台执行的服务进程
  • 是独立于控制终端、周期性地执行某种任务或等待处理某些发生事件
  • 不会随终端关闭而停止,直到接受停止信息才会结束
    守护进程类型
守护进程类型 使用系统及特点
Sysv init 经典的守护进程类型延用到rhel6
upstart 做到并行启动rhel6中应用
systemd 独立完成启动,rhel7中使用

systemctl用法之一

指令 用途
systemctl list-unit-files 查看服务开机运行情况
systemctl list-units 查看服务当前运行情况
systemctl list dependencies 查看服务依赖性
systemctl status service 查看服务状态
systemctl start service 开启服务
systemctl stop service 关闭服务
systemctl reload service 重新加载服务配置
  • systemctl list-unit-files 查看服务开机运行情况
    在这里插入图片描述
  • systemctl list dependencies 查看服务依赖性
    在这里插入图片描述
  • systemctl status service 查看服务状态在这里插入图片描述
  • systemctl stop service 关闭服务
    在这里插入图片描述
  • systemctl start service 开启服务
    在这里插入图片描述
  • systemctl reload service 重新加载服务配置
    在这里插入图片描述id不会改变
    在这里插入图片描述systemctl用法之二
指令 用途
systemctl restart service 重新启动服务
systemctl enable service 设定服务开启启动
systemctl enable –now service 设定服务开机启动并开启服务
systemctl disable service 设定服务开机关闭
systemctl set-default multi-user.target 设定系统运行级别为无图形网络模式
systemctl set-default graphical.target 设定系统运行级别为图形网络模式
  • systemctl enable service 设定服务开启启动
    在这里插入图片描述
  • systemctl disable service 设定服务开机关闭
    在这里插入图片描述
  • systemctl enable –now service 设定服务开机启动并开启服务
    在这里插入图片描述在这里插入图片描述
  • systemctl set-default multi-user.target 设定系统运行级别为无图形网络模式
    在这里插入图片描述打开无图形界面
    在这里插入图片描述
  • systemctl set-default graphical.target 设定系统运行级别为图形网络模式
    在这里插入图片描述图形界面
    在这里插入图片描述
发布了15 篇原创文章 · 获赞 4 · 访问量 385

猜你喜欢

转载自blog.csdn.net/weixin_43519951/article/details/104184387
今日推荐