進程管理常用命令

Linux系統上的進程查看及管理工具:pstree,ps,pidof,pgrep,top,htop,glances,pmap,vmstat,dstat,kill,pkill,job,bg,fg,nohup,nice,renice,killall,…
CentOS 5 :SysV init
CentOS 6 :upstart
CentOS 7 :systemd
pstree命令:
pstree – display a tree of processes
ps命令:
通過/proc/端口: 內核中的狀態信息;
內核參數:
可設置其值從而調整內核運行特性的參數;
狀態變量:其用于輸出內核中通緝信息或狀態信息,僅用于查看;
參數:模擬成文件系統類型;
進程:
/proc/#:
#:PID
ps – report a snapshot of the current processes
ps[options]:
選項有三種風格:
1.UNIX options, which may be grouped and must be preceded by a dash.
        2.BSD options, which may be grouped and must not be used with a dash.
        3.GNU long options, which are preceded by two dashes. 
        啟動進程的方式:
        系統啟動過程中自動啟動:與終端無關的進程;
        用戶通過終端啟動:與終端相關的進程;
        選項:
        a:所有與終端相關的進程;(不是-a)
        x:所有與終端無關的進程;
        u:以用戶為中心組織進程狀態信息顯示;

        常用組合之一:aux
        VSZ:占用的虛擬內存集;
        RSS:Resident Size,常駐內存集;
        STAT:
        R:running
        S:Interruptable sleeping
        D:uninterruptable sleeping
        T:Stopped
        Z:zomble
        +:前臺進程
        l:多線程進程
        N:低優先級進程
        <:高優先級進程
        s:session leader

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

        常用組合之二:-ef
        -F:顯示完整格式的進程信息;
        C:cpu運行占用百分比
        PSR:運行于哪顆CPU之上
        -H:以層級結構顯示進程的相關信息;

        常用組合之三:-eFH
        常用組合之四:-餓eo,axo
        o field1,field2:自定義要顯示的字段列表,以逗號分隔;
        常用的field:pid,ni,pri,psr,pcpu,stat,comm,tty,ppid,rtprio
        ni:nice值;(范圍-10 — +19)
        pri:priority,優先級;
        rtprio:實時優先級;
        pgrep,pkill命令:
        根據進程名字和其他屬性對進程過濾的專用命令
        pgrep [options] pattern
        -u uid:effective user
        -U uid:read user
        -t TERMINAL :與指定的終端相關的進程;
        -l:顯示進程名;
        -a:顯示完整格式的進程名;
        -P pid:顯示此進程的子進程;
        pidof命令:
        根據進程名獲取其PID;
        top命令;
        排序:
        P:以占據CPU百分比排序;
        M:已以占據內存百分比排序;
        T:累計占用CPU時間排序;
        首部信息:
        uptime信息: l命令
        tasks及cpu信息:t命令
        內存信息:m命令
        退出命令:q
        修改刷新時間間隔:s
        終止指定的進程:k

        選項:
        -d#:指定刷新時間間隔,默認為3秒;
        -b:以批次方式顯示;
        -n#:顯示多少批次;

        uptime命令:顯示系統時間、運行時長及平均負載;
        過去1分鐘、5分鐘和15分鐘的平均負載;
        等待運行的進程隊列的長度;

Linux進程及作業管理
htop命令:
選項:
-d#:指定延遲時間間隔;
-u UserName:僅顯示指定用戶的進程;
-s COLUME:以指定字段進行排序;
子命令:
l:顯示選定的進程打開的文件列表;
s:跟蹤選定的進程的系統調用;
t:以層級關系顯示各進程狀態;
a:將選定的進程綁定至某指定的CPU核心;
vmstat命令:
-Report virtual memory statistics

vmstat [options][delay][count]
procs:
r:等待運行的進程的個數;CPU上等待運行的任務的隊列長度;
b:處于不可中斷睡眠態的進程個數;被阻塞的任務隊列的長度;
memory:
swpd:交換內存的使用總量;
free:空閑的物理內存總量;
buffer:用于buffer的內在總量;
cache:用于cache的內存總量;
swap:
si:數據進入swap中的數據速率(kb/s)
so:數據離開swap的速率(kb/s)
io:
bl:從塊設備讀入數據到系統的速度(kb/s)
bo:保存數據至塊設備的速率(kb/s)
system:
in:interrupts,中斷速率;
cs:context switch,上下文切換的速率;
cpu:
us:user space
sy:system
id:idle
wa:wait
st:stolen
選項:
-s:顯示內存統計數據;
pmap命令:
– report memory map of a process
pmap [options] pid […]
-x:顯示詳細格式的信息;

