Linux系统监控工具之top详解

2023-10-24 05:32

本文主要是介绍Linux系统监控工具之top详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

对Linux系统管理员而言,监控系统是很重要的工作。Linux系统监控工具有很多,top是最常用的一个,可以动态观察系统进程状况,方便系统管理员实时了解系统资源现状。本文对top工具的各个参数进行了深入的介绍。


top作为日常管理工作中最常用也是最重要的Linux系统监控工具之一,可以动态观察系统进程状况,方便系统管理员实时了解系统资源现状。

51CTO编辑推荐:Linux监控工具大全

常用热键用途
t显示摘要信息开关.
m显示内存信息开关.
A分类显示系统不同资源的使用大户。有助于快速识别系统中资源消耗多的任务。
f添加删除所要显示栏位.
o调整所要显示栏位的顺序.
r调整一个正在运行的进程Nice值.
k结束一个正在运行的进程.
z彩色/黑白显示开关

一、相关设定默认值

全局

'A' - 交替显示模式

* 'd' - 刷新时间间隔

'I' - Irix mode

* 'p' - 监控特定PID

* 's' - 安全模式

'B' - 粗体显示

 

Off (默认为全屏显示,On时交替显示)

3.0秒

On

Off

Off

Off

摘要区

'l'- 平均负载及系统运行时间

't'- 任务及CPU状态

'm'- 内存及交换空间状态

'1'- 单CPU显示

 

On

On

On

On (如果为系统包含多处理器,只显示在一行中)

任务区域

'b'- 黑体/反色显示高亮的行/列

* 'c'- 任务执行的命令行

* 'H'- 显示线程

* 'i'- 空闲任务显示

'R'- 反序显示

* 'S'- 累计时间

'x'- 高亮显示排序的列

'y'- 高亮显示正在运行的任务

'z'- 彩色/黑白显示

 

On (off)

Off (只显示任务名称,不显示任务全格式信息)

Off

On

On

Off

Off

On

Off

注:*标示的设定,可以在启动top时,使用命令行参数覆盖指定参数值。

 

二、命令行启动参数:

用法: top -hv | -bcisSHM -d delay -n iterations [-u user | -U user] -p pid [,pid ...]

-b : 批次模式运行。通常用作来将top的输出的结果传送给其他程式或储存成文件。

-c : 显示执行任务的命令行。

-d : 设定延迟时间

-h : 帮助

-H : 显示线程。当这个设定开启时,将显示所有进程产生的线程。

-i : 显示空闲的进程。

-n : 执行次数。一般与-b搭配使用

-u : 监控指定用户相关进程

-U : 监控指定用户相关进程

-p : 监控指定的进程。当监控多个进程时,进程ID以逗号分隔。这个选项只能在命令行下使用。

-s : 安全模式操作

-S : 累计时间模式

-v : 显示top版本,然后退出。

-M : 自动显示内存单位(k/M/G)

三、栏位信息

在top中,分别使用26个英文字母对应进程相关信息栏位。可已通过f来添加或移除指定的栏位,通过o来调整对栏位显示顺序。下面我们针对这些栏位进行说明。

a: PID (Process Id):任务的进程ID

b: PPID (Parent Process Pid):父任务的进程ID

c: RUSER (Real User Name):任务的所有者真实名称

d: UID (User Id):任务所有者ID

e: USER (User Name):任务所有者名称

f: GROUP (Group Name):任务所有者群组名

g: TTY (Controlling Tty):终端

h: PR (Priority):优先级

i: NI (Nice value):Nice值

j: P (Last used CPU (SMP)):

k: %CPU (CPU usage):CPU使用率

l: TIME (CPU Time):CPU时间

m: TIME+ (CPU Time, hundredths):CPU时间,精确到秒

n: %MEM (Memory usage (RES)):内存使用率

o: VIRT (Virtual Image (kb)):虚拟内存。VIRT = SWAP + RES

p: SWAP (Swapped size (kb)):交换空间

q: RES (Resident size (kb)):常驻内存。RES = CODE + DATA

r: CODE (Code size (kb)):

s: DATA (Data+Stack size (kb)):

t: SHR (Shared Mem size (kb)):共享内存。

u: nFLT (Page Fault count):

v: nDRT (Dirty Pages count):

w: S (Process Status):进程状态

分别有以下几种:

D = uninterruptible sleep = 不可被唤醒睡眠

R = running = 正在运行中

