暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Linux top 使用

生有可恋 2022-02-11
317

今天遇到一台服务器卡顿,敲命令半天没反应,差点宕机。当服务器出现卡顿时,首先要查看的就是top的输出。


从top的输出中可以了解服务器负载、cpu、内存的使用情况。


在没有配置过的top界面,top输出是黑白的。



经过简单配置过的top,界面是彩色的,配置过程是 b 、x、z、W



简单配置之后,就可以使用 < > 移动排序了,< 是向左移动,>是向右移动,此时可以按 CPU使用率或内存使用率排序,查看是什么原因导致的系统卡顿。


前面的几个简单命令的意思如下:

  • b 加粗当前列(加粗的列代表当前是以此列进行排序)

  • x 高亮处于 running 的任务

  • z 加颜色(默认为红色)

  • W 将当前配置保存到文件(默认位置为 ~/.toprc)


如果对配置内容不满意,可以删掉配置文件重置默认配置。top的帮助文档已经将大部分常用命令解释的比较清楚了,输入 h 即可弹出大帮助信息。



关于 top 显示的内容的含义,需要查看top的man文档。我们首先关注的就是系统的负载。



三个数值分别代表1, 5 和 15 分钟的系统负载。


然后关注的是任务状态,任务的状态有以下几种。

  • running

  • sleeping

  • stopped

  • zombie


我们需要关注的是 zombie 状态的进程,这类进程我们俗称僵死进程。杀死僵死进程的方法是连它的父进程一起杀,不然杀不掉。


各种CPU状态的占用率缩写


  • us, user    : time running un-niced user processes

  • sy, system  : time running kernel processes

  • ni, nice    : time running niced user processes

  • id, idle    : time spent in the kernel idle handler

  • wa, IO-wait : time waiting for I/O completion

  • hi : time spent servicing hardware interrupts

  • si : time spent servicing software interrupts

  • st : time stolen from this vm by the hypervisor



再向下看就是列表了,我们把列信息汇总一下


  • %CPU  --  CPU 使用率

  •  %MEM  --  Memory 使用率 (RES)

  • COMMAND -- 命令行,如果需要显示参数,可以使用命令 c

  • TIME+  --  CPU 时间

  • PR -- 优先级

  • NI -- nice 值

  • VIRT -- 虚拟内存

  • RES -- 进程占用内存

  • SHR -- 共享内存

  • S -- 进程状态


进程状态缩写

  • D = uninterruptible sleep

  • R = running

  • S = sleeping

  • T = stopped by job control signal

  • t = stopped by debugger during trace

  • Z = zombie


文章转载自生有可恋,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论