Linux系统进程与主机资源监控命令
Linux系统进程与主机资源监控命令一、前言在Linux服务器运维工作中进程管理、CPU/内存/磁盘/网络监控是日常排查服务器卡顿、程序卡死、IO打满、网络异常的核心手段。Windows有图形化任务管理器直观查看资源Linux则依靠各类命令行工具完成监控。本文整合生产最常用的ps、kill、top、iostat、sar命令附带参数详解、实操案例新手也能直接上手。二、进程基础概念程序磁盘上存放的静态可执行文件进程程序被操作系统加载运行后产生的实例操作系统统一管理所有运行程序PID进程ID操作系统为每个运行进程分配唯一编号操作进程关闭、查询都依靠PIDPPID父进程ID创建当前进程的父进程编号。Windows可打开任务管理器查看进程、CPU、内存占用Linux使用命令行工具完成进程查看与管控。三、进程查看ps 命令3.1 基础语法ps[-e -f]-e展示系统全部进程-f完整格式化输出展示进程全量信息生产固定组合ps -ef列出服务器所有进程完整信息ps-ef3.2 ps -ef 输出字段详解执行命令后输出字段从左至右含义字段说明UID进程所属用户IDPID当前进程编号PPID父进程编号C进程CPU占用百分比STIME进程启动时间TTY启动终端?代表后台无终端进程TIME进程累计占用CPU总时长CMD启动进程的完整命令/程序路径3.3 过滤指定进程管道符grep直接执行ps -ef会输出上百条进程查找目标进程效率极低搭配grep过滤关键字示例1查找tail进程ps-ef|greptail输出包含两条记录tail业务进程grep --colorauto tailgrep自身进程可忽略。示例2根据PID过滤进程ps-ef|grep30001可精准查询PID为30001的进程信息也可过滤用户名、程序名等任意关键字。四、进程终止kill 命令4.1 基础语法kill[-9]PID不加-9向进程发送正常关闭信号进程可自主决定是否退出优雅关闭-9强制杀死进程进程无法拒绝适用于卡死、无响应程序。4.2 实操演示查询tail进程PIDps-ef|greptail# 输出itheima 2339 8021 0 19:00 pts/0 00:00:00 tail强制杀死进程kill-92339再次执行过滤命令无tail进程输出代表进程已销毁。五、系统全局资源监控top 命令top等价于Linux版任务管理器实时刷新展示CPU、内存、所有进程资源占用默认5秒刷新一次。5.1 基础使用# 进入实时监控界面top# 退出监控界面 q 或 CtrlC5.2 顶部统计信息逐行解析第一行系统总览top -14:36:57 up 3min, 2users, Load average:0.09,0.23,0.1214:36:57当前系统时间up 3min服务器已运行3分钟2users当前登录服务器用户数Load average1分钟、5分钟、15分钟系统平均负载数值越高CPU压力越大第二行进程概况Tasks:179 total,2running,177sleeping,0stopped,0zombietotal服务器总进程数量running正在运行的进程sleeping休眠等待资源的进程stopped暂停进程zombie僵尸进程程序异常遗留需处理第三行CPU整体使用率%Cpu(s):0.7us,2.8sy,0.0ni,96.5id,0.0wa,0.0hi,0.0si,0.0st参数含义us用户程序占用CPU百分比sy系统内核占用CPU百分比ni高优先级进程CPU占比id空闲CPU占比数值越高服务器越空闲waIO等待占用CPU数值高代表磁盘瓶颈hi/si/st硬件中断、软件中断、强制等待占用第四、五行内存与交换分区KiB Mem:995892 total,196192free,387648used,412052 buff/cache KiB Swap:2098172 total,2098172free,0used.399096avail MemMem物理内存total总内存、free空闲、used已使用、buff/cache缓存占用Swap虚拟交换内存磁盘虚拟内存大量使用代表物理内存不足5.3 进程列表字段详解PID USER PR NI VIRT RES SHR S %CPU %MEM TIME COMMAND字段说明PID进程IDUSER进程运行用户PR/NI进程优先级NI负数优先级更高VIRT虚拟内存占用RES实际物理内存占用排查内存泄漏核心指标SHR共享内存S进程状态R运行、S休眠、Z僵尸%CPU/%MEMCPU、内存占用百分比TIME进程累计消耗CPU时长COMMAND启动程序命令5.4 top 常用参数启动时携带参数功能-p PID只监控指定单个进程-d 3设置3秒刷新一次默认5s-c显示完整启动命令-n 5刷新5次后自动退出-b批量输出可重定向保存日志top -b -n3 top.log-u itheima只查看itheima用户的进程5.5 top 交互式快捷键进入界面后操作P按CPU使用率排序M按内存占用排序最常用c切换完整命令/简化进程名m隐藏/显示内存统计区域t隐藏/显示CPU统计区域h查看帮助手册q退出top六、磁盘IO监控iostat当top中waIO等待数值过高代表磁盘读写瓶颈使用iostat分析磁盘负载。6.1 基础语法iostat[-x]刷新间隔 监控次数-x输出磁盘详细IO指标生产必用示例每3秒刷新一次总共输出2次磁盘数据iostat-x326.2 核心字段解读-x模式字段含义tps每秒磁盘IO请求次数rkB/s / wkB/s每秒读写KB数据量avgqu-szIO请求队列长度越长磁盘越拥堵awaitIO请求平均响应时间毫秒越高越卡%util磁盘使用率接近100%代表磁盘打满七、网络流量监控sarsar是服务器综合统计工具本文仅介绍网络监控用法排查带宽跑满、网络丢包场景。7.1 基础语法sar-nDEV 刷新间隔 输出次数-n DEV监控网卡流量示例每3秒采集一次网络数据持续2次sar-nDEV327.2 网络字段说明字段含义IFACE网卡名称ens33、lo本地回环rxpck/s每秒接收数据包数量txpck/s每秒发送数据包数量rxkB/s每秒接收流量KBtxkB/s每秒发送流量KBrxcmp/txcmp压缩数据包收发量八、运维实操总结查进程ps -ef | grep 程序名杀进程kill -9 PID全局资源排查topM键看内存、P键看CPU重点关注wa值判断磁盘压力磁盘卡顿排查iostat -x 2观察%util、await指标网络带宽异常sar -n DEV 3查看网卡收发流量九、补充小技巧服务器卡顿优先执行top定位高CPU/内存进程程序无响应优先ps查PID再kill -9强制关闭日志大量写入导致服务器缓慢使用iostat确认磁盘IO瓶颈对外接口访问超时使用sar检查网卡流量是否占满带宽。本文命令适配CentOS7/8、Rocky、Ubuntu主流Linux发行版生产环境可直接复制使用。

相关新闻

最新新闻

日新闻

周新闻

月新闻