|
linux系统该如何查看内存使用情况以及清理缓存?
, ]8 b5 |% Z- G% S+ c) {& I1 ^- j/ z0 H
linux系统该如何查看内存使用情况以及清理缓存?
8 s! G6 K5 c3 y6 M7 \% B
5 D% f7 _: f& u. @, K9 g有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。. _) o( M8 T! S" v) V" x
2 S* n" t U3 n# q8 N8 o
1.查看物理内存使用情况的命令:free -h
3 Z! ]' B2 }" E" y: r8 q( H- \, l6 s! m
totel:机器总的物理内存;/ J( i, j' n' b @
0 n' Z" _* g0 N
used:已使用的内存;
$ W; `1 w6 ]4 I0 Y
% l4 d) f, j2 r! h- {% H& h/ Bfree:空闲的物理内存; G8 r. s. K/ H8 b
% e9 |; V' c, w/ N) C6 q$ ]
shared:被共享使用的物理内存;( b- M9 B; s& k, j
% l, L) d0 X* r& \0 x5 ]
buff/cache:可以理解为缓存;
9 a9 w* v2 U2 b* _' P1 _6 \& O" p! [& |
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。
9 ?: F3 T" t4 K A$ q0 x& w- i: v& E! T3 m+ ~+ L
2.清理缓存命令:
- m) M5 ]: G" B+ n7 y: n+ s/ [7 D" i; ]+ }2 h& T
echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存8 n- f* t$ {) k. G; ?6 g
3 B6 S8 b7 Z) H( b- _! k. D
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存# e0 l/ @, o8 U! R+ D. ]% ~5 n0 M
) s- H) v, ?( a7 E: |
echo 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存3 u2 I f# s: U6 O/ u, n
$ z' n# ?$ u- I( q注释:
: s; H. x- d+ N7 r& B. c9 m1 x5 o& ]! ]6 I9 j' z* y+ _
echo 0 是不释放缓存5 n( g' X: _, c7 c3 ]7 w" O
! F1 X1 D6 A0 Mecho 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)
6 e. S, |! U9 X; T0 y0 ]$ X6 r' ]& R o6 Q0 _7 }- q% y
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)
' [* M9 e0 b! s
& W. { [+ H# w$ F4 x5 B0 Lecho 3 是释放 1 和 2 中说到的所有缓存
3 B, r, H: P" U+ V- {3 Z1 ^& {# f3 |: G+ K% x2 Z- S. P% O
; w$ |% _3 q" `. u- C
A7 W* s/ ^0 _3 R3 \* G# ?0 v原文连接:http://www.szw86.com/thread-8891-1-1.html |
|