从零开始学习Linux(五十三):Linux系统进程管理

1、进程简介

进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。

可以查看系统中所有进程、杀死进程以及判断服务器健康状态。

1.1、查看系统中所有进程
ps aux

命令作用:查看系统中所有进程,使用BSD操作系统格式。命令输出结果:

列名 说明
USER 该进程是由哪个用户产生的
PID 进程的ID号
%CPU 该进程占用CPU资源的百分比
%MEM 该进程占用物理内存的百分比
VSZ 该进程占用虚拟内存的大小,单位KB
RSS 该进程占用实际物理内存的大小,单位KB
TTY 该进程是在哪个终端中运行的。其中tty1-tty7代表本地控制台终端,tty1-tty6是本地的字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端。
STAT 进程状态。
START 该进程的启动时间
TIME 该进程占用CPU的运算时间,注意不是系统时间
COMMAND 产生此进程的命令名

进程状态说明:

  • D:不能中断的进程(通常是IO) ;
  • R:运行状态;
  • S:睡眠 ;
  • T:停止状态;
  • Z:僵尸进程;
  • s:包含子进程;
  • +:位于后台;
ps -le

命令作用:查看系统中所有进程,使用Linux标准命令格式。命令输出结果:

1.2、top命令

命令作用:用于动态地监视进程活动与系统负载等信息;
命令格式:top [选项];

  • -d 秒数:指定top命令每隔几秒更新。默认是3秒 在top命令的交互模式当中可以执行的命令
  • ?或h:显示交互模式的帮助
  • P:以CPU使用率排序,默认就是此项
  • M:以内存的使用率排序
  • N:以PID排序
  • q:退出top
top

命令输出结果:

第一行信息为任务队列信息:top - 16:16:32 up 17 days, 22:45, 1 user, load average: 0.11, 0.06, 0.04。

内容 说明
16:16:32 系统当前时间
up 17 days, 22:45 系统的运行时间,本机已经运行17天 22小时45分钟
1 users 当前登录了两个用户
load average: 0.11, 0.06, 0.04 系统在之前1分钟,5分钟,15分钟的平均负载。一般认为小于1时,表示负载较小。如果大于1,表示系统已经超出负荷。

第二行为进程信息:Tasks: 89 total, 1 running, 88 sleeping, 0 stopped, 0 zombie。

内容 说明
Tasks: 89 total 系统中的进程总数
1 running 正在运行的进程数
88 sleeping 睡眠的进程
0 stopped 正在停止的进程
0 zombie 僵尸进程。如果不是0,需要手工检查僵尸进程

第三行为CPU信息:%Cpu(s): 1.0 us, 1.0 sy, 0.0 ni, 96.7 id, 1.0 wa, 0.3 hi, 0.0 si, 0.0 st。

内容 说明
%Cpu(s): 1.0 us 用户模式占用的CPU百分比
1.0 sy 系统模式占用的CPU百分比
0.0 ni 改变过优先级的用户进程占用的CPU百分比
96.7 id 空闲CPU的CPU百分比
1.0 wa 等待输入/输出的进程的占用CPU百分比
0.3 hi 硬中断请求服务占用的CPU百分比
0.0 si 软中断请求服务占用的CPU百分比
0.0 st st(Steal time)虚拟时间百分比。就是当有虚拟机时,虚拟CPU等待实际CPU的时间百分比。

第四行为物理内存信息:MiB Mem : 1829.5 total, 121.3 free, 268.1 used, 1440.1 buff/cache。

内容 说明
1829.5 total 物理内存的总量,单位MB
121.3 free 空闲的物理内存大小
268.1 used 已经使用的物理内存大小
1440.1 buff/cache 作为缓冲和缓存的内存大小

第五行为交换分区(swap)信息:MiB Swap: 0.0 total, 0.0 free, 0.0 used. 1377.8 avail Mem

内容 说明
0.0 total 交换分区(虚拟内存)的总大小
0.0 used 已经使用的交互分区的大小
0.0 free 空闲交换分区的大小
1377.8 avail Mem 交换分区可用内存大小
1.3、查看进程树

命令格式:pstree [选项]
选项说明:

  • -p:显示进程的PID;
  • -u:显示进程的所属用户;

执行命令1:

pstree

执行命令2:

pstree -p
1.4、pidof命令

命令作用:用于查询某个指定服务进程的PID值;
命令格式:pidof 服务名称;

查看apache服务进程号,执行命令:

pidof httpd
1.5、kill命令

查看可用的进程信号,执行命令:

kill -l

常用进程信号表

信号代号 信号名称 说明
1 SIGHUP 该信号让进程立即关闭,然后重新读取配置文件之后重启。
2 SIGINT 程序终止信号,用于终止前台进程。相当于输出ctrl+c快捷键。
8 SIGFPE 在发生致命的算术运算错误时发出. 不仅包括浮点运算错误, 还包括溢出及除数为0等其它所有的算术的错误。
9 SIGKILL 用来立即结束程序的运行。本信号不能被阻塞、处理和忽略。一般用于强制终止进程。
14 SIGALRM 时钟定时信号,计算的是实际的时间或时钟时间。alarm函数 使用该信号。
15 SIGTERM 正常结束进程的信号,kill命令的默认信号。有时如果进程已经发生问题,这个信号是无法正常终止进程的,我们才会尝 试SIGKILL信号,也就是信号9。
18 SIGCONT 该信号可以让暂停的进程恢复执行,本信号不能被阻断。
19 SIGSTOP 该信号可以暂停前台进程,相当于输入ctrl+z快捷键。本信号不能被阻断。

杀死进程命令格式:kill [信号代号] PID;

重启进程号为22354的进程,执行命令:

kill -1 22354

强制杀死进程号为22368的进程,执行命令:

kill -9 22368
1.6、killall命令

命令作用:按照进程名杀死进程。和kill不一样,killall是根据进程名杀死进程;
命令格式:killall [选项] [信号代号] 进程名;
选项说明:

  • -i:交互式,询问是否要杀死某个进程
  • -I: 忽略进程名的大小写;

执行命令杀死apache进程:

killall -9 httpd

进程杀死后再次查看服务的pid,发现没有找到对应的PID。整个过程如下图所示:

1.7、pkill命令

命令作用:按照进程名终止进程,此命令最大的作用是按照终端号踢出用户;
命令格式:pkill [选项] [信号] 进程名;
选项说明:

  • -t 终端号:按照终端号踢出用户;

使用w命令可以查看本机已经登录的用户:

从图中可以看到,有两个登录用户,一个是root,一个是zhoujielun。因为zhoujilun太帅,必须得踢出他。执行命令:

pkill -t -9 pts/1

执行后,再次查看登录的用户信息,发现只剩下root了。如下图所示:

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

推荐阅读更多精彩内容

  • 第一节 进程管理 1.进程简介 进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,...
    littlexjing阅读 488评论 0 1
  • 1.进程的属性 进程ID(PID):是唯一的数值,用来区分进程 父进程的ID(PPID) 启动进程的用户ID(UI...
    王玉伟的伟阅读 2,435评论 0 3
  • 进程管理 进程查看 1、进程简介 进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间...
    全村滴希望阅读 283评论 0 0
  • sleep : 休眠指定的时间ctrl + z :可以将一个正在前台执行的命令放到后台,并且暂停fg :将后台中的...
    含盐量过高的鱼阅读 890评论 0 1
  • 渐变的面目拼图要我怎么拼? 我是疲乏了还是投降了? 不是不允许自己坠落, 我没有滴水不进的保护膜。 就是害怕变得面...
    闷热当乘凉阅读 4,234评论 0 13