Linux是一個多用戶、多任務的操作系統。在這樣的系統中,各種計算機資源(如文件、內存、CPU等)的分配和管理都以進程爲單位,而進程是有生命週期的,將一個程序提交給內核並運行起來,這就是一個進程,而我的服務器上同時可能運行着很多進程,這些進程佔用的資源或多或少,運行進程的用戶也各不相同,各個進程間的優先級也盡不相同,而進程也有許多種狀態,此時我們就需要一種軟件,可以獲取各個進程佔用了哪些系統資源,當前系統上還剩餘多少資源,這就用到了進程管理工具,本文列舉了三種非常強大的進程管理工具,此下一一說明:
一、htop
htop 官網:http://htop.sourceforge.net/
與Linux傳統的top相比,htop更加人性化。它可讓用戶交互式操作,支持顏色主題,可橫向或縱向滾動瀏覽進程列表,並支持鼠標操作。
與top相比,htop有以下優點:
可以橫向或縱向滾動瀏覽進程列表,以便看到所有的進程和完整的命令行。
在啓動上,比top 更快。
殺進程時不需要輸入進程號。
htop 支持鼠標操作。
top 已經很老了。
1、安裝 htop
可以通過 yum install htop 來安裝它,但前提是要添加epel 的yum源,下面介紹epel?
EPEL 是什麼?
EPEL (Extra Packages for Enterprise Linux,企業版Linux的額外軟件包) 是Fedora小組維護的一個軟件倉庫項目,爲RHEL/CentOS提供他們默認不提供的軟件包。這個源兼容RHEL及像CentOS和Scientific Linux這樣的衍生版本。
htop軟件包默認情況下系統並沒有安裝,而 htop 正是由 EPEL 源所提供的程序,所以我們想安裝htop需要先安裝 epel 源;
# rpm -ivh http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm # rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL //導入key # yum install htop
# htop
Shortcut Key | Function Key | Description | 中文說明 |
h,? | F1 | Invoke htop Help | 查看htop使用說明 |
S | F2 | Htop Setup Menu | htop 設定 |
/ | F3 | Search for a Process | 搜索進程 |
\ | F4 | Incremental Process filtering | 增量進程過濾器 |
t | F5 | Tree View | 顯示樹形結構 |
<,> | F6 | Sort by a column | 選擇排序方式 |
[ | F7 | Nice - (change priority) | 可減少nice值,這樣就可以提高對應進程優先級 |
] | F8 | Nice + (change priority) | 可減少nice值,這樣就可以降低對應進程優先 級 |
k | F9 | Kill a Process | 可對進程傳遞信號 |
q | F10 | Quit htop | 結束htop |
命令行選項(COMMAND-LINE OPTIONS)
-C --no-color 使用一個單色的配色方案
-d --delay=DELAY 設置延遲更新時間,單位秒
-h --help 顯示htop 命令幫助信息
-u --user=USERNAME 只顯示一個給定的用戶的過程
-p --pid=PID,PID… 只顯示給定的PIDs
-s --sort-key COLUMN 依此列來排序
-v –version 顯示版本信息
交互式命令(INTERACTIVE COMMANDS)
上下鍵或PgUP, PgDn 選定想要的進程,左右鍵或Home, End 移動字段,當然也可以直接用鼠標選定進程;
Space 標記/取消標記一個進程。命令可以作用於多個進程,例如 "kill",將應用於所有已標記的進程
U 取消標記所有進程
s 選擇某一進程,按s:用strace追蹤進程的系統調用
l 顯示進程打開的文件: 如果安裝了lsof,按此鍵可以顯示進程所打開的文件
I 倒轉排序順序,如果排序是正序的,則反轉成倒序的,反之亦然
+, - When in tree view mode, expand or collapse subtree. When a subtree is collapsed a "+" sign shows to the left of the process name.
a (在有多處理器的機器上) 設置 CPU affinity: 標記一個進程允許使用哪些CPU
u 顯示特定用戶進程
M 按Memory 使用排序
P 按CPU 使用排序
T 按Time+ 使用排序
F 跟蹤進程: 如果排序順序引起選定的進程在列表上到處移動,讓選定條跟隨該進程。這對監視一個進程非常有用:通過這種方式,你可以讓一個進程在屏幕上一直可見。使用方向鍵會停止該功能。
K 顯示/隱藏內核線程
H 顯示/隱藏用戶線程
Ctrl-L 刷新
Numbers PID 查找: 輸入PID,光標將移動到相應的進程上
此時按下 F1 鍵進入幫助:
F2鍵進入具體設定:
對於 htop 這個進程管理工具的使用,就講解到這裏, htop 是一個非常強大的工具,增加了許多 top 不具有的功能,界面交互也更加人性化,因爲筆者水平有限,在這裏只做了簡單介紹,如有疏漏不妥之處,還請不吝賜教!