經常使用基本命令九(linux進程線程) - 黑猴子

進程是正在執行的一個程序或命令,每個進程都是一個運行的實體,都有本身的地址空間,並佔用必定的系統資源。java

 

一、ps查看系統中全部進程

1)基本語法:mysql

       ps -aux          (功能描述:查看系統中全部進程)sql

2)功能說明緩存

       USER:該進程是由哪一個用戶產生的網絡

       PID:進程的ID號tcp

      %CPU:該進程佔用CPU資源的百分比,佔用越高,進程越耗費資源;oop

      %MEM:該進程佔用物理內存的百分比,佔用越高,進程越耗費資源;spa

      VSZ:該進程佔用虛擬內存的大小,單位KB;線程

      RSS:該進程佔用實際物理內存的大小,單位KB;blog

      TTY:該進程是在哪一個終端中運行的。其中tty1-tty7表明本地控制檯終端,tty1-tty6是本地的字符界面終端,tty7是圖形終端,pts/0-255表明虛擬終端。

      STAT:進程狀態。常見的狀態有:R:運行、S:睡眠、T:中止狀態、s:包含子進程、+:位於後臺

      START:該進程的啓動時間

      TIME:該進程佔用CPU的運算時間,注意不是系統時間

      COMMAND:產生此進程的命令名

3)案例

       [root@hadoop101 datas]# ps -aux

 

二、top查看系統健康狀態

1)基本命令

       top [選項]     

       (1)選項:

              -d 秒數:指定top命令每隔幾秒更新。默認是3秒在top命令的交互模式當中能夠執行的命令:

              -i:使top不顯示任何閒置或者僵死進程。

              -p:經過指定監控進程ID來僅僅監控某個進程的狀態。

       (2)操做選項:

              P:        以CPU使用率排序,默認就是此項

              M:              之內存的使用率排序

              N:        以PID排序

              q:         退出top

       (3)查詢結果字段解釋

              第一行信息爲任務隊列信息

內容

說明

12:26:46

系統當前時間

up 1 day, 13:32

系統的運行時間,本機已經運行1天

13小時32分鐘

2 users

當前登陸了兩個用戶

load  average:  0.00, 0.00, 0.00

系統在以前1分鐘,5分鐘,15分鐘的平均負載。通常認爲小於1時,負載較小。若是大於1,系統已經超出負荷。

              第二行爲進程信息

Tasks:  95 total

系統中的進程總數

1 running

正在運行的進程數

94 sleeping

睡眠的進程

0 stopped

正在中止的進程

0 zombie

殭屍進程。若是不是0,須要手工檢

查殭屍進程

              第三行爲CPU信息

Cpu(s):  0.1%us

用戶模式佔用的CPU百分比

0.1%sy

系統模式佔用的CPU百分比

0.0%ni

改變過優先級的用戶進程佔用的CPU百分比

99.7%id

空閒CPU的CPU百分比

0.1%wa

等待輸入/輸出的進程的佔用CPU百分比

0.0%hi

硬中斷請求服務佔用的CPU百分比

0.1%si

軟中斷請求服務佔用的CPU百分比

0.0%st

st(Steal  time)虛擬時間百分比。就是當有虛擬機時,虛擬CPU等待實際CPU的時間百分比。

              第四行爲物理內存信息

Mem:    625344k total

物理內存的總量,單位KB

571504k used

已經使用的物理內存數量

53840k free

空閒的物理內存數量,咱們使用的是虛擬機,總共只分配了628MB內存,因此只有53MB的空閒內存了

65800k buffers

做爲緩衝的內存數量

              第五行爲交換分區(swap)信息

Swap:   524280k total

交換分區(虛擬內存)的總大小

0k used

已經使用的交互分區的大小

524280k free

空閒交換分區的大小

409280k cached

做爲緩存的交互分區的大小

2)案例

       每隔多少秒刷新

       [root@hadoop101 wyh]# top -d 1

      查看閒置或僵死線程

      [root@hadoop101 wyh]# top –i

      查看pid線程

      [root@hadoop101 wyh]# top -p 2575

      執行上述命令後,能夠按P、M、N對查詢出的進程結果進行排序。

 

三、pstree查看進程樹

1)基本語法:

       pstree [選項]

       選項

              -p:  顯示進程的PID

              -u:  顯示進程的所屬用戶

2)案例:

       [root@hadoop101 datas]# pstree -u

       [root@hadoop101 datas]# pstree -p

 

四、kill終止進程

1)基本語法:

       kill -9 pid進程號

       選項

              -9 表示強迫進程當即中止

2)案例:

       啓動mysql程序

       切換到root用戶執行

       [root@hadoop101 ~] # kill -9 5102

 

五、netstat顯示網絡統計信息

1)基本語法:

       netstat -anp          (功能描述:此命令用來顯示整個系統目前的網絡狀況。例如目前的鏈接、數據包傳遞數據、或是路由表內容)

       選項:

              -an 按必定順序排列輸出

             -p  表示顯示哪一個進程在調用

              -nltp 查看tcp協議進程端口號

2)案例

       查看端口50070的使用狀況

       [root@hadoop101 hadoop-2.7.2]# netstat -anp | grep 50070

       tcp     0   0 0.0.0.0:50070    0.0.0.0:*          LISTEN      6816/java 

                                      端口號                                                        進程號

 

六、先後臺進程切換

1)基本語法:

fg    %1                       (功能描述:把後臺進程轉換成前臺進程)

ctrl+z   bg  %1         (功能描述:把前臺進程發到後臺)

相關文章
相關標籤/搜索