進程狀態(tài)

顯示其他用戶啟動的進程(a)

查看系統(tǒng)中屬于自己的進程(x)

啟動這個進程的用戶和它啟動的時間(u)

使用“date -s”命令來修改系統(tǒng)時間

比如將系統(tǒng)時間設定成1996年6月10日的命令如下流礁。

#date -s 06/10/96

將系統(tǒng)時間設定成下午1點12分0秒的命令如下。

#date -s 13:12:00

------------------------------------------------------

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

root 1 0.0 0.0 1340 440 ? S Nov05 0:04 init

root 2 0.0 0.0 0 0 ? SW Nov05 0:00 [keventd]

root 3 0.0 0.0 0 0 ? SW Nov05 0:00 [keventd]

...

------------------------------------------------------

USER域指明了是哪個用戶啟動了這個命令;

用戶可以查看某個進程占用了多少CPU;

內(nèi)存使用及其VSZ(虛擬內(nèi)存大锈捎印)和RSS(常駐集大谢鸬恕):

VSZ表示如果一個程序完全駐留在內(nèi)存的話需要占用多少內(nèi)存空間;

RSS指明了當前實際占用了多少內(nèi)存;

STAT顯示了進程當前的狀態(tài):

"S":進程處在睡眠狀態(tài),表明這些進程在等待某些事件發(fā)生--可能是用戶輸入或者系統(tǒng)資源的可用性;

last命令可以有效的查看系統(tǒng)登錄事件

在一個進程調(diào)用了exit之后无埃,該進程并非馬上就消失掉蜒谤,而是留下一個稱為僵尸進程(Zombie)的數(shù)據(jù)結(jié)構(gòu)击费。在Linux進程的5種狀態(tài)中赋兵,僵尸進程是非常特殊的一種笔咽,它已經(jīng)放棄了幾乎所有內(nèi)存空間,沒有任何可執(zhí)行代碼霹期,也不能被調(diào)度叶组,僅僅在進程列表中保留一個位置,記載該進程的退出狀態(tài)等信息供其他進程收集历造,除此之外甩十,僵尸進程不再占有任何內(nèi)存空間。

系統(tǒng)調(diào)用exit的作用是使進程退出吭产,但也僅僅限于將一個正常的進程變成一個僵尸進程侣监,并不能將其完全銷毀。

進程一旦調(diào)用了wait臣淤,就立即阻塞自己橄霉,由wait自動分析是否當前進程的某個子進程已經(jīng)退出,如果讓它找到了這樣一個已經(jīng)變成僵尸的子進程邑蒋,wait 就會收集這個子進程的信息姓蜂,并把它徹底銷毀后返回按厘;如果沒有找到這樣一個子進程,wait就會一直阻塞在這里钱慢,直到有一個出現(xiàn)為止刻剥。

轉(zhuǎn)載? ps aux 中STAT 解釋 收藏

運行 ps aux 的到如下信息:

ps aux

USER? ? PID? %CPU %MEM VSZ? RSS TTY? ? STAT? START TIME COMMAND

smmsp 3521? 0.0? ? 0.7? ? 6556 1616? ? ?? ? ? ? Ss? ? ? 20:40 0:00 sendmail: Queue runner@01:00:00 f

root? ? 3532? ? 0.0? ? ? 0.2? ? 2428? ? 452? ? ?? ? ? ? Ss? ? ? 20:40 0:00 gpm -m /dev/input/mice -t imps2

htt? ? ? ? 3563? ? 0.0? ? ? 0.0? ? 2956? ? 196? ? ?? ? ? ? Ss? ? ? 20:41 0:00 /usr/sbin/htt -retryonerror 0

htt? ? ? ? 3564? ? 0.0? ? ? 1.7? 29460 3704? ? ?? ? ? ? Sl? ? ? ? 20:41 0:00 htt_server -nodaemon

root? ? ? 3574? ? 0.0? ? ? 0.4? ? 5236 992? ? ?? ? ? ? Ss? ? ? 20:41 0:00 crond

xfs? ? ? ? 3617? ? 0.0? ? ? 1.3? 13572 2804? ? ?? ? ? ? Ss? ? ? 20:41 0:00 xfs -droppriv -daemon

