当前位置:首页>Linux>Linux 进程管理详解

Linux 进程管理详解

  • 2026-09-09 01:44:51
Linux 进程管理详解

点击上方“IT那活儿”公众号--专注于企业全栈运维技术分享,不管IT什么活儿,干就完了!!!

基本介绍

在LINUX 中,每个执行的程序都称为一个进程。

每一个进程都分配一个ID 号(pid,进程号)。

=>windows => linux

每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中且直到关机才才结束。

显示系统执行的进程

2.1 基本介绍

ps 命令是用来查看目前系统中,有哪些正在执行,以及它们执行的状况。可以不加任何参数。

如图所示:

其中ps显示的信息项:

字段
说明
PID
进程识别号
TTY
终端机号
TIME
此进程所消耗的CPU的时间
CMD
正在执行的命令或进程名

在ps的选项中其中常用的选项有:

  • -a 显示当前终端所有进程的信息。

  • -u以用户的格式显示进程信息。

  • -x显示后台进程运行的参数。

如图所示:

当三个选项结合使用,如下图所示:

当然也可以配合管道符进行使用,如下图所示:

2.2 Ps详解

以下是对上图的ps所展示出的列项的字段解释:

USER
用户名称
PID
进程号
%CPU
进程占用CPU 的百分比
%MEM
进程占用物理内存的百分比
VSZ
进程占用的虚拟内存大小(单位:KB)
RSS
进程占用的物理内存大小(单位:KB)
TT
终端名称,缩写
STAT
进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
TIME
CPU 时间,即进程使用CPU 的总时间
COMMAND
启动进程所用的命令和参数,如果过长会被截断显示S

2.3 应用实例

要求:以全格式显示当前所有的进程,并查看进程的父进程。

终止进程kill 和killall

3.1 介绍

若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程。使用kill 命令来完成此项任务。

3.2 基本语法

  • kill [选项] 进程号

    功能描述:通过进程号杀死/终止进程。

  • killall 进程名称

    功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用。

3.3 常用选项

  • -9 :表示强迫进程立即停止。

3.4 应用实例

1)踢掉某个非法登录用户tom

在Linux的终端执行kill后,导致远程登录的finalshell中的tom用户断开连接。

2)终止远程登录服务sshd, 在适当时候再次重启sshd 服务

因为sshd的进程终止所以导致远程的用户都无法登陆。

重启sshd进程服务:

查看进程树pstree

4.1 基本语法

pstree [选项] ,可以更加直观的来看进程信息 ,如下图所示:

4.2 常用选项

  • -p :显示进程的PID;

  • -u :显示进程的所属用户。

实例如下:

案例1:请你树状的形式显示进程的pid

案例2:请你树状的形式进程的用户

服务(service)管理

5.1 介绍

服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysqld , sshd防火墙等),因此我们又称为守护进程,是Linux 中非常重要的知识点。

5.2 service 管理指令

service 服务名[start | stop | restart | reload | status]

在CentOS7.0 后很多服务不再使用service ,而是systemctl 。

service 指令管理的服务在/etc/init.d 查看。

实例如下:

5.3 service 管理指令案例

请使用service 指令,查看,关闭,启动network

注意:在虚拟系统演示,因为网络连接会关闭。

实例图如下:

1)service network status

2)service network stop

3)service network start

5.4 查看服务名

方式1:使用setup -> 系统服务就可以看到全部

示例图如下:

先在远程平台上输入setup:

然后进行工具的选择。

方式2: /etc/init.d 看到service 指令管理的服务

命令:ls -l /etc/init  如下图所示:

动态监控进程

6.1 介绍

op 与ps 命令很相似。它们都用来显示正在执行的进程。Top 与ps 最大的不同之处,在于top 在执行一段时间可以更新正在运行的的进程。

6.2 基本语法

top [选项]

6.3 选项说明

选项
功能
-d秒数
指定top每隔几秒刷新,默认是3秒
-i
使top不显示任何闲置或者僵死的进程
-p
通过指定监控进程的ID来仅仅监控某个进程的状态

6.4 交互操作说明

操作
功能
P
以CPU使用率进行排序,默认就是此项
M
以内存使用率排序
N
以PID排序
q
退出top

6.5 应用实例

实例1:监视特定用户, 比如监控tom 用户 

操作流程:

top输入此命令,按回车键,查看执行的进程。然后输入“u”回车,再输入用户名,即可。 

如下图所示:

Tom用户的结果:

实例2:终止指定的进程, 比如我们要结束tom 登录

操作流程:

top输入此命令,按回车键,查看执行的进程。然后输入“k”回车,再输入要结束的进程id号。

实例3:指定系统状态更新的时间(每隔10 秒自动更新)

如图所示:

对比:

Top的每次刷新间隔为10秒。

END

本文作者:门熙博 (上海新炬中北团队)

本文来源:“IT那活儿”公众号

最新文章

随机文章