|
linux系统该如何查看内存使用情况以及清理缓存?$ g, M: `+ `% E
6 d3 `% P2 y5 B, T( U% E1 zlinux系统该如何查看内存使用情况以及清理缓存?) s& L# }2 ~: \) H/ M4 Z+ x' J
) F \1 b" ?9 O8 ]$ D有时服务器卡顿,不一定是cpu使用率过高,也有可能是内存不够用了,可以使用下面的方法查看,并及时清理。: c2 o3 a+ S$ m1 q
$ p0 c1 J5 k+ o' _2 e2 C
1.查看物理内存使用情况的命令:free -h
! q1 R2 ~* k1 ~- n% i8 v5 G
) S d/ [9 j+ atotel:机器总的物理内存;( [7 M, j2 x# L# X- x! c
: i0 `% X# ?' q% o% d2 j* L$ Wused:已使用的内存;
8 K$ Y/ \7 C8 L$ {* ~
, J9 D }% C8 Z1 l/ H, Pfree:空闲的物理内存;
- \3 \) D* `" N9 X: y$ v# D
- b( y' ?) Q& L2 W% @" ^- qshared:被共享使用的物理内存;2 x5 n6 ^, \7 x G& j/ X
Q7 J1 S, f# i- _buff/cache:可以理解为缓存;
$ w+ w: G$ k9 g' \" D8 ~5 t; L- x0 p) X' Z0 h
available:还可以被应用程序使用的物理内存;available= free + buffer + cache(这只是理想中的计算方式,实际中的数据往往有较大的误差)。# ]6 w, [* l$ B9 R
: {& {9 j% Y4 d- I2 S# ^4 C4 H
2.清理缓存命令:
D% ]0 R2 V( h) I9 b# L. B% k+ J. `: l8 D( z% A$ [
echo 1 > /proc/sys/vm/drop_caches //释放pagecache页面缓存
( o$ Z; T5 L* L" A# e* B5 u& x) B% z% z- p' d8 |# C: j
echo 2 > /proc/sys/vm/drop_caches //释放dentries(目录缓存)和inodes缓存
, S$ @; o3 s3 a0 L( x |
2 U$ D3 ]. D C7 F" Pecho 3 > /proc/sys/vm/drop_caches //释放pagecache,dentries 和 inodes缓存
2 v w8 y! I5 G$ J0 |9 N* N4 j# J* A. ~6 R1 u5 c) j
注释:
' f* C# [+ j$ j' M% O; m
, W- M( j' F+ U U! x* jecho 0 是不释放缓存# Q& _, S/ _* S' {
7 Q3 w# g, m. d- F* \2 T* |1 ^. w
echo 1 是释放pagecache页面缓存(清空最近放问过的文件页面缓存): H2 \ F, r) D# V3 V! |
1 V6 g8 c' X( ^% [/ M+ n- R
ehco 2 是释放dentries(目录缓存)和inodes缓存(清空目录项缓存和文件节点缓存)! r8 a- J4 Q/ Z3 U9 G& w
" ^+ A2 w( O8 c; j
echo 3 是释放 1 和 2 中说到的所有缓存
4 v5 y: m G: {4 J9 f# t& z% N" v
0 x: v u& z3 h# d
& l7 }6 s6 @ u1 N$ t5 u6 K. z+ L原文连接:http://www.szw86.com/thread-8891-1-1.html |
|