Linux系统进程管理

ps组合命令 ps -aux 

在linux中可以使用ps命令查看进程配合grep命令可以快速的查找到服务的进程

常见的组合有ps -ef 、ps -aux

常见参数为:

a: 显示跟当前终端关联的所有进程

u: 基于用户的格式显示(U: 显示某用户ID所有的进程)

x: 显示所有进程,不以终端机来区分

[root@desktop-dcct8ee ~]# ps -aux

USER        PID %CPU %MEM    VSZ  RSS TTY      STAT START  TIME COMMAND

root          1  0.0  0.1 190984  3920 ?        Ss  9月11  0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22

root          2  0.0  0.0      0    0 ?        S    9月11  0:00 [kthreadd]

roo   521  0.0  0.0 190328  1344 ?        Ss  9月11  0:00 /usr/sbin/lvmetad -f

root        524  0.0  0.1  45648  3204 ?        Ss  9月11  0:00 /usr/lib/systemd/systemd-udevd

注:最后一列[xxxx] 使用方括号括起来的进程是内核态的进程。 没有括起来的是用户态进程。

上面的参数输出每列含意:

USER: 启动这些进程的用户

PID: 进程的ID

%CPU 进程占用的CPU百分比; %MEM 占用内存的百分比; 

VSZ:进程占用的虚拟内存大小(单位:KB) RSS:进程占用的物理内存大小(单位:KB) 

STAT:该程序目前的状态,Linux进程有5种基本状态:

R :该程序目前正在运作,或者是可被运作;

S :该程序目前正在睡眠当中 (可说是 idle 状态啦!),但可被某些讯号(signal) 唤醒。

T :该程序目前正在侦测或者是停止了;

Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态

D  不可中断状态.  

5个基本状态后,还可以加一些字母,比如:Ss、R+,如下:

它们含意如下::

    <: 表示进程运行在高优先级上

    N: 表示进程运行在低优先级上

    L: 表示进程有页面锁定在内存中

    s: 表示进程是控制进程

    l: 表示进程是多线程的

    +: 表示当前进程运行在前台

START:该 process 被触发启动的时间;

TIME :该 process 实际使用 CPU 运作的时间。

COMMAND:该程序的实际指令

ps组合命令 ps -ef

ps常用的参数: ps -ef

  -e  显示所有进程

  -f  显示完整格式输出

[root@desktop-dcct8ee ~]# ps -ef |more

UID        PID  PPID  C STIME TTY          TIME CMD

root          1      0  0 9月11 ?      00:00:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22

root          2      0  0 9月11 ?      00:00:00 [kthreadd]

root          3      2  0 9月11 ?      00:00:00 [ksoftirqd/0]

root          5      2  0 9月11 ?      00:00:00 [kworker/0:0H]

root          7      2  0 9月11 ?      00:00:00 [migration/0]

root          8      2  0 9月11 ?      00:00:00 [rcu_bh]

包含的信息如下

UID: 启动这些进程的用户

PID: 进程的ID

PPID: 父进程的进程号

C: 进程生命周期中的CPU利用率

STIME: 进程启动时的系统时间

TTY: 表明进程在哪个终端设备上运行。如果显示  ?表示与终端无关,这种进程一般是内核态进程。另外,tty1-tty6 是本机上面的登入者程序,若为 pts/0 等,则表示运行在虚拟终端上的进程。

TIME: 运行进程一共累计占用的CPU时间

CMD: 启动的程序名称

例1:测试CPU使用时间。

dd if=/dev/zero of=/a.txt count=10 bs=100M

[root@localhost ~]# ps -axu | grep dd

注:

ps aux 是用BSD的格式来显示进程。

ps -ef 是用标准的格式显示进程

uptime查看系统负载

[root@desktop-dcct8ee ~]# uptime

00:45:16 up  4:55,  2 users,  load average: 0.00, 0.01, 0.05

弹出消息含意如下:

00:45:16 当前时间

up  4:55 系统运行时间 ,说明此服务器连续运行20天了

2 user当前登录用户数

load average: 0.00, 0.01, 0.05系统负载,即任务队列的平均长度。 三个数值分别为  1分钟、5分钟、15分钟前到现在的平均值。

如果服务器的CPU为1核心,则load average中的数字>=3  负载过高,如果服务器的CPU为4核心,则load average中的数字>=12  负载过高。

经验:单核心,1分钟的系统平均负载不要超过3,就可以,这是个经验值。

top命令动态查看


进程和CPU的信息( 第二、三行)

Tasks: 481 total进程总数

1 running正在运行的进程数

480 sleeping睡眠的进程数

0 stopped停止的进程数