root? ? ? 3627? 0.0? ? ? 0.2? ? 3448? ? 552? ? ?? ? ? ? SNs? ? 20:41 0:00 anacron -s

root? ? ? 3636? ? 0.0? ? ? 0.1? ? 2304? ? 420? ? ?? ? ? ? Ss? ? ? 20:41 0:00 /usr/sbin/atd

dbus? ? 3655? ? 0.0? ? ? 0.5? 13840 1084? ? ?? ? ? ? Ssl? ? ? 20:41 0:00 dbus-daemon-1 --system

....................................

stat 中的參數(shù)意義如下:

D 不可中斷 Uninterruptible(usually IO)

R 正在運行,或在隊列中的進程

S 處于休眠狀態(tài)

T 停止或被追蹤

Z 僵尸進程

W 進入內(nèi)存交換(從內(nèi)核2.6開始無效)

X? 死掉的進程

< 高優(yōu)先級

n? 低優(yōu)先級

s? 包含子進程

+? 位于后臺的進程組

======================================

ps命令

要對進程進行監(jiān)測和控制,首先必須要了解當前進程的情況,也就是需要查看當前進程,而ps命令就是最基本同時也是非常強大的進程查看命令.使用該命令可以確定有哪些進程正在運行和運行的狀態(tài)滩字、進程是否結(jié)束造虏、進程有沒有僵尸、哪些進程占用了過多的資源等等.總之大部分信息都是可以通過執(zhí)行該命令得到的.

ps命令最常用的還是用于監(jiān)控后臺進程的工作情況,因為后臺進程是不和屏幕鍵盤這些標準輸入/輸出設備進行通信的,所以如果需要檢測其情況,便可以使用ps命令了.

1)ps a 顯示現(xiàn)行終端機下的所有程序麦箍,包括其他用戶的程序漓藕。

2)ps -A 顯示所有程序。

3)ps c 列出程序時挟裂,顯示每個程序真正的指令名稱享钞,而不包含路徑,參數(shù)或常駐服務的標示诀蓉。

4)ps -e 此參數(shù)的效果和指定"A"參數(shù)相同栗竖。

5)ps e 列出程序時,顯示每個程序所使用的環(huán)境變量渠啤。

6)ps f 用ASCII字符顯示樹狀結(jié)構(gòu)狐肢,表達程序間的相互關系。

7)ps -H 顯示樹狀結(jié)構(gòu)沥曹,表示程序間的相互關系份名。

8)ps -N 顯示所有的程序,除了執(zhí)行ps指令終端機下的程序之外妓美。

9)ps s 采用程序信號的格式顯示程序狀況僵腺。

10)ps S 列出程序時,包括已中斷的子程序資料壶栋。

11)ps -t<終端機編號>  指定終端機編號辰如,并列出屬于該終端機的程序的狀況。

12)ps u  以用戶為主的格式來顯示程序狀況贵试。

13)ps x  顯示所有程序琉兜,不以終端機來區(qū)分。

最常用的方法是ps -aux,然后再利用一個管道符號導向到grep去查找特定的進程,然后再對特定的進程進行操作锡移。

linux上進程有5種狀態(tài):

1. 運行(正在運行或在運行隊列中等待)

2. 中斷(休眠中, 受阻, 在等待某個條件的形成或接受到信號)

3. 不可中斷(收到信號不喚醒和不可運行, 進程必須等待直到有中斷發(fā)生)

4. 僵死(進程已終止, 但進程描述符存在, 直到父進程調(diào)用wait4()系統(tǒng)調(diào)用后釋放)

5. 停止(進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號后停止運行運行)

ps工具標識進程的5種狀態(tài)碼:

D 不可中斷 uninterruptible sleep (usually IO)

R 運行 runnable (on run queue)

S 中斷 sleeping

T 停止 traced or stopped

Z 僵死 a defunct (”zombie”) process

注: 其它狀態(tài)還包括W(無駐留頁), <(高優(yōu)先級進程), N(低優(yōu)先級進程), L(內(nèi)存鎖頁).

使用ps格式輸出來查看進程狀態(tài):

ps -eo user,stat..,cmd

user 用戶名

uid 用戶號

pid 進程號

ppid 父進程號

size 內(nèi)存大小, Kbytes字節(jié).