另一種查看方式:cat /proc/PID/maps

glances命令:
內建命令:
常用選項:
-b:以Byte為單位顯示網上數據速率;
-d:關閉磁盤I/O模塊;
-m:關閉mount模塊;
-n:關閉network模塊;
-t#:刷新時間間隔;
-l:每個cpu的相關數據單獨顯示;
-o{HTML|CSV}:輸出格式;
-f /PATH/TO/SOMEDIR:設定輸出文件的位置
c/s模式下運行glances命令:
服務模式:
glances -s -B IPADDR

IPADDR:本機的莫地址,用于監聽;

客戶端模式:
glances -c IPADDR

IPADDR:是遠程服務器的地址;
dstat命令:
– versatile tool for generating system resource statistics
dstat [-afv][options..][delay[count]]

常用選項:
   -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:延遲最大的進程;
kill命令:
用于向進程發送信號,以實現對進程的管理;

顯示當前系統可用信號:
kill -l [signal]

每個信號的表示方法有三種:
1)信號的數字標識;
2)信號的完整標識;
3)信號的簡寫名稱;

向進程發信號:
kill [-s signal | -p] pid…

常用信號:
1)SIGHUP:無須關閉進程而讓其重讀配置文件;
2)SIGINT:中止正在運行的進程,相當于Ctrl+c
9)SIGKILL:殺死運行中的進程;
15)SIGTERM:終止正在運行中的進程;(通常是后臺進程)
18)SIGCONT:繼續
19)SIGSTOP:停止
killall命令:
killall [-SIGNAL] program

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

(0)
木
上一篇 2017-05-17 08:48
下一篇 2017-05-17 10:26

相關推薦

  • date(時間),timedatectl(時區),cal(日歷)的用法

    date+%F 顯示日期,   顯示格式如 2017-07-15+%T 顯示時間    顯示格式如 15:00:15+%Y 顯示年      顯示格式如 2017+%m 月 +%d 日+%H 時+%M 分+%S 秒+%s 從linux初始到現在經歷了多少秒+%w 顯示數字形式的星期+%a …

    Linux干貨 2017-07-14
  • 【N25第一周作業】Linux上命令的使用格式和基礎命令詳解

    一、Linux上命令的使用格式 命令行提示符詳解: 用戶通過終端的命令行接口來控制操作系統,登陸后如下: [root@localhost ~]# root: 當前登錄的用戶 @:分隔符 localhost: 當前主機的主機名,非完整格式;此處的完整格式為:localhost.localdomain [root@localhost ~]#&…

    Linux干貨 2016-12-03
  • shell腳本編程之函數

      在編寫腳本時經常會遇到某個任務需要重復使用的問題,需每次都要輸入同樣的代碼是件挺煩人的事情,還好可以通過編寫函數還簡化這項工作。   函數其實就是給一段代碼起個名字,在每次使用這段代碼的時候可以直接使用函數名來調用就可以了。 一、創建函數   創建函數的格式有兩種:   格式1:function 函數名{ &nbs…

    Linux干貨 2016-01-05
  • CentOS系統啟動流程–上

    centos6啟動流程 1.加載BIOS的硬件信息,獲取第一個啟動設備。 2.讀取第一個啟動設備MBR的引導加載程序(grub)的啟動信息 3.加載核心操作系統的核心信息,核心開始解壓縮,并嘗試驅 動所有的硬件設備。 4.核型執行init程序并獲取運行信息。 5.Init執行/etc/rc.d/rc.sysinit文件。 6.啟動核心的外掛模塊(/etc/m…

    Linux干貨 2016-09-13
  • 計算機組成、服務器類型及幾個簡單的小命令

    計算機是1946年馮諾依曼提出的,被稱為馮諾依曼體系: 計算機的組成 1 運算設備 2 控制設備 3 儲存設備 4 輸入設備 5 輸出設備 服務器類型 1 塔式服務器 2 機架式服務器 3 刀片式服務器 服務器系統分為三大類 1 Windows 2 Linux 3 Uinx 命令 #ls           …

    Linux干貨 2017-07-13
  • 編譯安裝——吐血經驗,內附腳本

    程序包編譯安裝: 源碼包:name-VERSION-release.src.rpm         rpm由源碼包安裝后,使用rpmbuild命令制作成二進制格式的rpm包,而后再安裝        &nbsp…

    Linux干貨 2016-08-24
欧美性久久久久