『壹』 如何在linux中查看所有正在運行的進程
名稱:ps
使用許可權:所有使用者
使用方式:ps [options] [--help]
說明:顯示瞬間行程 (process) 的動態
參數:ps的參數非常多, 在此僅列出幾個常用的參數並大略介紹含義
-A 列出所有的進程
-w 顯示加寬可以顯示較多的資訊
-au 顯示較詳細的資訊
-aux 顯示所有包含其他使用者的行程
############################################################
常用參數:
-A 顯示所有進程(等價於-e)(utility)
-a 顯示一個終端的所有進程,除了會話引線
-N 忽略選擇。
-d 顯示所有進程,但省略所有的會話引線(utility)
-x 顯示沒有控制終端的進程,同時顯示各個命令的具體路徑。dx不可合用。(utility)
-p pid 進程使用cpu的時間
-u uid or username 選擇有效的用戶id或者是用戶名
-g gid or groupname 顯示組的所有進程。
U username 顯示該用戶下的所有進程,且顯示各個命令的詳細路徑。如:ps U zhang;(utility)
-f 全部列出,通常和其他選項聯用。如:ps -fa or ps -fx and so on.
-l 長格式(有F,wchan,C 等欄位)
-j 作業格式
-o 用戶自定義格式。
v 以虛擬存儲器格式顯示
s 以信號格式顯示
-m 顯示所有的線程
-H 顯示進程的層次(和其它的命令合用,如:ps -Ha)(utility)
e 命令之後顯示環境(如:ps -d e; ps -a e)(utility)
h 不顯示第一行
############################################################
ps命令常用用法(方便查看系統進程)
1)ps a 顯示現行終端機下的所有程序,包括其他用戶的程序。
2)ps -A 顯示所有進程。
3)ps c 列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務的標示。
4)ps -e 此參數的效果和指定"A"參數相同。
5)ps e 列出程序時,顯示每個程序所使用的環境變數。
6)ps f 用ASCII字元顯示樹狀結構,表達程序間的相互關系。
7)ps -H 顯示樹狀結構,表示程序間的相互關系。
8)ps -N 顯示所有的程序,除了執行ps指令終端機下的程序之外。
9)ps s 採用程序信號的格式顯示程序狀況。
10)ps S 列出程序時,包括已中斷的子程序資料。
11)ps -t<終端機編號> 指定終端機編號,並列出屬於該終端機的程序的狀況。
12)ps u 以用戶為主的格式來顯示程序狀況。
13)ps x 顯示所有程序,不以終端機來區分。
最常用的方法是ps -aux,然後再利用一個管道符號導向到grep去查找特定的進程,然後再對特定的進程進行操作。
############################################################
運行 ps aux 的到如下信息:
root:# 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
Head標頭:
USER 用戶名
UID 用戶ID(User ID)
PID 進程ID(Process ID)
PPID 父進程的進程ID(Parent Process id)
SID 會話ID(Session id)
%CPU 進程的cpu佔用率
%MEM 進程的內存佔用率
VSZ 進程所使用的虛存的大小(Virtual Size)
RSS 進程使用的駐留集大小或者是實際內存的大小,Kbytes位元組。
TTY 與進程關聯的終端(tty)
STAT 進程的狀態:進程狀態使用字元表示的(STAT的狀態碼)
R 運行 Runnable (on run queue) 正在運行或在運行隊列中等待。
S 睡眠 Sleeping 休眠中, 受阻, 在等待某個條件的形成或接受到信號。
I 空閑 Idle
Z 僵死 Zombie(a defunct process) 進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用後釋放。
D 不可中斷 Uninterruptible sleep (ususally IO) 收到信號不喚醒和不可運行, 進程必須等待直到有中斷發生。
T 終止 Terminate 進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號後停止運行運行。
P 等待交換頁
W 無駐留頁 has no resident pages 沒有足夠的記憶體分頁可分配。
X 死掉的進程
< 高優先順序進程 高優先序的進程
N 低優先 級進程 低優先序的進程
L 內存鎖頁 Lock 有記憶體分頁分配並縮在記憶體內
s 進程的領導者(在它之下有子進程);
l 多進程的(使用 CLONE_THREAD, 類似 NPTL pthreads)
+ 位於後台的進程組
START 進程啟動時間和日期
TIME 進程使用的總cpu時間
COMMAND 正在執行的命令行命令
NI 優先順序(Nice)
PRI 進程優先順序編號(Priority)
WCHAN 進程正在睡眠的內核函數名稱;該函數的名稱是從/root/system.map文件中獲得的。
FLAGS 與進程相關的數字標識
############################################################
例子:
查看當前系統進程的uid,pid,stat,pri, 以uid號排序.
ps -eo pid,stat,pri,uid –sort uid
查看當前系統進程的user,pid,stat,rss,args, 以rss排序.
ps -eo user,pid,stat,rss,args –sort rss
############################################################
ps 為我們提供了進程的一次性的查看,它所提供的查看結果並不動態連續的;如果想對進程時間監控,應該用 top 工具。
1、ps 的參數說明:
ps 提供了很多的選項參數,常用的有以下幾個:
l 長格式輸出;
u 按用戶名和啟動時間的順序來顯示進程;
j 用任務格式來顯示進程;
f 用樹形格式來顯示進程;
a 顯示所有用戶的所有進程(包括其它用戶);
x 顯示無控制終端的進程;
r 顯示運行中的進程;
ww 避免詳細參數被截斷;
我們常用的選項是組合是 aux 或 lax,還有參數 f 的應用。
2、ps aux 或 lax 輸出的解釋:
USER 進程的屬主;
PID 進程的ID;
PPID 父進程;
%CPU 進程佔用的CPU百分比;
%MEM 佔用內存的百分比;
NI 進程的NICE值,數值大,表示較少佔用CPU時間;
VSZ 進程虛擬大小;
RSS 駐留中頁的數量;
TTY 終端ID
STAT 進程狀態(有以下幾種)
D 無法中斷的休眠狀態(通常 IO 的進程);
R 正在運行可中在隊列中可過行的;
S 處於休眠狀態;
T 停止或被追蹤;
W 進入內存交換(從內核2.6開始無效);
X 死掉的進程(從來沒見過);
Z 僵屍進程;
< 優先順序高的進程
N 優先順序較低的進程
L 有些頁被鎖進內存;
s 進程的領導者(在它之下有子進程);
l 多進程的(使用 CLONE_THREAD, 類似 NPTL pthreads);
+ 位於後台的進程組;
WCHAN 正在等待的進程資源;
START 啟動進程的時間;
TIME 進程消耗CPU的時間;
COMMAND 命令的名稱和參數;
3、應用舉例:
[root@localhost ~]# ps -aux |more
可以用 | 管道和 more 連接起來分頁查看。
[root@localhost ~]# ps -aux > ps001.txt
把結果輸出到ps001.txt文本中並保存。
[root@localhost ~]# more ps001.txt
這里是把所有進程顯示出來,並輸出到ps001.txt文件,然後再通過more 來分頁查看。
4、kill 終止(殺死)進程,有十幾種控制進程的方法,下面是一些常用的方法:
[root@localhost ~]#kill -STOP [pid]
發送SIGSTOP (17,19,23)停止一個進程,而並不消滅這個進程。
[root@localhost ~]#kill -CONT [pid]
發送SIGCONT (19,18,25)重新開始一個停止的進程。
[root@localhost ~]#kill -KILL [pid]
發送SIGKILL (9)強迫進程立即停止,並且不實施清理操作。
[root@localhost ~]#kill -9 -1
終止你擁有的全部進程。
SIGKILL 和 SIGSTOP 信號不能被捕捉、封鎖或者忽略,但是,其它的信號可以。所以這是你的終極武器。
『貳』 如何在Linux中查看所有正在運行的進程
ps命令用於查看系統中的進程狀態,格式為:「 [參數]」,
常見的ps命令參數包括有:
-a 顯示所有的進程(包括其他用戶的)
-u 用戶以及其他詳細信息
-x 顯示沒有控制終端的進程
Linux系統中時刻運行著許許多多的進程,如果能夠合理的管理它們,絕對有益於對系統的性能優化,Linux系統中進程最常見的5種不同的狀態是運行、中斷、不可中斷、僵死與停止,它們的含義分別是:
R(運行):正在運行或在運行隊列中等待。
S(中斷):休眠中, 在等待某個條件的形成或接收到信號。
D(不可中斷):收到信號不喚醒和不可運行, 進程必須等待直到有中斷發生。
Z:(僵死):進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用後釋放。
T:(停止):進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號後停止運行。當執行"ps aux"命令後通常會看到下面格式的進程狀態,表格中只是列舉了部分輸出值,而且正常的輸出值中不包括中文注釋部分:
top命令前面的五行為系統整體的統計信息:
第1行:系統時間,運行時間,登錄終端數,系統負載(分別為1分鍾、5分鍾、15分鍾的平均值,數值越小意味著負載越低)。
第2行:進程總數,運行中的,睡眠中的,停止的,僵死的。
第3行:用戶佔用資源,系統內核佔用資源,改變過優先順序的進程,空閑的資源,等待輸入輸出的時間。此行數據均為CPU數據並以百分比格式顯示,例如"99.2 id"意味著有99.2%的CPU處理器資源正在空閑中。
第4行:物理內存總量,使用量,空閑量,作為內核緩存的內存量。
第5行:虛擬內存總量,使用量,空閑量,已被提前載入的內存數據。
為了更好的了解Linux伺服器,成為一名合格的運維人員,您必須具備快速查看Linux系統運行狀態的能力。Linux命令最大的特點就是要與其他命令搭配使用,重於靈活運用,可參考linuxprobe。COM上ps、top命令經常用於系統工作查看狀態,ps命令與管道符技術搭配使用,可用於來抓取到某個指定服務進程所對應的PID號碼。
『叄』 如何在我的linux查看我的arp表格
在復linux中查看arp地址解析協議需要使用終端制命令。
以Deepin linux為例,使用終端命令查看arp步驟如下所示:
1、在程序列表中點擊打開終端命令程序。