Linux 进程监控

本章为top与netstat指令

top指令

与ps指令相似,用来显示正在执行的进程,不同之处在于top指令可以更新显示正在运行的进程,即监控

基本语法

bash 复制代码
top [选项]

选项

-d: [秒数] 指定每隔几秒更新一次,默认的话是3秒

-i :使top不显示闲置或者僵尸进程

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

显示的例子

作用
PID 进程 ID
USER 运行进程的用户
PR 优先级,数字越小越优先
NI nice 值,用户可调的优先级,-20~19
VIRT 虚拟内存大小
RES 物理内存大小
SHR 共享内存大小
S 进程状态
%CPU CPU 使用率
%MEM 物理内存使用率
TIME+ 累计 CPU 时间
COMMAND 命令名

上方的

第一行

top - [当前时间] [系统运行时间],[用户数] users, load average: 0.07, 0.16, 0.21(负载均衡,三个数加起来除以3不超过0.7就没问题)

第二行

Tasks: [系统任务总数] total,[正在运行的] running, [休眠的] sleeping, [停止的] stopped, [僵尸进程]zombie

第三行

%Cpu(s): [用户占用cpu] us, [系统占用] sy, 0.0 ni, [空闲占用] id, 0.3 wa, 0.0 hi, 0.3 si, 0.0 st

第四行

KiB Mem : [内存总数] total, [空闲的] free, [用了的] used, [缓冲] buff/cache

第五行

KiB Swap: [swap分区] total, [空闲的] free, [用了的] used. [可获取的] avail Mem

监控时也可以按下一些键进行一些操作

作用
P 以CPU使用率排序,是默认项
M 以内存使用率排序
N 以PID排序
q 退出
u 再输入用户名可以指定监控某一个用户的进程
k 再输入进程号可以终止该进程号的进程

同时,之前的d(指定更新速度)和i(不显示闲置和僵尸进程)也可以在这里用

netstat指令

用于监控网络状态,比如哪些进程在监听哪些端口,有哪些连接

基本语法

bash 复制代码
netstat [选项]

选项

-an:按一定顺序进行输出

-p :现实哪个进程在调用

-an输出

作用
Proto 网络协议
Recv-Q 接收队列中待处理的字节数,等待读取
Send-Q 发送队列中待处理的字节数,发了还没收到确认
LocalAddress 本机地址:端口
Foreign Address 对端地址:端口
State 连接状态

本机地址和对端地址处可能有那种三个冒号这样的,这种是以IPv6的形式监听的

State的状态:

LISTEN 服务在监听,等待连接
ESTABLISHED 连接已建立,正在通讯
TIME_WAIT 主动关闭后等待,确保对方收到最后ACK(断开后会存在一会确定不是网络临时有问题

-anp显示

最后增加了个进程号/进程名

实例

查看服务名为sshd的服务的信息

bash 复制代码
netstat -anp | grep sshd
相关推荐
JZC_xiaozhong1 小时前
数据不互通、审批慢?企业多系统智能协同与流程自动化解决方案
运维·自动化·流程管理·流程自动化·数据集成与应用集成·流程监控·流程可视化设计
爱学习的小囧1 小时前
ESXi 8.0 原生支持 NVMe 固态硬盘吗?VMD 配置详解教程
linux·运维·服务器·esxi·esxi8.0
坚持就完事了2 小时前
Linux中的变量
linux·运维·服务器
hERS EOUS2 小时前
nginx 代理 redis
运维·redis·nginx
handler012 小时前
从源码到二进制:深度拆解 Linux 下 C 程序的编译与链接全流程
linux·c语言·开发语言·c++·笔记·学习
Cat_Rocky2 小时前
利用Packet Tracer网络实验
linux·运维·服务器
嵌入式×边缘AI:打怪升级日志2 小时前
Linux 驱动实战:SR501 人体红外传感器驱动开发与调试全记录
linux·运维·驱动开发
正点原子3 小时前
【正点原子Linux连载】第三章 U-Boot使用 摘自【正点原子】ATK-DLRK3568嵌入式Linux驱动开发指南
linux·运维·驱动开发
Qbw20043 小时前
【Linux】进程地址空间
linux·c++
忍冬行者3 小时前
MongoDB 三节点副本集离线部署运维手册
运维·数据库·mongodb