Linux進程管理三劍客htop、ps、dstat

ps命令

Unix有兩種主要分支:官方的Unix(AT&T)和非官方的Unix(加利福利亞大學伯克利分校)。UNIX("帶-")和BSD(不帶東西)都有自己的ps版本,并且ps版本都很出名,并被廣泛使用。最終結果是許多現代版本的ps都同時支持兩種類型的選項,即所謂的Unix選項和BSD選項。而且還有一組選項支持GUN的選項.

所以不要在同一個命令中使用兩種類型的選項. 下面將詳細敘述一下幾組常見的組合:

ps -l

這里寫圖片描述

F與進程相關的標志(flag),4表示使用者為super user S狀態代碼(D\R\S\T\Z)

R:running,運行或運行隊列等待
S:interruptable sleeping,可中斷睡眠,等待事件結束
D:uninterruptable sleeping,不可中斷睡眠,等待事件結束
T:Stopped,掛起:由作業控制信號掛起或者因為追蹤而被掛起
Z:zombie,僵進程:終止后,父進程沒有等待

PID:進程id

PPID:父進程的id

C:CPU利用率

PRI:priority,優先級(較大數字=較低優先級)

NI:nice值,用于設置優先級

ADDR:進程表中的虛擬地址

SZ:物理頁的大?。▋却婀芾恚?,使用掉的內存大小

WCHAN:等待通道(wait表等待,-表運作)

TTY:控制終端的名稱

TIME:累計(使用)CPU時間

CMD:正被執行的命令名稱

ps aux

這里寫圖片描述

PID:該進程的進程id

VSZ:該進程所使用虛擬內存大小,單位為KB

RSS:該進程占用的固定內存大小,單位為KB

TTY:控制該進程終端的名稱,若與終端機無關,則顯示 ?

STAT:該進程狀態代碼

START:定時啟動的事件

TIME:該 process 實際使用 CPU 運作的時間。

COMMAND:正在執行該進程命令的完整名稱

ps -ef(-e:顯示所有進程,-f:顯示完整格式的進程信息)

這里寫圖片描述

STIME:累計系統時間

ps -eFH

這里寫圖片描述

PSR:運行于哪塊CPU之上

ps axo 自定義要顯示的字段列表,以逗號分隔


htop(監視系統進程,top升級版)

下載要到epel源上下載 這里寫圖片描述

PID:進行的標識號
USER:運行此進程的用戶
PRI:進程的優先級
NI:進程的優先級別值,默認的為0,可以進行調整
VIRT:進程占用的虛擬內存值
RES:進程占用的物理內存值
SHR:進程占用的共享內存值
S:進程的運行狀況,R表示正在運行、S表示休眠,等待喚醒、Z表示僵死狀態
%CPU:該進程占用的CPU使用率
%MEM:該進程占用的物理內存和總內存的百分比
TIME+:該進程啟動后占用的總的CPU時間
COMMAND:進程啟動的啟動命令名稱

F1顯示幫助信息,也可以用鼠標點 這里寫圖片描述

dstat(很強大,融合以上命令功能)

這里寫圖片描述

CPU狀態:CPU的使用率。這項報告更有趣的部分是顯示了用戶,系統和空閑部分,這更好地分析了CPU當前的使用狀況。如果你看到"wait"一欄中,CPU的狀態是一個高使用率值,那說明系統存在一些其它問題。當CPU的狀態處在"waits"時,那是因為它正在等待I/O設備(例如內存,磁盤或者網絡)的響應而且還沒有收到。

磁盤統計:磁盤的讀寫操作,這一欄顯示磁盤的讀、寫總數。

網絡統計:網絡設備發送和接受的數據,這一欄顯示的網絡收、發數據總數。

分頁統計:系統的分頁活動。分頁指的是一種內存管理技術用于查找系統場景,一個較大的分頁表明系統正在使用大量的交換空間,或者說內存非常分散,大多數情況下你都希望看到page in(換入)和page out(換出)的值是0 0。

系統統計:這一項顯示的是中斷(int)和上下文切換(csw)。這項統計僅在有比較基線時才有意義。這一欄中較高的統計值通常表示大量的進程造成擁塞,需要對CPU進行關注。你的服務器一般情況下都會運行運行一些程序,所以這項總是顯示一些數值。

