進程查看管理工具htop/dstat/top/ps

ps:顯示系統當前進程的運行情況

        選項與參數(一):
           a:所有與終端相關的進程;
   x:所有與終端無關的進程;
   u:以用戶為中心組織進程狀態信息顯示;
        選項與參數(二):
   -e:顯示所有進程
   -f:顯示完整格式的進程信息
        選項與參數(三):
   -F:顯示完整格式的進程信息;
C: cpu utilization
PSR:運行于哪顆CPU之上
   -H:以層級結構顯示進程的相關信息;

             o  field1, field2,…:自定義要顯示的字段列表,以逗號分隔;
常用的field:pid, ni, pri, psr, pcpu, stat, comm, tty, ppid, rtprio
ni:nice值;
priority:priority, 優先級;
rtprio:real time priority,實時優先級;    
       常用的組合方式:
            1、ps aux
            2、ps -ef
            3、ps axo / ps -eo
            4、ps -eFH
        
        ps -ef
  1. [root@centos7 ~]# ps -ef
  2. UID PID PPID C STIME TTY TIME CMD
  3. root 1 0 0 1203 ? 00:00:11 /usr/lib/systemd/systemd --switched-root --system --d
  4. root 2 0 0 1203 ? 00:00:00 [kthreadd]
  5. root 3 2 0 1203 ? 00:00:00 [ksoftirqd/0]
  6. root 7 2 0 1203 ? 00:00:00 [migration/0]
  7. root 8 2 0 1203 ? 00:00:00 [rcu_bh]
        UID/PID/PPID:代表該進程的發起者/進程號/父進程號
        C:代表CPU的使用百分比
        STIME:表示進程的啟動時間
        TTY:進程的終端,遠程登錄顯示ptn/n,本地登錄顯示ttyn,?表示系統進程
        TIME:進程實際花費CPU的運行時間,不是系統時間
        CMD:command的縮寫,觸發此進程的命令

      ps aux
  1. [root@centos7 ~]# ps aux
  2. USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
  3. root 1 0.0 1.3 125952 6760 ? Ss 1203 0:11 /usr/lib/systemd/systemd --switched
  4. root 2 0.0 0.0 0 0 ? S 1203 0:00 [kthreadd]
  5. root 3 0.0 0.0 0 0 ? S 1203 0:00 [ksoftirqd/0]
  6. root 7 0.0 0.0 0 0 ? S 1203 0:00 [migration/0]
        USER:進程的發起者
        PID:進程號
        %CPU:進程使用掉的CPU資源百分比
        %MEM:進程占用的物理內存百分比
        VSZ:進程占用的虛擬內存大小,單位為kb
        RSS:進程占用的固定內存大小,單位為kb
        TTY:進程在哪個終端運行
        STAT:進程目前的狀態
        START:進程被觸發的時間
        TIME:進程實際使用CPU的時間
        COMMAND:觸發此進程的命令
top– display Linux processes
  1. top - 15:42:42 up 1 day, 3 min, 1 user, load average: 0.00, 0.01, 0.05
  2. Tasks: 343 total, 2 running, 341 sleeping, 0 stopped, 0 zombie
  3. %Cpu(s): 0.0 us, 0.1 sy, 0.0 ni, 99.8 id, 0.1 wa, 0.0 hi, 0.0 si, 0.0 st
  4. KiB Mem : 485252 total, 71020 free, 91756 used, 322476 buff/cache
  5. KiB Swap: 524284 total, 523168 free, 1116 used. 336704 avail Mem
  6. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
  7. 1 root 20 0 125952 6760 3908 S 0.0 1.4 0:11.36 systemd
  8. 2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd
  9. 3 root 20 0 0 0 0 S 0.0 0.0 0:00.32 ksoftirqd/0
  10. 7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