0 zombie僵尸进程数

Cpu(s): 0.0% us系统用户进程使用CPU百分比。

0.0% sy内核中的进程占用CPU百分比

0.0% ni用户进程空间内改变过优先级的进程占用CPU百分比

98.7% id空闲CPU百分比

0.0% wacpu等待I/0完成的时间总量。

内存信息(第四五行)

Mem: 2033552k total物理内存总量

340392k used使用的物理内存总量

1376636k free空闲内存总量

316524k buff/cache用作内核缓存的内存量。

和free -k 一个意思

Swap: 2017948k total交换区总量

0k used使用的交换区总量

192772k free空闲交换区总量

1518148 avail Mem总的可利用内存是多少

第7行进程信息

PID进程id

USER进程所有者的用户名

PR优先级(由内核动态调整),用户不能

NI进程优先级。 nice值。负值表示高优先级,正值表示低优先级,用户可以自己调整

VIRT(virtual memory usage)虚拟内存,是进程正在使用的所有内存(ps中标为VSZ)

VIRT:virtual memory usage 虚拟内存

1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等

2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量

RES(resident memory usage)是进程所使用的物理内存。实际实用内存(ps中标为RSS)

RES:resident memory usage 常驻内存

1、进程当前使用的内存大小,但不包括swap out

2、包含其他进程的共享

3、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反

4、关于库占用内存的情况,它只统计加载的库文件所占内存大小

SHR共享内存大小,单位kb

SHR:shared memory 共享内存

1、除M了自身进程的共享内存,也包括其他进程的共享内存

2、虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小

3、计算某个进程所占的物理内存大小公式:RES – SHR

4、swap out后,它将会降下来

S进程状态。            D=不可中断的睡眠状态            R=运行中或可运行            S=睡眠中            T=已跟踪/已停止            Z=僵停

%CPU上次更新到现在的CPU时间占用百分比

%MEM进程使用的物理内存百分比

TIME+进程使用的CPU时间总计,单位1/100秒

COMMAND命令名/命令行

top快捷键:

默认3s刷新一次,按s修改刷新时间

按空格:立即刷新。

q退出

P:按CPU排序

M:按内存排序

T按时间排序

p: 进程IP,查看某个进程状态

数字键1:显示每个内核的CPU使用率

u/U:指定显示的用户

h:帮助

lsof命令

lsof命令用于查看你进程打开的文件,打开文件的进程,进程打开的端口(TCP、UDP)

-i<条件>:列出符合条件的进程。(4、6、协议、:端口、@ip )

-p<进程号>:列出指定进程号所打开的文件;

[root@desktop-dcct8ee ~]# lsof -p 3178

COMMAND  PID USER  FD  TYPE            DEVICE  SIZE/OFF    NODE NAME

screen  3178 root  cwd    DIR              253,0      208 33574977 /root

screen  3178 root  rtd    DIR              253,0      224      64 /

screen  3178 root    2w  CHR                1,3      0t0    1028 /dev/null

screen  3178 root    4u  unix 0xffff9278b654f800      0t0    49598 /var/run/screen/S-root/3178.pts-2.desktop-dcct8ee

screen  3178 root    5u  REG              0,20      3072    17681 /run/utmp

screen  3178 root    7u  CHR              136,2      0t0        5 /dev/pts/2

[root@desktop-dcct8ee ~]# lsof -i :22

COMMAND  PID USER  FD  TYPE DEVICE SIZE/OFF NODE NAME

sshd    961 root    3u  IPv4  17250      0t0  TCP *:ssh (LISTEN)

sshd    961 root    4u  IPv6  17252      0t0  TCP *:ssh (LISTEN)

pstree工具使用

pstree工具是用于以树形的形式查看进程

常用参数  -p  指定显示进程端口PID

[root@desktop-dcct8ee ~]# pstree

systemd─┬─NetworkManager───2*[{NetworkManager}]

        ├─VGAuthService

        ├─auditd───{auditd}

        ├─chronyd

        ├─systemd-udevd

        ├─tuned───4*[{tuned}]

        └─vmtoolsd───{vmtoolsd}

进程的优先级

优先级取值范围为(-20,19),越小优先级越高, 默认优先级是0

命令1:nice  指定程序的运行优先级

格式:nice n command

命令2:renice   改变程序的运行优先级

格式:renice -n pid

例1:指定运行vim的优先级为5

[root@desktop-dcct8ee ~]# nice -n 5 vim a.txt

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,736评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,167评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,442评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,902评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,302评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,573评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,847评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,562评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,260评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,531评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,021评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,367评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,016评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,068评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,827评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,610评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,514评论 2 269