vsize 總虛擬內(nèi)存大小, bytes字節(jié)(包含code+data+stack)

share 總共享頁數(shù)

nice 進程優(yōu)先級(缺省為0, 最大為-20)

priority(pri) 內(nèi)核調(diào)度優(yōu)先級

pmem 進程分享的物理內(nèi)存數(shù)的百分比

trs 程序執(zhí)行代碼駐留大小

rss 進程使用的總物理內(nèi)存數(shù), Kbytes字節(jié)

time 進程執(zhí)行起到現(xiàn)在總的CPU暫用時間

stat 進程狀態(tài)

cmd(args) 執(zhí)行命令的簡單格式

例子:

查看當前系統(tǒng)進程的uid,pid,stat,pri, 以uid號排序.

ps -eo pid,stat,pri,uid –sort uid

查看當前系統(tǒng)進程的user,pid,stat,rss,args, 以rss排序.

ps -eo user,pid,stat,rss,args –sort rss

名稱:ps

使用權(quán)限:所有使用者

使用方式:ps [options] [--help]

說明:顯示瞬間行程 (process) 的動態(tài)

參數(shù):

ps 的參數(shù)非常多, 在此僅列出幾個常用的參數(shù)并大略介紹含義

-A 列出所有的行程

-w 顯示加寬可以顯示較多的資訊

-au 顯示較詳細的資訊

-aux 顯示所有包含其他使用者的行程

au(x) 輸出格式 :

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

USER: 行程擁有者

PID: pid

%CPU: 占用的 CPU 使用率

%MEM: 占用的記憶體使用率

VSZ: 占用的虛擬記憶體大小

RSS: 占用的記憶體大小

TTY: 終端的次要裝置號碼 (minor device number of tty)

STAT: 該行程的狀態(tài):

D: 不可中斷的靜止

R: 正在執(zhí)行中

S: 靜止狀態(tài)

T: 暫停執(zhí)行

Z: 不存在但暫時無法消除

W: 沒有足夠的記憶體分頁可分配

<: 高優(yōu)先序的行程

N: 低優(yōu)先序的行程

L: 有記憶體分頁分配并鎖在記憶體內(nèi)

START: 行程開始時間

TIME: 執(zhí)行的時間

COMMAND:所執(zhí)行的指令

范例:

ps

PID TTY TIME CMD

2791 ttyp0 00:00:00 tcsh

3092 ttyp0 00:00:00 ps

% ps -A

PID TTY TIME CMD

1 ? 00:00:03 init

2 ? 00:00:00 kflushd

3 ? 00:00:00 kpiod

4 ? 00:00:00 kswapd

5 ? 00:00:00 mdrecoveryd

.......

% ps -aux

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

root 1 0.0 0.7 1096 472 ? S Sep10 0:03 init [3]

root 2 0.0 0.0 0 0 ? SW Sep10 0:00 [kflushd]

root 3 0.0 0.0 0 0 ? SW Sep10 0:00 [kpiod]

root 4 0.0 0.0 0 0 ? SW Sep10 0:00 [kswapd]

........

要對進程進行監(jiān)測和控制呕童,首先必須要了解當前進程的情況,也就是需要查看當前進程淆珊,而 ps 命令就是最基本同時也是非常強大的進程查看命令夺饲。使用該命令可以確定有哪些進程正在運行和運行的狀態(tài)、進程是否結(jié)束、進程有沒有僵死往声、哪些進程占用了過多的資源等等擂找。總之大部分信息都是可以通過執(zhí)行該命令得到的浩销。

ps 為我們提供了進程的一次性的查看贯涎,它所提供的查看結(jié)果并不動態(tài)連續(xù)的;如果想對進程時間監(jiān)控慢洋,應該用 top 工具塘雳。

kill 用于殺死進程。

1普筹、ps 的參數(shù)說明

ps 提供了很多的選項參數(shù)败明,常用的有以下幾個:

l 長格式輸出;

u 按用戶名和啟動時間的順序來顯示進程太防;

j 用任務格式來顯示進程妻顶;

f 用樹形格式來顯示進程;

a 顯示所有用戶的所有進程(包括其它用戶)蜒车;

x 顯示無控制終端的進程讳嘱;

r 顯示運行中的進程;