S = sleeping = 睡眠状态

T = traced or stopped = 出错或停止状态

Z = zombie = 僵尸状态

x: Command (Command line or Program name):进程名或命令行

y: WCHAN (Sleeping in Function):

z: Flags (Task Flags):

示例1:增加和移除进程信息栏位(输入f)

   

示例2:调整进程信息栏位显示顺序(输入o)


四、交互命令

1.全局命令

回车、空格 : 刷新显示信息

?、h : 帮助

= : 移除所有任务显示的限制

A : 交替显示模式切换

B : 粗体显示切换

d、s : 更改界面刷新时间间隔

G : 选择其它窗口/栏位组

I : Irix或Solaris模式切换

u、U : 监控指定用户相关进程

k : 结束进程

q : 退出top

r : 重新设定进程的nice值

W : 存储当前设定

Z : 改变颜色模板

2.摘要区命令

l : 平均负载及系统运行时间显示开关

m : 内存及交换空间使用率显示开关

t : 当前任务及CPU状态显示开关

1 : 汇总显示CPU状态或分开显示每个CPU状态    

3.任务区命令

外观样式

b : 黑体/反色显示高亮的行/列。控制x和y交互命令的顯示樣式。

x : 高亮显示排序的列

y : 高亮显示正在运行的任务

z : 彩色/黑白显示。

显示内容

c : 任务执行的命令行或进程名称

f、o : 增加和移除进程信息栏位及调整进程信息栏位显示顺序

H : 显示线程

S : 时间累计模式

u : 监控指定用户相关进程

任务显示的数量

i : 显示空闲的进程

n或# : 设置任务显示最大数量

任务排序

M : 按内存使用率排序

N : 按PID排序

P : 按CPU使用率排序

T : 按Time+排序

< : 按当前排序栏位左边相邻栏位排序

> : 按当前排序栏位右边相邻栏位排序

F 或 O : 选择排序栏位

R : 反向排序


转载地址:http://www.360doc.com/content/12/1210/11/9943320_253172515.shtml

这篇关于Linux系统监控工具之top详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/273021

相关文章

详解MySQL中DISTINCT去重的核心注意事项

《详解MySQL中DISTINCT去重的核心注意事项》为了实现查询不重复的数据,MySQL提供了DISTINCT关键字,它的主要作用就是对数据表中一个或多个字段重复的数据进行过滤,只返回其中的一条数据... 目录DISTINCT 六大注意事项1. 作用范围:所有 SELECT 字段2. NULL 值的特殊处

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

SQL BETWEEN 语句的基本用法详解

《SQLBETWEEN语句的基本用法详解》SQLBETWEEN语句是一个用于在SQL查询中指定查询条件的重要工具,它允许用户指定一个范围,用于筛选符合特定条件的记录,本文将详细介绍BETWEEN语... 目录概述BETWEEN 语句的基本用法BETWEEN 语句的示例示例 1:查询年龄在 20 到 30 岁

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

CSS place-items: center解析与用法详解

《CSSplace-items:center解析与用法详解》place-items:center;是一个强大的CSS简写属性,用于同时控制网格(Grid)和弹性盒(Flexbox)... place-items: center; 是一个强大的 css 简写属性,用于同时控制 网格(Grid) 和 弹性盒(F

spring中的ImportSelector接口示例详解

《spring中的ImportSelector接口示例详解》Spring的ImportSelector接口用于动态选择配置类,实现条件化和模块化配置,关键方法selectImports根据注解信息返回... 目录一、核心作用二、关键方法三、扩展功能四、使用示例五、工作原理六、应用场景七、自定义实现Impor

SQLite3命令行工具最佳实践指南

《SQLite3命令行工具最佳实践指南》SQLite3是轻量级嵌入式数据库,无需服务器支持,具备ACID事务与跨平台特性,适用于小型项目和学习,sqlite3.exe作为命令行工具,支持SQL执行、数... 目录1. SQLite3简介和特点2. sqlite3.exe使用概述2.1 sqlite3.exe

一文深入详解Python的secrets模块

《一文深入详解Python的secrets模块》在构建涉及用户身份认证、权限管理、加密通信等系统时,开发者最不能忽视的一个问题就是“安全性”,Python在3.6版本中引入了专门面向安全用途的secr... 目录引言一、背景与动机:为什么需要 secrets 模块?二、secrets 模块的核心功能1. 基

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热