作者:飞哥 ()
版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明。
top作为日常管理工作中最常用也是最重要的工具之一,可以动态观察系统进程状况,方便系统管理员实时了解系统资源现状。
| |
|
|
一、相关设定默认值
全局
'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 : 反向排序 | |
|
|
其他
五、练习
1.怎么让top外观显示类似下图?
2.怎样监控httpd进程状况?
3.怎么提高httpd进程运行优先权等级?