Linux进程线程类命令

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

ps 查看当前系统进程状态

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

image.png

[root@hadoop101 datas] ps -ef

image.png

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 作为缓存的交互分区的大小

netstat 显示网络统计信息和端口占用

1. 基本语法

	netstat -anp |grep 进程号	(功能描述:查看该进程网络信息)
	netstat -nlp	| grep 端口号	(功能描述:查看网络端口号占用情况)

2. 选项说明

选项 功能
-n 拒绝显示别名,能显示数字的全部转化成数字
-l 仅列出有在listen(监听)的服务状态
-p 表示显示哪个进程在调用

3. 案例实操

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

[root@hadoop101 hadoop-2.7.2] netstat -anp | grep 火狐浏览器进程号
unix  2      [ ACC ]     STREAM     LISTENING     20670  3115/firefox        /tmp/orbit-root/linc-c2b-0-5734667cbe29
unix  3      [ ]         STREAM     CONNECTED     20673  3115/firefox        /tmp/orbit-root/linc-c2b-0-5734667cbe29
unix  3      [ ]         STREAM     CONNECTED     20668  3115/firefox        
unix  3      [ ]         STREAM     CONNECTED     20666  3115/firefox  

(2)查看某端口号是否被占用

[root@hadoop101 桌面]# netstat -nlp | grep 20670 
unix  2      [ ACC ]     STREAM     LISTENING     20670  3115/firefox        /tmp/orbit-root/linc-c2b-0-5734667cbe29
原文地址:https://www.cnblogs.com/selfcs/p/14009974.html