第一行:當前系統時間    系統啟動的時間    登錄用戶數    1,5,15分鐘的平均負載
第二行:目前進程的總量與個別程序在什么狀態(running、sleeping、stopped、zombie)。注意zombie的數值,如果不是0需要查看哪個進程處于僵死狀態。
第三行:顯示CPU的整體負載,如果是多核CPU,可以按數字鍵1來切換不同CPU的負載率。
                us:user space 用戶運行進程占用的CPU百分比
                sy:system(kernel space) 用于運行內核占用CPU百分比
                ni:nice 用戶進程空間所改變過優先級的進程占用CPU百分比
                id:idle 空閑CPU百分比
                wa:等待輸入輸出CPU時間百分比
                hi:hardware interrupt 硬鍵中端占用CPU百分比
                si:software interrupt 軟鍵中斷占用CPU百分比
                st:stolen 被虛擬機“偷走”的百分比
第四行:物理內存的使用情況
第五行:交換分區的使用情況
第六行:空白行,當在top程序中輸入命令時,顯示狀態的地方。
            命令:
排序:
P:以占據CPU百分比排序;
M:以占據內存百分比排序;
T:累積占用CPU時間排序;
首部信息:
是否顯示uptime信息:l命令
是否顯示tasks及cpu信息:t命令
是否顯示內存信息:m命令
退出命令:q
修改刷新時間間隔:s
終止指定的進程:k
第七行:
  1. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
  2. 1 root 20 0 125952 6760 3908 S 0.0 1.4 0:11.36 systemd
  3. 2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd
       
                PID:進程ID    USER:進程使用者         
                PR:Priority,進程優先級,越小優先級越高
                NI:Nice,與Priority有關,越小越早被運行
                VIRT:進程需要的虛擬內存大小,而非使用的虛擬內存大小
                RES:進程當前使用的內存大小,不包括swap
                SHR:進程與其他程序共享的內存大小,可以使用RES-SHR來計算進程所占用的物理內存大小
                S:進程的狀態
                %CPU:CPU使用率
                %MEM:內存的使用率
                TIME+:CPU使用時間的累加
        top命令支持的選項:
-d #:指定刷新時間間隔,默認為3秒;
-b:batch,以批次方式顯示;
-n #:顯示多少批次。
htop    – top命令的增強版,需要epel源來進行安裝
            進程查看管理工具htop/dstat/top/ps
         htop界面所支持的一些交互式命令:
            u:選擇顯示指定用戶的進程
                l:顯示光標所在進程所打開的文件列表
                s:顯示光標所在進程執行的系統調用
t:以層級關系顯示各進程狀態;
                a:綁定進程到指定的cpu
                #:快速定位光標至PID為#的進程上
        htop支持的一些選項:
                -d #:延遲時長
                -u USERNAME:僅顯示指定用戶的進程
                -s COLUMN:根據指定字段進行排序
dstat  dstat 可以實時的看到所有的系統資源
            進程查看管理工具htop/dstat/top/ps

         total-cpu-usage:cpu的使用率
        dsk/total:磁盤讀寫總數
        net/total:網絡設備發送和接受的數據總數
        paging:系統的分頁活動
        system:顯示中斷(int)和上下文切換(csw)
        dstat還支持一些常用的選項:
-c, –cpu:顯示cpu相關信息;
-d, –disk:顯示磁盤的相關信息
-g:顯示page相關的速率數據;
-m:Memory的相關統計數據
-n:Interface的相關統計數據;
-p:顯示process的相關統計數據;
-r:顯示io請求的相關的統計數據;
-s:顯示swapped的相關統計數據;
                                 -l:顯示load average數據
                                 -y:顯示系統相關數據,包括中斷和進程切換
