linux進程內存佔用
1. 如何查看linux下系統佔用的資源
用 'top -i' 看看有多少進程處於 Running 狀態,可能系統存在內存或 I/O 瓶頸,用 free 看看系統內存使用情況,swap 是否被佔用很多,用 iostat 看看 I/O 負載情仔宏運況...
top:
主要參數
d:指定更新的間隔,以秒計算。
q:沒有任何延遲的更新。如果使用者有超級用戶,則top命令將會以最高的優先序執行。
c:顯示進程完整的路徑與名稱。
S:累積模式,會將己完成或消失的子行程的CPU時間累積起來。
s:安全模式。
i:不顯示任何閑置(Idle)或無用(Zombie)的行程。
n:顯示更新的次數,完成後將會退出to
顯示參數:
PID(Process ID):進程標示號。
USER:進程所有者的用戶名。
PR:進程的優先順序別。
NI:進程的優先順序別數值。
VIRT:進程佔用的虛擬內存值。
RES:進程佔用的物理內存值。
SHR:進程使用的共享內存值。
S:進程的狀態,其中S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值是負數。
%CPU:該進程佔用的CPU使用率。
%MEM:該進程佔用的物理內存和總內存的百分比。
TIME+:該進程啟動後佔用的總的CPU時間。
Command:進程啟動的啟動命令名稱,如果這一行顯示不下,進程會有一個完整的命令行。
top命令使用過程中,還可以使用一些交互的命令來完成其它參數的功能。這些命令是通過快捷鍵啟動的。
<空格>:立刻刷新。
P:根據CPU使用大小進行排序。
T:根據時間、累計時間排序。
q:退出top命令。
m:切換顯示內存信息。
t:切換顯示進程和CPU狀態信息。
c:切換顯示命令名稱和完整命令行。
M:根據使用內存大小進行排序。
W:將當前設置寫入~/.toprc文件中。這是寫top配置文件的推薦方法。
free
1.作用
free命令用來顯示內存的使用情況,使用許可權是所有用戶。
2.格式
free [-b-k-m] [-o] [-s delay] [-t] [-V]
3.主要參數
-b -k -m:分別以位元組(KB、MB)為單位顯示內存使用情況。
-s delay:顯念梁示每隔多少秒數來顯示一次內存使用情況。
-t:顯示內存總和列。
-o:不顯示緩沖區調節列。
uptime
18:59:15 up 25 min, 2 users, load average: 1.23, 1.32, 1.21
現在的時間
系統開機運轉到現在經過的時間
連線的絕皮使用者數量
最近一分鍾,五分鍾和十五分鍾的系統負載
參數: -V 顯示版本資訊。
vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 1 24980 10792 8296 47316 5 19 205 52 1161 698 26 3 1 70
1 觀察磁碟活動情況
磁碟活動情況主要從以下幾個指標了解:
bi:表示從磁碟每秒讀取的塊數(blocks/s)。數字越大,表示讀磁碟的活動越多。
bo:表示每秒寫到磁碟的塊數(blocks/s)。數字越大,表示寫磁碟的活動越多。
wa:cpu等待磁碟I/O(未決的磁碟IO)的時間比例。數字越大,表示文件系統活動阻礙cpu的情況越嚴重,因為cpu在等待慢速的磁碟系統提供數據。wa為0是最理想的。如果wa經常大於10,可能文件系統就需要進行性能調整了。
2 觀察cpu活動情況
vmstat比top更能反映出cpu的使用情況:
us:用戶程序使用cpu的時間比例。這個數字越大,表示用戶進程越繁忙。
sy: 系統調用使用cpu的時間比例。注意,NFS由於是在內核裡面運行的,所以NFS活動所佔用的cpu時間反映在sy裡面。這個數字經常很大的話,就需要注 意是否某個內核進程,比如NFS任務比較繁重。如果us和sy同時都比較大的話,就需要考慮將某些用戶程序分離到另外的伺服器上面,以免互相影響。
id:cpu空閑的時間比例。
wa:cpu等待未決的磁碟IO的時間比例。
iostat
用於統計CPU的使用情況及tty設備、硬碟和CD-ROM的I/0量
參數:
-c 只顯示CPU行
-d 顯示磁碟行
-k 以千位元組為單位顯示磁碟輸出
-t 在輸出中包括時間戳
-x 在輸出中包括擴展的磁碟指標
avg-cpu: %user %nice %sys %iowait %idle
20.25 0.18 2.61 76.39 0.57
%iowait 等待本地I/O時CPU空閑時間的百分比
%idle 未等待本地I/O時CPU空閑時間的百分比
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
hda 9.86 284.34 84.48 685407 2036
每秒傳輸數(tps)、每秒512位元組塊讀取數(Blk_read/s)、每秒512位元組塊寫入數(Blk_wrtn/s)和512位元組塊讀取(Blk_read)和寫入(Blk_wrtn)的總數量。
2. linux 查看佔用內存
linux怎麼查看佔用內存的情況呢,下面就讓我們來看看吧。
1、打開linux系統,在linux的桌面的空白處右擊。
2、在彈出的下拉選項里,點擊打開終端。
3、在終端窗口中輸入free命令,回車後即可查看到系統資源的使用情況。
total:總計物理內存的大小
used:已使用多大
free:可用有多少
Shared:多個進程共享的內存總額
Buffers/cached:磁碟緩存的大小
以上就是小編的分享,希望能幫助的大家。
3. Linux伺服器如何查看CPU佔用率、內存佔用、帶寬佔用
Linux伺服器如何查看CPU佔用率、內存佔用、帶寬佔用的命令
圖中紅色部分即為佔用百分率,下面是每個進程的CPU佔用率,如果伺服器是多核CPU可能在下方看到有些進程CPU佔用超過100%,這種一般是該進程使用了多核。
內存佔用率:free -m
圖中紅色部分即為佔用,即used、free即為剩餘。(注意中在第二行數字中找哦。)
帶寬佔用:
使用vmstat命令,輸入命令:vmstat
linux伺服器的相關信息查看(埠佔用,cpu、內存佔用,防火牆,系統信息,vim編輯器使用等)
一、埠佔用情況
(1)查看所有埠、進程的使用情況: netstat -tunlp
(2)查看某一埠的使用情況: netstat -tunlp|grep 5560
二、查看內存使用情況
(1)查看佔用情況(動態):top
按下P(大寫)可以找到佔用內存最大的進程
(2)查看佔用情況(總的):free
(3)查看佔用內存最多的N個進程: ps -aux | sort -k4nr | head -K如果是10個進程,K=10,如果是最高的三個,K=3
(4)查看硬碟空間大小:df -lh
三、防火牆
防火牆iptables和firewall
(1)查看防火牆狀態:firewall-cmd --state
(2)開啟、關閉防火牆:開啟:systemctl start firewalld關閉:systemctl stop firewalld.service 或者 service firewalld stop
(3)重啟防火牆:firewall-cmd --reload(重新載入配置,在添加規則之後,需要執行此命令)
(4)防火牆是否開機啟動:禁止防火牆開機啟動:systemctl disable firewalld.service設置防火牆開機啟動:systemctl enable firewalld.service
四、查看系統信息
(1)查看系統位數:getconf LONG_BIT
(2)查看內存信息:查看所有內存信息: cat /proc/meminfo查看內存容量: grep "MemTotal" /proc/meminfo
(3)查看CPU信息:查看cpu個數(幾核):cat /proc/cpuinfo |grep "processor"|wc -l
五、linux中文亂碼:
我只是用了第三部,更改了ssh客戶端屬性配置就可以了
1. 配置SSH 終端 (以xshell為例):
打開「文件」(File)- 「屬性」 (Properties), 在「終端」(Terminal),將「編碼」(Encoding)改為UTF-8 即可。
六、Xshell遠程連接Linux時無法使用小鍵盤的解決方式:
七、linux中vi編輯器的退出操作
保存,但不退出vi :w
保存並退出vi :wq
退出vi,但不保存更改 :q!
用其他文件名保存 :w filename
在現有文件中保存並覆蓋該文件 :w! filename
查找文字:在一般模式下輸入/和你要查找的文字單詞,例如/port,此時再按下 n 會跳轉至改文字所在的下一處。
4. linux中查看虛擬內存和cpu佔用率的命令是什麼
top,free,cat/proc/meminfo,cat/proc/cpuinfo。
[root@centerlisdbproc]#dmidecode|grep-A16"MemoryDevice"|more[objectObject]。
查看內存使用情況:cat/proc/meminfo,查看CPU使用情況:cat /proc/cpuinfo。
在系統維護的過程中,隨時可能有需要查看 CPU 使用率,並根據相應信息分析系統狀況的需要。在 CentOS 中,可以通過 top 命令來查看 CPU 使用狀況。
運行 top 命令後,CPU 使用狀態會以全屏的方式顯示,並且會處在對話的模式 -- 用基於 top 的命令,可以控制顯示方式等等。退出 top 的命令為 q (在 top 運行中敲 q 鍵一次)。
top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源佔用狀況,類似於Windows的任務管理器。
可以直接使用top命令後,查看%MEM的內容。可以選擇按進程查看或者按用戶查看,如想查看oracle用戶的進程內存使用情況的話可以使用如下的命令:$ top -u oracle。
(4)linux進程內存佔用擴展閱讀:
一、查看內存佔用:
1、free
# free -m。
以MB為單位顯示內存使用情況。
# free -h。
以GB為單位顯示內存使用情況。
# free -t。
以總和的形式查詢內存的使用信息。
# free -s 5。
周期性的查詢內存使用信息。
每5秒執行一次命令。
二、查看CPU使用情況:
1、top。
top後鍵入P看一下誰佔用最大。
# top -d 5。
周期性的查詢CPU使用信息。
每5秒刷新一次。
2、ps auxw(查看本機的進程所佔cpu和mem的百分比情況)。
使用"ps auxw" 可以查看到本機的進程所佔cpu和mem的百分比情況。
# ps auxw | head -1
%CPU 進程的cpu佔用率。
%MEM 進程的內存佔用率。
3、查看本機所有進程的CPU佔比之和。
# cat cpu_per.sh
三、查看cpu信息(信息記錄在/proc/cpuinfo中)
# 總核數 = 物理CPU個數 X 每顆物理CPU的核數。
# 總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超線程數。
5. Linux TOP命令按內存佔用排序和按CPU佔用排序
Linux存在著許多不同的Linux版本,但它們都使用了Linux內核。Linux可安裝在各種計算機硬體設備中,比如手機、平板電腦、路由器、視頻游戲控制台、台式計算機、大型機和超級計算機。下面讓我們一起去了解Linux TOP命令 按內存佔用排序和按CPU佔用排序。
Linux TOP命令 按內存佔用排序和按CPU佔用排序:
:在命令行提示符執行top命令
2:輸入大寫P,則結果按CPU佔用降序排序。輸入大寫M,結果按內存佔用降序排序。(註:大寫P可以在capslock狀態輸入p,或者按Shift+p)
另外:
認識top的顯示結果
top命令的顯示結果如下所示:
top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48 Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa, 0.0% hi, 0.0% si Mem: 191272k total, 173656k used, 17616k free, 22052k buffers Swap: 192772k total, 0k used, 192772k free, 123988k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1379 root 16 0 7976 2456 1980 S 0.7 1.3 0:11.03 sshd 14704 root 16 0 2128 980 796 R 0.7 0.5 0:02.72 top 1 root 16 0 1992 632 544 S 0.0 0.3 0:00.90 init 2 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0統計信息區
前五行是系統整體的統計信息。第一行是任務隊列信息,同 uptime 命令的執行結果。其內容如下:
01:06:48當前時間
up 1:22系統運行時間,格式為時:分
1 user當前登錄用戶數
load average: 0.06, 0.60, 0.48系統負載,即任務隊列的平均長度。
三個數值分別為 1分鍾、5分鍾、15分鍾前到現在的平均值。
第二、三行為進程和CPU的信息。當有多個CPU時,這些內容可能會超過兩行。內容如下:
Tasks: 29 total進程總數
1 running正在運行的進程數
28 sleeping睡眠的進程數
0 stopped停止的進程數
0 zombie僵屍進程數
Cpu(s): 0.3% us用戶空間佔用CPU百分比
1.0% sy內核空間佔用CPU百分比
0.0% ni用戶進程空間內改變過優先順序的進程佔用CPU百分比
98.7% id空閑CPU百分比
0.0% wa等待輸入輸出的CPU時間百分比
0.0% hi
0.0% si
最後兩行為內存信息。內容如下:
Mem: 191272k total物理內存總量
173656k used使用的物理內存總量
17616k free空閑內存總量
22052k buffers用作內核緩存的內存量
Swap: 192772k total交換區總量
0k used使用的交換區總量
192772k free空閑交換區總量
123988k cached緩沖的交換區總量。
內存中的內容被換出到交換區,而後又被換入到內存,但使用過的交換區尚未被覆蓋,
該數值即為這些內容已存在於內存中的交換區的大小。
相應的內存再次被換出時可不必再對交換區寫入。
進程信息區
統計信息區域的下方顯示了各個進程的詳細信息。首先來認識一下各列的含義。
序號列名含義
aPID進程id
bPPID父進程id
cRUSERReal user name
dUID進程所有者的用戶id
eUSER進程所有者的用戶名
fGROUP進程所有者的組名
gTTY啟動進程的終端名。不是從終端啟動的進程則顯示為 ?
hPR優先順序
iNInice值。負值表示高優先順序,正值表示低優先順序
jP最後使用的CPU,僅在多CPU環境下有意義
k%CPU上次更新到現在的CPU時間佔用百分比
lTIME進程使用的CPU時間總計,單位秒
mTIME+進程使用的CPU時間總計,單位1/100秒
n%MEM進程使用的物理內存百分比
oVIRT進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
pSWAP進程使用的虛擬內存中,被換出的大小,單位kb。
qRES進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
rCODE可執行代碼佔用的物理內存大小,單位kb
sDATA可執行代碼以外的部分(數據段+棧)佔用的物理內存大小,單位kb
tSHR共享內存大小,單位kb
unFLT頁面錯誤次數
vnDRT最後一次寫入到現在,被修改過的頁面數。
wS進程狀態。
D=不可中斷的睡眠狀態
R=運行
S=睡眠
T=跟蹤/停止
Z=僵屍進程
xCOMMAND命令名/命令行
yWCHAN若該進程在睡眠,則顯示睡眠中的系統函數名
zFlags任務標志,參考 sched.h
默認情況下僅顯示比較重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。可以通過下面的快捷鍵來更改顯示內容。
更改顯示內容
通過 f 鍵可以選擇顯示的內容。按 f 鍵之後會顯示列的列表,按 a-z 即可顯示或隱藏對應的列,最後按回車鍵確定。
按 o 鍵可以改變列的顯示順序。按小寫的 a-z 可以將相應的列向右移動,而大寫的 A-Z 可以將相應的列向左移動。最後按回車鍵確定。
按大寫的 F 或 O 鍵,然後按 a-z 可以將進程按照相應的列進行排序。而大寫的 R 鍵可以將當前的排序倒轉。
6. linux 下怎麼查看一個進程佔用內存大小
這里介紹下查看一個進程佔用內存大小的方法。
1、首先單擊桌面左上角的應用程序,選擇系統工具選項,如下圖所示。