linux系統監控工具之top命令詳解

top作爲日常管理工作中最常用也是最重要的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 : 反向排序

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章