默認情況下,dstat每秒都會刷新數據。如果想退出dstat,你可以按"CTRL-C"鍵。 也可以用dstat 2 3 ,2秒一次,測3次。

常用選項:

        -c, --cpu:顯示cpu相關信息;
            -C #,#,...,total
        -d, --disk:顯示磁盤的相關信息
            -D sda,sdb,...,tobal
        -g:顯示page相關的速率數據;
        -m:Memory的相關統計數據
        -n:Interface的相關統計數據;
        -p:顯示process的相關統計數據;
        -r:顯示io請求的相關的統計數據;
        -s:顯示swapped的相關統計數據;

        --tcp 
        --udp
        --raw 
        --socket 

        --ipc 

        --top-cpu:顯示最占用CPU的進程;
        --top-io:最占用io的進程;
        --top-mem:最占用內存的進程;
        --top-lantency:延遲最大的進程;

原創文章,作者:N24_yezi,如若轉載,請注明出處:http://www.www58058.com/60343

(0)
N24_yeziN24_yezi
上一篇 2016-11-22 12:38
下一篇 2016-11-22 12:50

相關推薦

  • 程序包管理rpm&yum&編譯安裝

    centos6.6程序包管理 二進制應用程序的組成部分: 二進制文件,庫文件,配置文件和幫助文件 程序包管理器:rpm rpm包管理器的前端工具:yum 程序包之間存在依賴關系 rpm的命名方式: name_VERSION_release.arch.rpm     VERSION: major.minor.r…

    Linux干貨 2016-07-07
  • Storm集群安裝詳解

    storm有兩種操作模式: 本地模式和遠程模式。 本地模式:你可以在你的本地機器上開發測試你的topology, 一切都在你的本地機器上模擬出來;  遠端模式:你提交的topology會在一個集群的機器上執行。 本文以Twitter Storm官方Wiki為基礎,詳細描述如何快速搭建一個Storm集群,其中,項目實踐中遇到的問題及經驗總結,在相應章…

    Linux干貨 2015-04-04
  • 19道小米網運維工程師筆試真題,你能通關嗎?

    第一部分:Linux基礎 題目1: 有一百個圖片文件,它們的地址都是 http://down.xiaomi.com/img/1.png http://down.xiaomi.com/img/2.png … 一直到http://down.xiaomi.com/img/100.png 批量下載這100個圖片文件,并找出其中大于500KB的文件。 題目2: 一個文…

    2017-09-08
  • Linux網絡管理&腳本編程之執行流程、循環

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。 網橋(Bridge):是早期的兩端口二層網絡設備,用來連接不同網段。網橋的兩個端口分別有一條獨立的交換信道,不是共享一條背板總線,可隔離沖突域。網橋比集線器(Hub)性能更好,集線器上各端口都是共享同一條背板總線的。后來,網橋被具有更多端口、同時也可隔離沖突域的交換機(Switc…

    Linux干貨 2016-11-14
  • ansible原理及簡單應用

    一、基礎介紹 1、簡介 ansible是新出現的自動化運維工具,基于python開發,集合了眾多運維工具(puppet、cfengine、chef、func、fabric)的優點,實現了批量系統配置、批量程序部署、批量運行命令等功能。ansible是基于模塊工作的,本身沒有批量部署的能力。真正具有批量部署的是ansible所運行的模塊,ansible只是提供…

    Linux干貨 2016-01-13
  • Mysql 多表聯合查詢效率分析及優化

    1. 多表連接類型 1. 笛卡爾積(交叉連接) 在MySQL中可以為CROSS JOIN或者省略CROSS即JOIN,或者使用','  如:  SELECT * FROM table1 CROSS JOIN table2  &nb…

    Linux干貨 2015-04-13

評論列表(1條)

  • luoweiro
    luoweiro 2016-11-30 23:59

    三劍客整理的不錯,不過對于知識的,希望能拓展自己的視角,不僅僅是實用工具,還有要去關注具體的數據指標,以及指標異常找出問題的原因,這樣工具的價值才得以體現。

欧美性久久久久