반응형
RedHat Enterprise Linux 5.2,6.4 / CentOS 6.4 에서 사용 중인 메모리 정리 코드 입니다.
워크스테이션을 딱히 필요하지 않으면 끄는 일이 없다보니
종종 램 부족 현상을 겪고는 합니다.
아래는 제가 램 정리를 목적으로 만든 bash script입니다.
실행에는 sudo 권한이 필요합니다.
#!/bin/sh
echo '============memory stat==================='
free -m
echo '=>Operating Sync before clean.'
sync
echo 'Did one.'
sync
echo 'Did two.'
sync
echo 'Did three times'
echo ' done.'
echo ' '
echo '->proceed drop_caches (pagecache/dentries/inodes)'
echo 3 > /proc/sys/vm/drop_caches
echo '->done'
echo '->result'
free -m
sync
echo '==============All done.================='
스크립트 실행 시 아래와 같은 결과가 표시 됩니다.
스크립트에 [ echo ]는 단순히 스크립트 실행 시 cmd창에 보여지는 내용입니다. 진행 과정 등을 보고자 넣었습니다.
[ free -m ]은 현재 메모리 상태를 MB단위로 보여주는 명령어 입니다.
[ sync ] 는 메모리에 있는 파일 중 아직 저장되지 않은 파일은 디스크에 저장하는 명령어로, 메모리 청소 전 혹시 모르는 상황에 대비해 앞뒤로 실행하고 있습니다.
핵심이 되는 [ echo 3 > /proc/sys/vm/drop_caches ] 는 3이라는 옵션을 drop_caches에 전달하는 명령어이며, drop_caches는 0~3까지의 옵션을 받습니다. (링크 참조)
저는 이 스크립트를 root 소유에 실행 권한을 추가해 놓고 필요할 때 실행시키기도 하지만,
cron에 매일 새벽 자동 실행되도록 등록해놓았습니다.
1. root 소유
chown root:root 스크립트
2. 실행 권한 추가
chmod u+x 스크립트
3.cron 등록
crontab -e
분 시 일 월 요일 스크립트
반응형
'PC > Linux' 카테고리의 다른 글
lmstat, command not found 해결 (0) | 2020.11.25 |
---|---|
undefined symbol: FT_Done_MM_Var 오류 해결 (0) | 2020.11.25 |
Synology NAS에서 docker image 만들고 수정하고 push 하자 (0) | 2020.11.12 |
Raspberry pi Zero W - Hotspot 만들기 (0) | 2019.10.15 |
Cshell rc설정 (0) | 2017.03.26 |
댓글