|
linux系统该如何查看内存使用情况以及清理缓存?/ ~: [+ X& H& \1 t
& I) G y% M {$ z0 }, z; `
linux系统该如何查看内存使用情况以及清理缓存?
/ S5 j! f- N& e9 l" H. N6 h- N8 X8 q* W& Q
有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。
" L; B# a3 V2 C! v4 \9 x$ x ^2 E2 i3 L! ]6 u! y
1.查看物理内存使用情况的命令:free -h
2 Z) [! K6 `" z( }: L0 g
; m2 W. V* r) S4 f6 Itotel:机器总的物理内存;
, `# [/ u& P" Z: s% M; ?. g$ I! ~
1 o+ ~$ s( L0 K: Dused:已使用的内存;) d# { ]$ I" T4 H7 _1 x
7 L" _- J! c' Y( y. x9 F5 X: H1 r
free:空闲的物理内存;
5 R% P# k# Q7 e, B$ D7 e1 _: f6 L1 a$ M1 B
shared:被共享使用的物理内存;0 O- b/ d" S' @
; V0 J3 M; m# L+ L& Z; U% s3 Ybuff/cache:可以理解为缓存; f0 J: a, c# @, R I: u q! U
" y+ s6 I. ?: x+ D8 yavailable:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。 r. R7 M" ]0 W6 ~
% D2 u3 F1 u5 H" q" ?, m* W
2.清理缓存命令:
4 U% B/ y5 q) c+ t1 ? \* N6 g
( {- c& f7 {* {- G% [! K% jecho 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
- D! A8 F4 R, R8 J! m l: k4 s, j, h0 ^* q9 @' i: ?
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
/ g4 E4 u0 b9 Y
( P; P4 \. B# n& V4 i7 {+ F! g) Secho 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存8 z8 q! H U; v# L1 c6 W
* z: D [; L/ N2 c4 Q2 v注释:
" s" q4 |7 ^ M5 T" X$ T8 w
: q. G: R6 o1 s' S: |0 Secho 0 是不释放缓存9 Q1 Q A- ^9 |/ t6 L( r
2 b- W- a# p3 e0 I$ Uecho 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存)8 |$ ^/ P6 h' a' g) w
/ n! f4 m& n5 K3 b8 i8 v& o o1 {9 Behco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)2 t$ c$ z- u! |% z9 o/ h5 B
* E( O# w1 a* m' J3 A( \
echo 3 是释放 1 和 2 中说到的所有缓存: F, n# t, k0 v+ l
2 x- V1 J4 V1 }( b& A, u9 i3 X5 \" p
l q& Q- v6 {: u0 q% c4 I, p% c6 H$ q7 H5 k; t
原文连接:http://www.szw86.com/thread-8891-1-1.html |
|