进程和系统监测

监视系统活动和查看进程,滴水不漏

Linux是多任务多用户的操作系统

Linux可以管理多个同时运行的程序,是多任务系统
Linux也会一个多用户的系统
多个用户可以在不同的地方通过网络连接到同一个Linux系统进行操作

多用户多任务的隐患

可能某个用户或者某个任务(其实就是运行着的程序)
在某个时间让Linux系统过载了,意思就是太累了,任务太繁重了
那么这个时候我们就得知道,到底是那个小子干的好事,那个程序在宕我的系统,如何才能停止一个不再响应的程序

w命令:都有谁,在做什么
帮助我们快速了解目前有哪些用户登录着
在这里插入图片描述 我们按照从上到下,从左到右的的顺序分部分解释

**时间:**这是我在运行w命令时的时间

在这里插入图片描述
**表示系统正常运行多长时间:**一旦系统关机或重启,运行时间会归零
up表示运行正常,后边表示时间
在这里插入图片描述

uptime命令:,其实就是w命令的第一行

在这里插入图片描述

时间+正常运行+几个用户+负载区域

负载区域

load是 负载负荷的意思
average是平均值的意思

负载的3个数值

1分钟之内的平均负载
5分钟之内的平均负载
15分钟之内的平均负载
这些数值就表示一段时间内系统的平均活跃进程数,也就是使用CPU处理器的一个进程数目
也就是近1分钟呢有0.01个进程使用的处理器,一个单核的处理器如果负载超过1,那就是过载了,双核的负载超过2就是过载了,以此类推
所以有的服务器如果去查看它负载时的数值达到了50,如果负载值在较长的时间都维持较大的话,就意味着系统可能出问题了,我们可以用另外一个命令会知随时间变化的一个负载曲线图

tload命令:会知随时间变化的一个负载曲线图
tload

在这里插入图片描述
纵坐标表示负载的大小,横坐标表示负载的时间

登录的用户列表

用who命令也可以做到
在w命令中除去第一行,也就是uptime那一行
下边就是一个部分,也就是登录用户的一个列表,显示当下系统中连接的用户是哪几位,做什么任务,任务进行多场时间了

第一列:USER

用户名(登录名)。

第二例:TTY

TTY:登录的终端名称
:0的意思应该是值本地,就是我们目前所在的这个图形终端
tps是指图形终端
tty黑窗口终端,tty终端
添加了一个tty终端后
在这里插入图片描述

第三列:FROM

用户连接到终端的IP地址

第四列:LOGIN@

用户连接系统的时间

第五列:IDLE

用户多久没有活跃了(没有运行任何命令)
idle是英语 不活跃的,空闲的意思

第六列:JCPU

表示该终端所有相关的进程使用CPU(处理器)的时间
每当进程结束就会停止计时,开始新的进程则会重新计时

第七列:PCPU

表示CPU(处理器)执行当前进程所消耗的时间
当前进程就是在WHAT列中显示的程序

第八列:WHAT

表示当下用户正在运行的程序

ps命令和top命令:列出运行的进程

简单来说,进程就是加载到内存中的运行程序
大多数程序运行时都只在内存中启动一个进程
例如Linux中的OpenOffice这个软件
有的程序运行时会创建不少进程
例如Google的Chrome浏览器
每开一个标签栏都会创建一个新的进程
在网络服务器上,一般我们都是Apache这个软件来发送网页的
Apache在运行时就会创建很多进程,分别负责不同的任务
一般的数据库软件,例如MySQL,PostgreSQL也是如此

ps:进程的静态列表

ps是Process Status的缩写
process是进程的意思,status是状态的意思
ps命令用于显示当前系统中的进程
ps显示的进程列表不是随时间而更新的,而是静态的
只是运行ps命令当时的那个状态
或者说是进程的一个快照,英语为snapshot

不加任何参数直接输入ps命令

在这里插入图片描述
显示的有四列

PID:

PID就是进程号
pid是identifier的缩写
每个进程有唯一的进程号

TTY:

进程运行所在终端

TIME

表示进程运行了多久

CMD

就是产生这个进程的程序名
如果你在进程列表看到好几行都好使同样的进程名
那就是同样的程序产生了不止一个进程

ps命令常用参数

ps -ef

列出所有进程
-ef参数可以使ps命令列出所有用户在所有终端的所有进程

在这里插入图片描述

UID

第一列UID 是user identifier的缩写 表示运行此进程的用户

PID

进程号

PPID

parent process ID:程序的父进程号

ps -efH:以乔木状列出所有进程

-efH可以使ps命令按照乔木状列出所有进程,表示出父子进程的缩进

在这里插入图片描述

ps -u用户名:列出此用户运行的进程

ps -u xxx #用实际的用户去替换 xxx
在这里插入图片描述#### ps -aux :通过CPU和内存的使用来过滤进程
ps -aux | less
在这里插入图片描述
默认的结果集是未排好序的,可以通过 --sort参数来排序

我们要根据CPU是使用率来降序排列

比如说,我们要根据CPU是使用率来降序排列:

ps -axu --sort -pcpu | less

在这里插入图片描述这下就可以看出那个进程占用的cpu最多了

我们要根据内存是使用率来降序排列
ps -axu --sort -pmem | less

在这里插入图片描述

将cpu和内存参数合并到一起,并通过管道符显示前十个结果
ps -axu --sort -pcpu,+pmem |head

在这里插入图片描述

pstree 命令:以树形结构显示进程

ps -axjf 和 pstree效果比较类似
以树形结构显示进程

总结

Linux是多任务多用户的操作系统

w

w命令会显示当下哪些用户在系统s行登陆着,在做什么,还可以获知系统的时间,持续运行时间,负载等信息

ps

ps命令显示进程的快照(snapshot),是静态的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值