Linux 常用进程命令介绍
今天给大家分享一些 Linux 常用进程命令,帮助你更好地了解和管理系统中的进程。如果觉得有帮助,欢迎关注我的公众号 「想吃西红柿」 和 「云原生运维实战派」,获取更多运维知识。
一、ps 命令
ps
命令用于查看当前系统中的进程信息。它有两种不同的语法风格:BSD 和 UNIX/LINUX。两种语法的差别经常会让新手困惑,下面简要说明:
- BSD 风格:参数前不加
-
,如ps aux
。 - UNIX/LINUX 风格:参数前通常要加
-
,如ps -aux
。
1. ps 语法格式
ps [options] [--help]
2. 常用参数
-a
:显示当前终端下的所有程序。-u
:已用户为主的格式显示程序状态。-x
:显示所有进程,不以终端机来区分。-o
:指定显示信息的字段。--sort
:按指定字段排序。-ef
:查看进程的父子关系。-l
:长格式显示。-f
:完整格式显示。
3. 常用选项组合
1) ps -axu
[root@localhost ~]# ps -axu | more
输出解释:
- USER:启动进程的用户。
- PID:进程 ID。
- %CPU:进程占用的 CPU 百分比。
- %MEM:占用内存的百分比。
- VSZ:虚拟内存大小(单位:KB)。
- RSS:物理内存大小(单位:KB)。
- STAT:进程状态(如
R
:运行,S
:睡眠,T
:停止,Z
:僵尸进程)。 - COMMAND:程序的实际命令。
2) ps -ef
[root@localhost ~]# ps -ef
输出信息包含:
- UID:启动进程的用户。
- PID:进程 ID。
- PPID:父进程 ID。
- C:进程的 CPU 使用率。
- STIME:进程启动时间。
- CMD:启动程序的命令。
二、Uptime 查看 CPU 负载
[root@localhost ~]# uptime
13:22:30 up 20 days, 2 users, load average: 0.76, 0.60, 0.98
输出解释:
- load average:1 分钟、5 分钟和 15 分钟的系统平均负载。
任务队列长度
- 单核 CPU:负载值接近
1
说明 CPU 负载较高。 - 多核 CPU:负载值接近 CPU 核心数的倍数表示负载过高。
三、Top 命令
top
命令可以动态显示系统的资源占用情况。
1. 常用命令格式
top [options] [-] [d] [p] [q] [c] [C] [S] [s] [n]
2. 常用选项
d
:指定刷新间隔时间。p
:指定监控进程 ID。S
:累计模式。c
:显示完整的命令行。i
:不显示空闲进程。
3. 快捷键
- P:按 CPU 使用率排序。
- M:按内存使用率排序。
- T:按时间排序。
- 1:显示每个 CPU 核心的使用情况。
四、lsof 命令
lsof
用于查看进程打开的文件。
1. 常用语法格式
lsof [options]
2. 常用参数
-c
:显示指定进程名称打开的文件。-p
:显示指定进程号打开的文件。-i
:显示与网络相关的文件。
示例:
[root@localhost ~]# lsof -i:22 # 查看占用端口 22 的进程
五、进程 PID 文件
系统中部分服务会将 PID 存储到 /var/run/
目录下,如:
[root@localhost ~]# cat /var/run/httpd/httpd.pid
12265