哪个大神能不能帮忙写一个定时清理内存缓存的代码?(每次要进入telnet 执行这个代码不够方便)
5 ^* k* \) |" e2 ]3 a) M设置内存超过一定百分比(比方说70%)就执行清理内存的命令。7 v2 b. C% \/ W) F' w0 Q
搜索了一下,实在不会修改:
& r( ~ r+ f d8 r$ U: P0 p: }https://blog.csdn.net/weixin_30691649/article/details/116648833
1 o J$ b; g- j+ p5 I: ^-----------
7 a, S! d; a6 p下面给出shell脚本freeMemory.sh9 F) w: N9 _! [
0 ^, X8 J+ D# W [3 ~
#!/bin/sh4 q! |: B" S+ [" |0 }- F |9 C
. q: }7 ]4 V% g* K; K#内存总量
8 E; ^, K( j8 I n% x. @
" B* }; J! @6 o Z' V5 L: O, A( `total=$(free-m|grep Mem |awk'{print $2}')
5 o1 ?2 K6 l6 I( a% f/ @, K
; S+ C/ r( H8 ^#已使用内存
~) C1 f8 h/ Q. H r! U4 A* q0 S$ ~
used=$(free-m|grep Mem |awk'{print $3}')) n T0 ]) I, A3 S' m( L& X
& h. S- v; x1 x9 `4 W B
#内存使用率
( `9 ^+ W! D$ Z# [( O: _9 d, d. Y6 R5 m# s/ L" t; N" _: t
rate=$(($used*100/$total))
4 e3 k2 a7 q/ W- k5 K# {3 s
0 x( e& N* s0 z% l. d3 Gtime=date7 g3 f& ~% i/ ^5 a3 D; Z
! Z1 X" N |5 g, Z0 A
echo"############$(date)###############". l! p/ g: v5 v$ ~$ F" Q+ U0 h
$ x9 M o8 Y$ g4 j$ O
#$1 is max Mem, |0 C! x) m* |3 ~
8 }4 O& J# n, a1 n8 h
if[$rate-gt$1]. s% m& X3 R7 V
" c+ r8 t3 X; o% c8 w' W" r* h: tthen: z: d" E% P' h* A5 l; W
, A: P2 m+ S$ W+ G6 R3 T h* lecho"rate=$rate freeMemory start!") y: I( @# l8 m+ o) f$ p
4 q _8 R4 {( ]8 Z5 j3 J0 M
sync
; q( ]- q/ f8 C% ]! ^% |9 p. u1 U& J ?& q( x
echo 3 >> /proc/sys/vm/drop_caches
. j/ z( B/ g- H3 ~+ \' k9 Z5 ?8 T P& ?# Z. N
echo"FreeMemory Success!"
) l5 d5 M& M5 s2 G; a5 n! `* `: |: L' v( c3 e
else1 |1 [. a6 I8 R( z- x ]9 j+ U% L
8 i1 U. p. B& Z: a
echo"rate=$rate Memory is normal"
5 f1 P* Z9 H" {+ U. \* v+ k6 h7 i% t% x% e
fi- j7 Y4 Y+ Y6 |2 n3 ^/ W
7 k1 `4 w4 \: I1 l. h) q& e) h
1、执行命令crontab -e打开编辑定时配置文件- I+ s) g8 e: X+ }5 L- b7 n9 n/ D
( L6 M5 X; y& g- [2 K7 Z2、在文件的最后面添加下面的命令:/ t$ ~* C0 y) }1 {. u3 j# n' x
+ \8 ~. J3 ?9 B1 Y; S0 23 * /root/freeMemory.sh 70>>/root/freeMemoryLog.txt
% N: c7 E6 P* m( {, p/ U
& F. q: c' I, @+ A1 J7 E0 f上面我们设置了每天的23点执行命令我们的脚本,参数设置70,就是当检测到内存使用率大于70的时候回执行释放缓存命令,后面的>>是重定向命令吗,会将脚本的执行结果写进文件freeMemoryLog.txt中,便于我们查看。7 q0 S3 M9 O% l/ z: V
$ }9 x, a" L/ \) l
cron是不需要重新启动的,文件保存后会自动生效。 |