–top-cpu:顯示最占用CPU的進程;
–top-io:最占用io的進程;
–top-mem:最占用內存的進程;
–top-lantency:延遲最大的進程;
                                –top-bio:最消耗block io的進程
                                –ipc:顯示進程間通信相關的速率數據
                                –raw:顯示raw套接的相關數據
                                –tcp:tcp套接字的相關數據
                                –udp:udp套接字的相關數據
       
       查看占用內存最高的進程信息
  1. [root@centos7 ~]# dstat -g -l -m -s --top-mem
  2. ---paging-- ---load-avg--- ------memory-usage----- ----swap--- --most-expensive-
  3. in out | 1m 5m 15m | used buff cach free| used free| memory process
  4. 0 13B| 0 0.01 0.05| 176M 0 235M 63.2M|1116k 511M|tuned 15.0M
  5. 0 0 | 0 0.01 0.05| 176M 0 235M 63.1M|1116k 511M|tuned 15.0M
  6. 0 0 | 0 0.01 0.05| 176M 0 235M 63.1M|1116k 511M|tuned 15.0M
  7. 0 0 | 0 0.01 0.05| 176M 0 235M 63.1M|1116k 511M|tuned 15.0M
        查看最占用CPU的進程信息
  1. [root@centos7 ~]# dstat -c -y -l --proc-count --top-cpu
  2. ----total-cpu-usage---- ---system-- ---load-avg--- proc -most-expensive-
  3. usr sys idl wai hiq siq| int csw | 1m 5m 15m |tota| cpu process
  4. 0 0 100 0 0 0| 17 22 | 0 0.01 0.05| 342|kworker/0:1 0.1
  5. 1 1 98 0 0 0| 66 72 | 0 0.01 0.05| 342|kworker/0:1 1.0
  6. 3 2 94 0 0 1| 75 66 | 0 0.01 0.05| 342|
  7. 2 1 97 0 0 0| 82 74 | 0 0.01 0.05| 342|
  8. 3 2 95 0 0 0| 82 74 | 0 0.01 0.05| 342|tuned 3.0

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

(0)
N24_ViCiN24_ViCi
上一篇 2016-12-04 21:46
下一篇 2016-12-04 22:30

相關推薦

  • SHELL流程控制之循環

    當進行腳本編程時,語句執行的流程控制通常有三種: l  順序執行 l  選擇執行 l  循環執行   條件選擇if: if語句可以進行嵌套 if 判斷條件;then          條件為真的分支代碼 elif  判斷條件;th…

    Linux干貨 2016-08-18
  • suid, sgid, sticky簡介

    SUID屬性 passwd命令可以用于更改用戶的密碼,一般用戶可以使用這個命令修改自己的密碼。但是保存用戶密碼的/etc/shadow文件的權限是000,也就是說只有文件的所有者root用戶可以寫入,那為什么其他用戶也可以修改自己的密碼呢?這就是由于Linux的文件系統中的文件有SUID屬性。 [root@centos6 ~]# ll /etc/shadow…

    Linux干貨 2017-07-27
  • 自建CA搭建SSL加密網站

    企業環境中,在安全級別要求較高的公司,經常需要搭建基于SSL加密傳輸的網站,使用https協議訪問web站點,能大大提高網站的安全性。但構建https站點,需要用到證書。內部網站到互聯網上申請費用不菲的證書顯然不符合經濟性。于是,自建內部CA成為我們的首選。 本文以兩臺服務器,分別扮演CA及Web網站的角色,詳細論述自建CA搭建加密網站的過程。  …

    Linux干貨 2016-07-29
  • 文件管理的相關命令使用及標準I/O,管道,diff及文件工具的使用

    mkdir 創建目錄-p: 存在于不報錯可自動創建所需的各目錄 (遞歸創建)mkdir -p a/d/c/b-m: mode 創建時指定權限  # mkdir -m 777 filename       rmdir刪除空目錄 -p 遞歸刪除空目錄 touch 當文件不存在時,則創建一個空文…

    2017-07-29
  • 磁盤管理詳解

    linux系統如何識別硬盤 硬盤類型:        按接口可劃分為        并行             &nb…

    Linux干貨 2016-08-29
  • raid各級別簡介

    一. raid 是什么       RAID:(Redundant Array of indenpensive Disk) 獨立磁盤冗余陣列: 磁盤陣列是把多個磁盤組成一個陣列,當作單一磁盤使用,它將數據以分段(striping)的方式儲存在不同的磁盤中,存取數據時,陣列中的相關磁盤一起動作,大幅減低數據的存…

    Linux干貨 2016-02-14

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-12-14 15:40

    進程管理非常的重要的,希望你能非常清晰的理解各選項的意思。

欧美性久久久久