linux查看內存使用狀況

查看磁盤使用狀況:
df -k:以KB爲單位顯示磁盤使用量和佔用率
這裏寫圖片描述
df -m:以Mb爲單位顯示磁盤使用量和佔用率
這裏寫圖片描述
df –help:查看更多df命令及使用方法
這裏寫圖片描述linux

查看內存佔用狀況:
1.top
這裏寫圖片描述git

PID:當前運行進程的ID
USER:進程屬主
PR:每一個進程的優先級別
NInice:反應一個進程「優先級」狀態的值,其取值範圍是-20至19,一
    共40個級別。這個值越小,表示進程」優先級」越高,而值越
    大「優先級」越低。通常會把nice值叫作靜態優先級
VIRT:進程佔用的虛擬內存
RES:進程佔用的物理內存
SHR:進程使用的共享內存
S:進程的狀態。S表示休眠,R表示正在運行,Z表示僵死狀態,N表示
  該進程優先值爲負數
%CPU:進程佔用CPU的使用率
%MEM:進程使用的物理內存和總內存的百分比
TIME+:該進程啓動後佔用的總的CPU時間,即佔用CPU使用時間的累加值。
COMMAND:進程啓動命令名稱github

2.free
這裏寫圖片描述
total : 總計物理內存的大小。
used : 已使用多大。
free : 可用有多少。
Shared : 多個進程共享的內存總額。
Buffers/cached : 磁盤緩存的大小。
-/+ buffers/cached) :
used:已使用多大;
free:可用有多少。
注意:
(mem)的used/free與(-/+ buffers/cache) used/free的區別:
這二者的區別在於使用的角度來看,前者是從OS(Operating Sys)的角度來看,由於對於OS,buffers/cached 都是屬於被使用,因此他的可用內存是11737644KB,已用內存是54215352KB,
後者所指的是從應用程序角度來看,對於應用程序來講,buffers/cached 是等於可用的,由於buffer/cached是爲了提升文件讀取的性能,當應用程序需在用到內存的時候,buffer/cached會很快地被回收。
因此從應用程序的角度來講,可用內存=系統free memory+buffers+cached。shell

3.cat /proc/meminfo
查看RAM使用狀況最簡單的方法是經過命令:cat /proc/meminfo;
這個動態更新的虛擬文件其實是許多其餘內存相關工具(如:free / ps / top)等的組合顯示。
/proc/meminfo列出了全部你想了解的內存的使用狀況。
進程的內存使用信息也能夠經過命令:cat /proc//statm 、 cat /proc//status 來查看。
這裏寫圖片描述小程序

4.ps aux –sort -rss
ps aux: 列出目前全部的正在內存當中的程序。
a顯示終端上地全部進程,包括其餘用戶地進程(有的進程沒有終端)。
-a 顯示全部終端機下執行的進程,除了階段做業領導者以外。
u  以用戶爲主的格式來顯示進程情況。
x  顯示全部進程,不以終端機來區分。
a會包括其餘用戶(不然只有用戶自己); x會包括其餘終端;
aux就能夠包括內存全部;
這裏寫圖片描述緩存

USER:該 process 屬於那個使用者帳號的
PID :該 process 的號碼
%CPU:該 process 使用掉的 CPU 資源百分比
%MEM:該 process 所佔用的物理內存百分比
VSZ :該 process 使用掉的虛擬內存量 (Kbytes)
RSS :該 process 佔用的固定的內存量 (Kbytes)
TTY :該 process 是在那個終端機上面運做,若與終端機無關,則顯示 ?,另外, tty1-tty6 是本機上面的登入者程序,若爲 pts/0 等等的,則表示爲由網絡鏈接進主機的程序。
STAT:該程序目前的狀態,主要的狀態有
R :該程序目前正在運做,或者是可被運做
S :該程序目前正在睡眠當中 (可說是 idle 狀態),但可被某些訊號 (signal) 喚醒。
T :該程序目前正在偵測或者是中止了
Z :該程序應該已經終止,可是其父程序卻沒法正常的終止他,形成 zombie (疆屍) 程序的狀態
START:該 process 被觸發啓動的時間
TIME :該 process 實際使用 CPU 運做的時間
COMMAND:該程序的實際指令網絡

5.vmstat -s
vmstat命令顯示實時的和平均的統計,覆蓋CPU、內存、I/O等內容。例如內存狀況,不只顯示物理內存,也統計虛擬內存。
這裏寫圖片描述app

6.gnome-shell-system-monitor-applet
Gnome-shell系統監視器gnome-shell-system-monitor-applet,是一個Gnome-shell 面板小程序,此程序用戶監視CPU佔用百分比、內存使用和SWAP使用狀況,如圖經過頂部欄顯示和關閉。
此程序下載地址:https://github.com/paradoxxxzero/gnome-shell-system-monitor-applet工具

和其餘gnome-shell擴展小程序相比,安裝可能有點困難,首先須要安裝git-core核心。
在終端輸入命令:
mkdir ~/git_projects
cd ~/git_projects
git clone git://github.com/paradoxxxzero/gnome-shell-system-monitor-applet.git
mkdir -p ~/.local/share/gnome-shell/extensions
cd ~/.local/share/gnome-shell/extensions
ln -s ~/git_projects/gnome-shell-system-monitor-applet/system-monitor@paradoxxx.zero.gmail.com
sudo cp ~/git_projects/gnome-shell-system-monitor-applet/org.gnome.shell.extensions.system-monitor.gschema.xml /usr/share/glib-2.0/schemas
cd /usr/share/glib-2.0/schemas
sudo glib-compile-schemas .
若是你使用的jhbuild編譯的gnome-shell,可能會沒法工做!性能

7.相關知識

linux上進程有5種狀態:
\1. 運行(正在運行或在運行隊列中等待)
\2. 中斷(休眠中, 受阻, 在等待某個條件的造成或接受到信號)
\3. 不可中斷(收到信號不喚醒和不可運行, 進程必須等待直到有中斷髮生)
\4. 僵死(進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用後釋放)
\5. 中止(進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號後中止運行運行)
ps工具標識進程的5種狀態碼:
D 不可中斷 uninterruptible sleep (usually IO)
R 運行 runnable (on run queue)
S 中斷 sleeping
T 中止 traced or stopped
Z 僵死 a defunct (」zombie」) process
注: 其它狀態還包括W(無駐留頁), <(高優先級進程), N(低優先級進程), L(內存鎖頁).
使用ps格式輸出來查看進程狀態:
ps -eo user,stat..,cmd
user 用戶名
uid 用戶號
pid 進程號
ppid 父進程號
size 內存大小, Kbytes字節.
vsize 總虛擬內存大小, bytes字節(包含code+data+stack)
share 總共享頁數
nice 進程優先級(缺省爲0, 最大爲-20)
priority(pri) 內核調度優先級
pmem 進程分享的物理內存數的百分比
trs 程序執行代碼駐留大小
rss 進程使用的總物理內存數, Kbytes字節
time 進程執行起到如今總的CPU暫用時間
stat 進程狀態
cmd(args) 執行命令的簡單格式
例子:
查看當前系統進程的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

本文由博客一文多發平臺 OpenWrite 發佈!

相關文章
相關標籤/搜索