Linux進程管理之“四大名捕”

一、四大名捕

四大名捕,最初出現于溫瑞安創作的武俠小說,是朝廷中正義力量諸葛小花的四大徒弟,四人各懷絕技,分別是輕功暗器高手“無情”、內功卓越的高手“鐵手”、腿功驚人的“追命”和劍法一流的“冷血”
本文四大名捕由linux命令所出演
      無情:ps     出演
      鐵手:dstat  出演
      追命:top    出演
      冷血:htop   出演

二、進程相關基礎知識

介紹四大名捕之前先介紹一下進程相關的基礎知識,話不多說,看圖。

進程1.png

三、輕功暗器高手“無情” [PS]

ps:用于顯示當前進程的狀態(非動態)
    ps [options]:
        選項有三種風格:
            1、UNIX風格,必須在選項前面加“-”
            2、BSD風格,選項前不能加“-”
            3、GNU風格,選項前為兩個“-”

        常用組合之一:aux

            a:所有與終端相關的進程

            x:所有與終端無關的進程

            u:以用戶為中心組織進程狀態信息顯示

進程2.png

    CPU%:cpu時間占用比率

    MEM%:內存占用百分比

    VSZ:virtual size虛擬內存集;

    RSS:Resident Size,常駐內存集;

    STAT:

                R:running 運行

        S:interruptable sleeping 可中斷睡眠

                D:uninterruptable sleeping 不可中斷睡眠

                T:Stopped 停止

                Z:zombie 僵死態

                +:前臺進程

                l:多線程進程

                N:低優先級進程

                <:高優先級進程

                s:session leader  進程領導者

        常用組合之二:-ef

                -e:顯示所有進程

                -f:顯示完整格式的進程信息

進程3.png

        常用組合之三:-eFH

                -F:顯示完整格式的進程信息;

                    C: cpu utilization cpu占用百分比

                    PSR:運行于哪顆CPU之上

                -H:以層級結構顯示進程的相關信息;

進程4.png

        常用組合之四:-eo, axo

            o  field1, field2,…:自定義要顯示的字段列表,以逗號分隔

                常用的field:pid, ni, priority, psr, pcpu, stat, comm, tty, ppid, rtprio

                    pid:進程的pid號

                    ni:nice值

                    priority:優先級

                    psr:運行在那顆cpu

                    pcpu:cpu利用率

                    ppid:父進程的id號

                    rtprio:實時優先級


四、內功卓越的高手“鐵手”[dstat]

dstat:系統資源統計命令(動態)
   dstat [-afv] [options..] [delay [count]] 

進程5.png

        常用選項:

            -c, –cpu:顯示cpu相關信息;

        -C #,#,…,total:顯示第一個cpu,第二個cpu或者總共的

    -d, –disk:顯示磁盤的相關信息

        -D sda,sdb,…,tobal:顯示指定硬盤設備,總空間

    -g:顯示page相關的速率數據;

    -m:Memory的相關統計數據

    -n:Interface的相關統計數據;

    -p:顯示process的相關統計數據;

    -r:顯示io請求的相關的統計數據;

    -s:顯示swapped的相關統計數據;

進程6.png

    –tcp:顯示tcp套接字

    –udp:顯示udp連接

    –raw:顯示裸套接字

    –socket:套接字

    –ipc:進程間通信信息

進程7.png

    –top-cpu:顯示最占用CPU的進程;

    –top-io:最占用io的進程;

    –top-mem:最占用內存的進程;

進程8.png

五、腿功驚人的“追命”[top]

top:列出inux進程
   top為動態顯示進程

進程9.png

top命令個參數具體含義:

top – 14:58:34 up  5:28,  1 user,  load average: 0.01, 0.02, 0.05

14:58:34:當前時間

up  5:28:運行時長 

1 user:登錄當前系統上的用戶數 

load average: 0.01, 0.02, 0.05:平均負載(等待運行的隊列長度的負載)

Tasks: 353 total,   2 running, 351 sleeping,   0 stopped,   0 zombie

Tasks:任務 

353 total:一共運行多少進程

2 running:幾個處于運行

351 sleeping:多少個睡眠

0 stopped:多少個停止

0 zombie:多少個僵死

%Cpu(s):  0.0 us,  0.7 sy,  0.0 ni, 99.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

%Cpu:cpu占用百分比

0.0 us:用戶空間占用的百分比

0.7 sy:內核空間占用時間的百分比

0.0 ni:對nice調整占用的內存百分比

99.3 id:空閑百分比

0.0 wa(wait):等待IO完成所消耗的百分比

0.0 hi:處理硬件中斷所占用的百分比

0.0 si:處理軟件中斷所占用的百分比

0.0 st:被偷走的百分比(虛擬化程序)

KiB Mem :  1001332 total,   681052 free,   139844 used,   180436 buff/cache

KiB Mem:內存空間占用,以KB為單位:

1001332 total:總內存空間

681052 free:剩余內存空間

139844 used:已用內存空間

180436 buff/cache:用于緩存和緩沖的內存空間

KiB Swap:  2098172 total,  2098172 free,        0 used.   698100 avail Mem 

KiB Swap:swap空間占用,以KB為單位

2098172 total:總空間

2098172 free:剩余空間

0 used:已用空間

698100 avail Mem :有效swap大小

 PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND             

3077 root      20   0  146276   2256   1420 R  1.7  0.2   0:02.91 top  

                PID:用戶pid

         USER:用戶名稱

                PR:優先級

                NI:nice值

                VIRT:virtual size虛擬內存集

                RES:常駐內存集

                SHR:共享內存空間

                S:當前狀態

                %CPU:占據CPU百分比

                %MEM:占據MEM百分比

                TIME+:運行時長

                COMMAND:命令

        top內排序:

            P:以占據CPU百分比排序

            M:以占據內存百分比排序

            T:累積占用CPU時間排序

    首部信息:

        uptime信息:l命令

            # 第一行沒有顯示

進程10.png

tasks及cpu信息:t命令

            # 可以禁用顯示硬盤及cpu相關消息

進程11.png

內存信息:m命令

            # 可以將內存使用率用|||顯示 或者白空格顯示

進程12.png

        退出命令:q

        修改刷新時間間隔:s

進程13.png

        終止指定的進程:k

進程14.png

        選項:

    -d #:指定刷新時間間隔,默認為3秒;

            -b:以批次方式顯示;

    -n #:顯示多少批次;

六、劍法一流“冷血”[htop]

htop:交互式進程查看器
    htop [-dus]

進程15.png

    # htop 是一個非常強大的工具,下面從F1到F10可以看到具體的參數信息。

    # F1 :幫助信息

進程16.png    

    選項:

        -d #:指定延遲時間間隔

        -u UserName:僅顯示指定用戶的進程

        -s COLUME:以指定字段進行排序

            常用子命令:

                l:顯示選定的進程打開的文件列表

                s:跟蹤選定的進程的系統調用

                t:以層級關系顯示各進程狀態

                a:將選定的進程綁定至某指定的CPU核心

    # 此處可以添加指定項到顯示屏幕上面,顯示方式可以是[Bar] [Text] [Graph] [LED]

進程17.png

進程管理相關命令就介紹到這了,感覺寫的不錯可以給點個贊。 
 作者:Ace QQ1257465991 Linux運維攻城獅一只 
 Q/A:如有問題請慷慨提出

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

(0)
AceAce
上一篇 2016-04-25 21:14
下一篇 2016-04-25 21:15

相關推薦

  • 任務計劃2

    [root@localhost app]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin:/root/bin MAILTO=root   # For details see man 4 crontabs   # Example of job defi…

    Linux干貨 2017-05-15
  • 配置CentOS模擬路由&網卡鏈路聚合

    一、如何通過虛擬網卡實現一個網卡多個IP 實驗環境:VMware虛擬機                   CentOS6.8                   單網卡:eth1…

    Linux干貨 2016-09-05
  • 馬哥教育網絡班20期+第一周課程練習

    一、計算機的組成及其功能。 計算機是由幾個單元所組成,輸入單元,輸出單元,運算器,控制器,存儲器,5大單元組成  1、運算器 又稱運算器又稱算術邏輯單元,它是計算機對數據進行加工處理的部件,包括算術運算(加、減、乘、除等)和邏輯運算(與、或、非、異或、比較等)。 2、控制器 負責從存儲器中取出指令,并對指令進行譯碼;根據指令的要求,按時間的先后順序…

    Linux干貨 2016-06-23
  • 馬哥教育網絡19期+第四周練習博客

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。  cp /etc/skel /home/tuser1  chmod -R  700 /home/tuser1 2、編輯/etc/group文件,…

    Linux干貨 2016-06-19
  • 不重啟添加硬盤

    添加硬盤后 ls /dev/sd* 不重啟添加硬盤 [root@localhost ~]# cd /sys/class/scsi_host/ [root@localhost scsi_host]# ls host0? host1? host2 [root@localhost scsi_host]# echo “- – -”…

    Linux干貨 2017-10-21
  • 正則表達式字符集

    POSIX Description ASCII Unicode Shorthand Java [:alnum:] Alphanumeric characters [a–zA–Z0–9] [\p{L}\p{Nl}  \p{Nd}] \p{Alnum} [:alpha:] Alphabetic characters …

    Linux干貨 2017-07-07
欧美性久久久久