ww 避免詳細參數(shù)被截斷酿愧;

我們常用的選項是組合是 aux 或 lax沥潭,還有參數(shù) f 的應用。

2寓娩、ps aux 或 lax 輸出的解釋

USER 進程的屬主叛氨;

PID 進程的ID呼渣;

PPID 父進程棘伴;

%CPU 進程占用的CPU百分比;

%MEM 占用內(nèi)存的百分比屁置;

NI 進程的NICE值焊夸,數(shù)值大,表示較少占用CPU時間蓝角;

VSZ 進程虛擬大汹逅搿;

RSS 駐留中頁的數(shù)量使鹅;

TTY 終端ID

STAT 進程狀態(tài)(有以下幾種)

D 無法中斷的休眠狀態(tài)(通常 IO 的進程)揪阶;

R 正在運行可中在隊列中可過行的;

S 處于休眠狀態(tài)患朱;

T 停止或被追蹤鲁僚;

W 進入內(nèi)存交換(從內(nèi)核2.6開始無效);

X 死掉的進程(從來沒見過);

Z 僵尸進程冰沙;

< 優(yōu)先級高的進程

N 優(yōu)先級較低的進程

L 有些頁被鎖進內(nèi)存侨艾;

s 進程的領導者(在它之下有子進程);

l 多進程的(使用 CLONE_THREAD, 類似 NPTL pthreads)拓挥;

+ 位于后臺的進程組唠梨;

WCHAN 正在等待的進程資源;

START 啟動進程的時間侥啤;

TIME 進程消耗CPU的時間当叭;

COMMAND 命令的名稱和參數(shù);

3盖灸、應用舉例

[root@localhost ~]# ps -aux |more

可以用 | 管道和 more 連接起來分頁查看科展。

[root@localhost ~]# ps -aux > ps001.txt

[root@localhost ~]# more ps001.txt

這里是把所有進程顯示出來,并輸出到ps001.txt文件糠雨,然后再通過more 來分頁查看才睹。

4、kill 終止進程

有十幾種控制進程的方法甘邀,下面是一些常用的方法:

kill -STOP [pid]

發(fā)送SIGSTOP (17,19,23)停止一個進程琅攘,而并不消滅這個進程。

kill -CONT [pid]

發(fā)送SIGCONT (19,18,25)重新開始一個停止的進程松邪。

kill -KILL [pid]

發(fā)送SIGKILL (9)強迫進程立即停止坞琴,并且不實施清理操作。

kill -9 -1

終止你擁有的全部進程逗抑。

SIGKILL 和 SIGSTOP 信號不能被捕捉剧辐、封鎖或者忽略,但是邮府,其它的信號可以荧关。所以這是你的終極武器。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末褂傀,一起剝皮案震驚了整個濱河市忍啤,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌仙辟,老刑警劉巖同波,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異叠国,居然都是意外死亡未檩,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門粟焊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來冤狡,“玉大人校赤,你說我怎么就攤上這事⊥怖#” “怎么了马篮?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長怜奖。 經(jīng)常有香客問我浑测,道長,這世上最難降的妖魔是什么歪玲? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任迁央,我火速辦了婚禮,結(jié)果婚禮上滥崩,老公的妹妹穿的比我還像新娘岖圈。我一直安慰自己,他們只是感情好钙皮,可當我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布蜂科。 她就那樣靜靜地躺著,像睡著了一般短条。 火紅的嫁衣襯著肌膚如雪导匣。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天茸时,我揣著相機與錄音贡定,去河邊找鬼。 笑死可都,一個胖子當著我的面吹牛缓待,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播渠牲,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼旋炒,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了嘱兼?” 一聲冷哼從身側(cè)響起国葬,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎芹壕,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體接奈,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡踢涌,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了序宦。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片睁壁。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出潘明,到底是詐尸還是另有隱情行剂,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布钳降,位于F島的核電站厚宰,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏遂填。R本人自食惡果不足惜铲觉,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望吓坚。 院中可真熱鬧撵幽,春花似錦、人聲如沸礁击。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽哆窿。三九已至况褪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間更耻,已是汗流浹背测垛。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留秧均,地道東北人食侮。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像目胡,于是被迫代替她去往敵國和親锯七。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容