linux 中的进程管理

linux中的进程管理

什么是进程

进程的定义
程序是指程序运行时的形态(静态的代码文件)
进程是指程序运行时的形态
进程是程序的一个副本
进程是有生命周期的(准备期 运行期 终止期)

进程与线程
进程是资源调用的最小单位

线程是程序的最小单位。

进程参看命令

查看进程的两种形式(图形化和非图形化)
gnome-system-monitor
ps
在这里插入图片描述

在这里插入图片描述
ps ##进程查看
##a 与终端相关的进程(当用户登陆系统后产生的进程都是带终端的)(终端指输入设备)
##x 与终端无关的相关进程
##u 用户信息归类的查看方式
##f 进程层级关系
##o 显示指定参数 pid ,comm ,nice ,pri ,pcpu ,ppid ,stat ,user,group
user 进程所有 人
pid 进程id
pri 进程的优先级
pcpu 进程的优先级
ppid 系统子进程的id
stat 进程的运行状态
user 进程的发起者
group 进程的组
comm 进程名称

  ax的组合使用       就显示了当前的所有进程  

在这里插入图片描述在这里插入图片描述
USER 进程所有人
PID 进程id
%CPU 进程使用cpu的用量
%MEM 进程所用到的内存用量
VSZ 进程所用到的虚拟内存的大小
RSS 进程常驻内存中的的数据大小
TTY 进程用到的终端
STAT 进程状态
START 进程运行时间
TIME 进程占用cpu时长
COMMAND 进程名称
在这里插入图片描述
在这里插入图片描述

  ##-e  显示所有进程
  ##-f  显示信息的完整格式
  ##-H  显示进程的完整结构    
  ##-o  显示指定参数
  ##--sort=      (按照某个变量排序) ps axo pid,comm,nice,%cpu --sort=%cpu

注:以上的参数为两种类型的表示方式(都可以使用)

进程状态
R runing #可执行态
S intrruptable #可唤醒状态
D unintrruptable #不可唤醒状态
T stop #暂停状态
Z zombie #僵死状态

进程过滤
pgrep #进程过滤命令
#-u uid 显示指定用户进程
#-U user 显示指定用户进程
#-t tty 显示指定终端进程
#-l 显示进程名称
#-a 显示进程的完整名称
#-p 显示进程的子进程
在这里插入图片描述

pidof 反向寻址,可以通过pidof +进程名称,来查找这个这个进程的id
在这里插入图片描述
动态进程的查看
top ##动态进程查看
top - 11:31:05 up 2:25, 1 user, load average: 0.14, 0.18, 0.15

                ##11:31:05     系统时间
                ##up  2:25     运行时长
                ##1 user       系统中用两个用户登陆
                ##load average: 0.14, 0.18, 0.15
                                1min  5min   15min
                ##Tasks:

Tasks: 229 total, 4 running, 225 sleeping, 0 stopped, 0 zombie
## Tasks: 229 total 任务总量
## 225 sleeping 休眠任务数量
## 0 stopped, 被暂停的任务
## 0 zombie 僵死的任务数量
#
##%Cpu(s)在这里插入图片描述

top 命令参数 (外部参数)

   #-d    指定刷新率
     -b    以批次方式显示
     -n    指定显示的批次数量

在这里插入图片描述

#top内部指令
      #P     cpu 排序   (进入top中之后按 P 会按照cpu的利用率进行排序)
      #M     内存排序    
      #T     累计占用cpu时间排序
      #l     关闭/开启uptime信息
      #t     关闭/开启 cpu&task
     #s     指定刷新率
     #k     操作进程              (可以执行指令)
     #u     查看指定用户进程

在这里插入图片描述在这里插入图片描述
进程优先级
范围:0-139
内核自控优先级范围:0-99
用户可控优先级:100 -139
nice值的范围是 -20 到19 总共40个 ,数值越小优先级越高
用户只能将自己的优先级调低
在这里插入图片描述

+ ##暂停一个进程(把占用shell的进程打入后台)
fg ##继续这个进程(把后台挂起的进程调回前台)
bg ##把后台挂起的进程运行起来
& ##运行程序在后台
jobs ##参看当前shell中在后台的所有工作
暂停期间输入的内容,会在程序再次运行时被输入进去

进程信息相关操作

1 #重新加载系统配置文件
2 #清空内存中的进程数据
3 #清空内存中的鼠标(ctrl+\)
9 #强行结束进程(不能被阻塞)
15 #正常关闭进程(会被阻塞)
18 #运行被暂停的进程
19 #暂停进程 (不会被阻塞)
20 #暂停进程
阻塞:如果这个进程比较重要且在使用,部分会被阻塞的应用,虽然执行这个命令但是无法关关掉这个进程

kill 进程信号 pid #对进程进行操作
killall 进程信号 进程名称 #对符合进程名的进程批量进行操作
pkill 进程信号 进程条件 #(对符合条件的进程进行操作,可以指定进程所有者等等条件,相当于扩大般的killall)
进程条件(一类进程)
需要在进程信号前加  -
systemd 守护进程
什么是守护进程
守护进程(daemon)是生存期长的一种进程,没有控制终端。它们常常在系统引导装入时启动,在系统关闭时关闭
#通常pid为1
#systemd ------>systemctl
#systemctl 管理系统服务

systemctl命令的用法
systemctl start 进程名 #开启服务
systemctl stop 进程名 #暂停服务
systemctl status 进程名 #查看服务状态
systemctl reload 进程名 #重新加载指定服务
systemctl restart 进程名 #重新启动指定服务
systemctl enable 进程名 #设定服务开机启动
systemctl enable --now 进程名 #设定系统开机启动并开启服务
systemctl disable 进程名 #设定系统开机时不启动
systemctl disable --now 进程名 #设定系统开机时不启动并结束服务
systemctl list-units #查看系统所有服务当前状态
systemctl list-unit-files #查看服务开机状态
systemctl list-dependencies #列出服务依赖性
systemctl mask 进程名 #冻结指定服务
systemctl unmask 进程名 #解锁指定服务
systemctl set-default #设定系统运行模式
#mnlti-user.target 无图形网络模式
#graphical.target 有图形网络模式
systemctl get-default ##查看系统运行模式

在这里systemctl    list-units      插入图片描述
在这里systemctl   list-unit-files        插入图片描述

在这里插systemctl   list-dependencies   入图片描述

C/S架构:服务端与客户端的区别
一般认为提供服务的主机为服务端,使用功能的为客户端

系统中登陆的审计

w #显示正在登陆系统的账号
## - i 显示登陆来源
##/var/run/utmp 对应文件的位置
last ##登陆成功现在已经退出的
##/var/log/wtmp 对应文件位置
lastb ##试图登陆但未成功
##/var/log/btmp 对应文件位置

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Antonhu/article/details/112801900
今日推荐