Linux下查看CPU、內存占用率


 

我們經常需要查看 CPU和內存占用率,否則一旦存在情況很快就會有IDC(或客戶)找上門,Linux上查看資源使用情況有多種命令可以參考,CPU、內存、IO、NETWORK等資源使用情況都可以通過某些命令查詢到,本文只說CPU/內存及簡單的問題追蹤方法。

一、top查看Linux資源占用情況

top命令可以查看CPU、內存利用率,當然這些值都是平均利用率,以下是安裝APACHE+PHP+MYSQL后的運行情況,示例抓圖如下:

 

其中,

PID - 進程標示號
USER - 進程所有者
PR - 進程優先級
NI - 進程優先級別數值
VIRT - 進程占用的虛擬內存值
RES - 進程占用的物理內存值
SHR - 進程使用的共享內存值
S - 進程的狀態,其中S表示休眠,R表示正在運行,Z表示僵死
%CPU - 進程占用的CPU使用率
%MEM - 進程占用的物理內存百分比
TIME+ - 進程啟動后占用的總的CPU時間
Command - 進程啟動的啟動命令名稱

 

二、free命令查看內存使用情況

free命令查看總內存、使用、空閑等情況,如下圖:

 

三、ps命令查看CPU狀態

ps(process status)命令用來匯報處理器狀態信息,示例用法:

ps ux
ps -H -eo user,pid,ppid,tid,time,%cpu,cmd --sort=%cpu

上述命令:第一條按默認方式查看狀態,第二條命令指定顯示列和排序方式,使用時任選其一。

四、簡單的CPU高占用定位方法

首先需獲取到該進程的PID,通過上文命令即可查到

根據PID找到對應的文件,使用命令(其中PID需替換為查到高占用進程ID):


可以用下面的命令將 cpu 占用率高的線程找出來:
ps H -eo user,pid,ppid,tid,time,%cpu,cmd --sort=%cpu

這個命令首先指定參數'H',顯示線程相關的信息,格式輸出中包含:user,pid,ppid,tid,time,%cpu,cmd,然后再用%cpu字段進行排序。這樣就可以找到占用處理器的線程了


ps: invalid option -- 'm'

Show list of processes

-o COL1,COL2=HEADER Select columns for display
-T Show threads (顯示線程數)

 

 

 

1.linux查看占用內存最多的程序

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

2.查看占用cpu最多的程序

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

 

轉 : https://blog.csdn.net/yuanchunsi/article/details/79295801

https://www.cnblogs.com/wt11/p/9291583.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM