linux ps 服务名,Linux查看服务与进程 -------ps-aux & ps-ef

本文详细介绍了Linux中ps命令的基础用法,包括ps -aux和ps -ef等,以及如何通过grep过滤特定服务或进程。同时解释了服务与进程的关系,服务是支持系统运行的后台程序,而进程是程序的具体执行实例。文章还提到了利用service命令检查服务状态的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章目录

1.指令(instruction):

2.程序(program):

3.进程(process):

1.PS基础命令

2.PS应用场景

(1) ps -aux

(2) ps -aux | grep xxx

(3) ps -ef | grep xxx

4.服务(service)

5.服务与进程?

1.指令(instruction):

计算机实际上可以做的事情实质上非常简单,比如计算两个数的和,再比如在内存中寻找到某个地址等等。这些最基础的计算机动作被称为指令 (instruction)。

2.程序(program):

这样一系列指令的所构成的集合。通过程序,我们可以让计算机完成复杂的操作。程序大多数时候被存储为可执行的文件。这样一个可执行文件就像是一个菜谱,计算机可以按照菜谱作出可口的饭菜。

3.进程(process):

进程是程序的一个具体实现。只有食谱没什么用,我们总要按照食谱的指点真正一步步实行,才能做出菜肴。进程是执行程序的过程,类似于按照食谱,真正去做菜的过程。同一个程序可以执行多次,每次都可以在内存中开辟独立的空间来装载,从而产生多个进程。不同的进程还可以拥有各自独立的IO接口。

1.PS基础命令

参数:ps的参数非常多, 在此仅列出几个常用的参数并大略介绍含义

-A :列出所有的进程(等价于-e)

-w :显示加宽可以显示较多的资讯

-au:显示较详细的资讯

-aux:显示所有包含其他使用者的行程

-a:显示所有终端机下执行的程序,除了阶段作业领导者之外。

-c:显示CLS和PRI栏位。

-d:显示所有程序,但不包括阶段作业领导者的程序。

-e:显示所有程序。

-f:显示UID,PPIP,C与STIME栏位。

-H:显示树状结构,表示程序间的相互关系。

-u::列出属于该用户的程序的状况,也可使用用户名称来指定。

-j:采用工作控制的格式显示程序状况

-l或l:采用详细的格式来显示程序状况。

-N:显示所有的程序,除了执行ps指令终端机下的程序之外。

2.PS应用场景

(1) ps -aux

USER

PID

%CPU

%MEM

VSZ

RSS

TTY

STAT

START

TIME

COMMAND

root

1

0.4

0.2

119788

5868

?

Ss

09:20

0:03

/sbin/init spl

root

2

0.0

0.0

0

0

?

S

09:20

0:00

[kthreadd]

root

3

0.0

0.0

0

0

?

S

09:20

0:00

[kworker/0:0]

root

4

0.0

0.0

0

0

?

S<

09:20

0:00

[kworker/0:0H]

root

6

0.0

0.0

0

0

?

S

09:20

0:00

[ksoftirqd/0]

USER-域指明了是哪个用户启动了这个命令

%CPU-用户可以查看某个进程占用了多少CPU

%MEM-内存使用率

VSZ-虚拟内存大小:表示如果一个程序完全驻留在内存的话需要占用多少内存空间

RSS-常驻集大小:指明了当前实际占用了多少内存

STAT-显示了进程当前的状态:状态有很多中,Ss、Ss1、Ss+、S

stat 状态:

“S”:进程处在睡眠状态(idle),但可以被喚醒(signal),表明这些进程在等待某些事件发生–可能是用户输入或者系统资源的可用性

D不可中断 Uninterruptible(usually IO),不可被喚醒的睡眠狀態,通常這个程序可能在等待I/O的情況(ex>列印)

R正在运行,或在队列中的进程

T停止狀態(stop),可能是在工作控制(背景暫停)或除錯 (traced) 狀態;

Z (Zombie)僵屍狀態,程序已經終止但卻無法被移除至記憶體外。

W进入内存交换(从内核2.6开始无效)

“X”:死掉的进程

“L”:有些页被锁进内存

“n”:低优先级

“s”:包含子进程

“+”:位于后台的进程组;

“l”:多线程,克隆线程multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

“WCHAH”:正在等待的进程资源

START-行程开始时间

TIME-执行的时间

COMMAND-所执行的指令的名称和参数

(2) ps -aux | grep xxx

查看某个进程或者服务是否存在

c0b817d4d080172c6f0421c347208b4c.png

通过如上方式,查到了2条关DXS相关服务的进程信息,第一条是目标数据,第二条是grep进程调用时候,输入的信息–color=auto DXS,所以也查询到了先关信息

(3) ps -ef | grep xxx

-A:显示所有程序。

-e :此参数的效果和指定"A"参数相同。

-f:显示UID,PPIP,C与STIME栏位。

UID

PID

PPID

C

STIME

TTY

TIME

CMD

拥有者

程序ID

父级ID

CPU使用的资源百分比

系统启动时间

登入者的终端机位置

使用掉的 CPU 时间

下达的指令

0

1

0

0

9:20上午

??

2:11.61

/sbin/launchd

5

60

1

0

9:20上午

??

0:02.16

/usr/sbin/syslogd

UID:程序被该 UID 所拥有

PID:就是这个程序的 ID

PPID:则是其上级父程序的ID

C:CPU使用的资源百分比

STIME:系统启动时间

TTY :登入者的终端机位置

TIME:使用掉的CPU时间。

CMD:所下达的是什么指令

9c25fc124455e284245e9e595ad1e8e7.png

4.服务(service)

服务相当于支持系统运行的一些必要程序,默默运行在系统后台的,他可以为应用程序提供一些更有特色的东西,比如播放MP3,开启一个播放MP3的服务,用户点击开始按钮通知服务开启,点击关闭按钮通知服务关闭,如果你禁用这个服务,那别人想播放MP3那是不行的,而且服务之间是有可能互相依靠的。

5.服务与进程?

有人回答说:你开启了哪个服务任务管理器里就会有哪个服务相对应的进程;

有人说:服务是每次开机会按照服务启动模式启动的进程的集合,服务可能包括很多进程。而且启动的进程可能是互相交叉的。

二、利用services命令

1.查看单个服务的运行状态:

service 服务名 status

如:[root@localhost ~]# service sshd status

openssh-daemon (pid 3701) 正在运行…

2.查看所有服务的运行状态:

service –status -all

文章来源:

https://www.jianshu.com/p/a22cf4d060bf

https://blog.csdn.net/tanga842428/article/details/79040089

https://jingyan.baidu.com/article/fec4bce2479f05f2618d8b80.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值