linux進程管理命令

進程管理類的命令:

pstree,ps,top,vmstat,htop,pmap

pstree:查看進程樹

ps:顯示系統當前進程狀態的命令

進程:

跟終端相關的進程

跟終端無關的進程


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

ps a

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

ps x

STAT:

S:可中斷睡眠

D:不可中斷睡眠

R:運行或可運行

T:停止

Z:僵死

s:session leader

l:多線程進程

+:前臺進程:

N:低優先級進程

<:高優先級進程

COMMAND:由哪個命令發起的進程

[]:內核線程

u:以用戶爲中心顯示進程相關信息

ps u

%CPU:cputime/realtime

%MEM:佔用內存百分比

VSZ:Virtual memory Size 虛擬內存集,虛擬地址空間大小

RSS:實際內存,非可交換內存,常駐內存集

START:啓動時間

-ef:

ps -ef

-e:顯示所有進程

-f:完整格式列表

-eFH:

ps -eFH

-F:顯示額外信息

-H:顯示進程層次關係

PSR:運行在哪個CPU上,CPU編號:0,1,2,3

-o 要顯示的字段:自定義顯示格式

ps -o pid,command

ps axo pid,command

pgrep pattern:

例:pgrep bash

選項;

-U USERNAME:顯示相關用戶的進程

-G GROUPNAME:顯示相關組的進程

pidof:找到某一個進程的ID號


top

M:按內存空間佔用大小排序

P:按CPU使用大小排序

T:按累計時間排序


k:殺死一個進程

m:是否顯示內存摘要信息

t:是否顯示CPU和進程的統計信息

l:是否顯示負載信息


q:退出


選項:

-d N:刷新延遲

-b:批次顯示

-n N:指定批次顯示時顯示的批數

vmstat:

vmstat 1:每秒刷新一次

procs

r:運行或等待CPU時間片的進程個數

b:被阻塞(通常爲等待IO完成)的進程隊列的長度

memory

swpd:從物理內存交換至交換分區的數據量

free:從未使用的物理內存空間

buff:buffer cache的空間大小:通常是緩存寫操作相關的數據

cache:page cache的空間大小:通常是緩存讀操作相關的數據

swap:

si:swap in:數據進入交換分區中的數據量,即從內存至交換分區中去

so:swap out:數據離開交換分區中的數據量,即從交換分區子內存

io:

bi:block in:從塊設備讀入的數據量(kb/s)

bo:block out:保存至塊設備的數據量(kb/s)

system:

in:interrupt:中斷髮生的速率,通常爲每秒多少次中斷請求發生

cs:context switch:上下文切換的速率

cpu:

us:用戶進程所佔用CPU時間的百分比

sy:內核

id:CPU空閒百分比

wa:CPU用於等待IO完成的時間百分比

st:被虛擬化佔去的時間百分比

sar 

-u:顯示CPU的控制信息

sar 

-P:-P指定CPU

sar -P ALL:顯示所有CPU的控制信息 sar -P 0:顯示0號CPU的控制信息


iostat -c:顯示CPU的平均使用率


dstat -c:顯示CPU的信息

dstat -C 0,3:顯示0號和3號CPU的信息


進程間通信:IPC

共享內存,shm

信號:signal


信號:

1、SIGHUP,讓進程不用終止,而重讀其配置文件

2、SIGINT,中斷正在運行的進程,相當於Ctrl+c

9、SIGKILL,殺死一個進程

15、SIGTERM,終止一個進程

19、SIGSTOP,停止一個進程

18、SIGCONT,繼續一個進程

向其它進程傳遞信號,使用kill

kill -信號 PID 每次進程啓用後PID會不一樣

kill -SIGKILL 2031或kill -9 2031

killall -信號 進程名

killall -SIGKILL gnome:殺死gnome相關的所有進程

killall5:殺死所有進程

kill -l:列出所有可以使用kill的信號


調整進程nice值:

普通用戶:調大數字,調低優先級

只有管理員可以調小數字,調高優先級

-20,19

100,139


nice -n N COMMAND:調整進程的nice值調整爲N 一個進程還沒有啓動,需要手動啓動它,只需要指定nice,並指定其nice值爲N,這樣這個命令就工作在這個nice值N下了

renice N PID:把PID爲這個號碼的進程的nice值重新調整爲其它nice值N


Linux作業控制:

前臺:佔用着終端:前臺作業

後臺:無須佔用終端

jobs:查看當前作業

前臺-->後臺:Ctrl+z 送到後臺後不會運行

# vim /tmp/test.txt

hello world

Ctrl+z

後臺-->前臺:fg [[%]JOB_ID] []表示可省


bg [[%]JOB_ID]:讓其在後臺運行


啓動時,讓作業直接運行於後臺:

COMMAND &

nohup COMMAND & 使命令於終端無關,即終端關閉後命令還能運行

jobs 查看


作業也可以被終止

kill %JOB_ID


axel -n 5 -o /mnt/Soft/down http://a.b.c.d/abc.iso & 在後臺下載

nohup axel -n 5 -o /mnt/Soft/down http://a.b.c.d/abc.iso & 終端關閉後還能下載

screen:在一個終端上打開多個屏幕

screen

Ctrl A鬆開,再按D鍵:從當前screen屏幕離開,即其自己去後臺運行

screen -ls:查看有幾個screen在運行

screen -r SCREEN_ID:調出screen屏幕

screen -r 3700

exit:關閉screen


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章