Linux第7章 常用基本命令

7.10 进程线程类

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

7.10.1 ps 查看当前系统进程状态

ps:process status 进程状态

1)基本语法:

         ps aux | grep xxx               (功能描述:查看系统中所有进程)

         ps -ef | grep xxx               (功能描述:可以查看子父进程之间的关系)

2)选项说明

选项

功能

-a

选择所有进程

-u

显示所有用户的所有进程

-x

显示没有终端的进程

3)功能说明

         (1)ps aux显示信息说明

         USER:该进程是由哪个用户产生的

         PID:进程的ID号

%CPU:该进程占用CPU资源的百分比,占用越高,进程越耗费资源;

%MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源;

VSZ:该进程占用虚拟内存的大小,单位KB;

RSS:该进程占用实际物理内存的大小,单位KB;

TTY:该进程是在哪个终端中运行的。其中tty1-tty7代表本地控制台终端,tty1-tty6是本地的字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端。

STAT:进程状态。常见的状态有:R:运行、S:睡眠、T:停止状态、s:包含子进程、+:位于后台

START:该进程的启动时间

TIME:该进程占用CPU的运算时间,注意不是系统时间

COMMAND:产生此进程的命令名

(2)ps -ef显示信息说明

UID:用户ID

PID:进程ID

PPID:父进程ID

C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高

STIME:进程启动的时间

TTY:完整的终端名称

TIME:CPU时间

CMD:启动进程所用的命令和参数

4)经验技巧:

         如果想查看进程的CPU占用率和内存占用率,可以使用aux;

如果想查看进程的父进程ID可以使用ef;

5)案例实操

         [root@hadoop101 datas]# ps aux

         [root@hadoop101 datas]# ps -ef

        

7.10.2 kill 终止进程

1)基本语法:

         kill  [选项] 进程号                  (功能描述:通过进程号杀死进程)

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

2)选项说明

选项

功能

-9

表示强迫进程立即停止

3)案例实操:

         (1)杀死浏览器进程

         [root@hadoop101 桌面]# kill -9 5102

         (2)通过进程名称杀死进程

         [root@hadoop101 桌面]# killall firefox

7.10.3 pstree 查看进程树

1)基本语法:

         pstree [选项]

2)选项说明

选项

功能

-p

显示进程的PID

-u

显示进程的所属用户

3)案例实操:

         (1)显示进程pid

[root@hadoop101 datas]# pstree -p

         (2)显示进程所属用户

         [root@hadoop101 datas]# pstree -u

7.10.4 top 查看系统健康状态

1)基本命令

         top [选项]        

2)选项说明

选项

功能

-d 秒数

指定top命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令:

-i

使top不显示任何闲置或者僵死进程。

-p

通过指定监控进程ID来仅仅监控某个进程的状态。

3)操作说明:

操作

功能

P

以CPU使用率排序,默认就是此项

M

以内存的使用率排序

N

以PID排序

q

退出top

4)查询结果字段解释

第一行信息为任务队列信息

内容

说明

12:26:46

系统当前时间

up 1 day, 13:32

系统的运行时间,本机已经运行1天

13小时32分钟

2 users

当前登录了两个用户

load  average:  0.00, 0.00, 0.00

系统在之前1分钟,5分钟,15分钟的平均负载。一般认为小于1时,负载较小。如果大于1,系统已经超出负荷。

第二行为进程信息

Tasks:  95 total

系统中的进程总数

1 running

正在运行的进程数

94 sleeping

睡眠的进程

0 stopped

正在停止的进程

0 zombie

僵尸进程。如果不是0,需要手工检查僵尸进程

第三行为CPU信息

Cpu(s):  0.1%us

用户模式占用的CPU百分比

0.1%sy

系统模式占用的CPU百分比

0.0%ni

改变过优先级的用户进程占用的CPU百分比

99.7%id

空闲CPU的CPU百分比

0.1%wa

等待输入/输出的进程的占用CPU百分比

0.0%hi

硬中断请求服务占用的CPU百分比

0.1%si

软中断请求服务占用的CPU百分比

0.0%st

st(Steal  time)虚拟时间百分比。就是当有虚拟机时,虚拟CPU等待实际CPU的时间百分比。

第四行为物理内存信息

Mem:    625344k total

物理内存的总量,单位KB

571504k used

已经使用的物理内存数量

53840k free

空闲的物理内存数量,我们使用的是虚拟机,总共只分配了628MB内存,所以只有53MB的空闲内存了

65800k buffers

作为缓冲的内存数量

第五行为交换分区(swap)信息

Swap:   524280k total

交换分区(虚拟内存)的总大小

0k used

已经使用的交互分区的大小

524280k free

空闲交换分区的大小

409280k cached

作为缓存的交互分区的大小

5)案例实操

         [root@hadoop101 atguigu]# top -d 1

[root@hadoop101 atguigu]# top -i

[root@hadoop101 atguigu]# top -p 2575

执行上述命令后,可以按P、M、N对查询出的进程结果进行排序。

7.10.5 netstat 显示网络统计信息

1)基本语法:

         netstat -anp               (功能描述:此命令用来显示整个系统目前的网络情况。例如目前的连接、数据包传递数据、或是路由表内容)

2)选项说明

选项

功能

-an

按一定顺序排列输出

-p

表示显示哪个进程在调用

3)案例实操

(1)通过进程号查看该进程的网络信息

[root@hadoop101 hadoop-2.7.2]# netstat -anp | grep 火狐浏览器进程号

udp  0  0 192.168.1.101:33893  192.168.1.2:53 ESTABLISHED 4043/firefox       

udp  0  0 192.168.1.101:47416  192.168.1.2:53 ESTABLISHED 4043/firefox       

unix  2      [ ACC ]     STREAM     LISTENING     28916  4043/firefox        /tmp/orbit-atguigu/linc-fcb-0-382f8b667a38a

unix  3      [ ]         STREAM     CONNECTED     28919  4043/firefox        /tmp/orbit-atguigu/linc-fcb-0-382f8b667a38a

 

 

 

本教程由尚硅谷教育大数据研究院出品,如需转载请注明来源。

猜你喜欢

转载自blog.csdn.net/sggtgfs/article/details/89181922