|
linux系统该如何查看内存使用情况以及清理缓存?
3 _4 C7 g" i2 t" e7 v+ t( `! Z6 X; A; |& Z8 [
linux系统该如何查看内存使用情况以及清理缓存?
8 h" V- B) R5 ~5 \7 ^- H4 C! H8 N+ _' S; ]8 t$ b' ?. p b8 T% d. ~5 M
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。+ }7 K3 E7 d$ Y" p' l
: X) [' f9 I! u, n9 d0 z$ R1.查看物理内存使用情况的命令:free -h
$ X4 I ]1 M2 C# u/ U( t; p
0 z! W+ ]. Q) s6 etotel:机器总的物理内存;: s! G/ u! g3 i- g
6 e$ q, m2 k8 g
used:已使用的内存;. Y. w* ]* ]" `
6 x: ]8 T7 A; R( p8 Jfree:空闲的物理内存;8 f- H, x7 [0 a0 @
9 f7 m0 b9 |6 A' t8 N
shared:被共享使用的物理内存;0 C3 l/ Z" ?' Z; S
, t0 F9 q: o- W$ [0 @- e$ F4 Sbuff/cache:可以理解为缓存;: z- L' \" \1 q1 g8 ~2 H
6 ^1 W1 A {1 Q1 U3 m" }
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。
7 M" g+ f& i8 S3 L( D
- b$ c0 @: `9 j& m( l2.清理缓存命令:# P$ \2 l# |3 ^2 g; y
6 k8 G) G- s6 c- T* T
echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
$ z) l- L. c# G1 `4 l( A% Z$ F; m$ O/ \7 s, I9 O
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
+ E+ i* R& l" x/ G2 G
. X( ], y; q& jecho 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存5 `, {# g% n* ~6 g8 O
6 b/ X0 n3 ?: P. v5 i
注释:' N6 [! S$ V, o4 _/ d; D+ l: \
( b+ e7 E1 O+ j- ^& Xecho 0 是不释放缓存, t- D* \+ B. H) Y
9 |; t$ ^ k: U8 \1 I
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)$ j$ n% l4 w5 o6 X# {( G0 y
* E3 J! _. Z1 m4 Kehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)
" W7 ^6 ?) j1 o" a4 Q; K& U6 \
/ A/ x$ N7 O- Kecho 3 是释放 1 和 2 中说到的所有缓存, T; ^ v- c7 _ ~" h
6 e" P8 ~" K( p- K; t7 H6 @: z' ?0 P+ r+ F/ \ b7 R1 f; C
' u+ o+ Y) `4 v1 C原文连接:http://www.szw86.com/thread-8891-1-1.html |
|