일반적으로 작은 시스템에서는 df -h 나 du -h의 차이를 느끼기 힘들다.
그러나 접속량이 높은 큰 시스템의 경우 급격히 늘어나는 log파일 용량 때문에
두개의 명령어의 용량이 차이날 수 있다.
그렇다면 차이나는 이유는 무엇일까?
1.원인
df -h → 프로세스가 잡고있는 용량까지 출력
du -h → 실제 용량 출력
따라서 du -h 가 정확한 실용량이고,
df -h 를 했을때 용량이 더 많은 부분은 이미 파일이 삭제되었지만 어떤 프로세스가 해당 용량을 이미 할당해서
기동되고있는것이 원인이다.
2.해결
lsof를 yum으로 설치한 후 lsof 명령어를 입력하면 프로세스별 용량 사용량이 나온다.
그중 Delete된 파일을 잡고있는 프로세스 pid를 찾아 kill 해주면 된다.
(보통은 was가 잡고있을거라 kill하면 was가 죽기 때문에, 운영환경이면 합의하에 was를 재기동하는게 좋다)
'리눅스' 카테고리의 다른 글
[리눅스] nohup으로 쉘스크립트 백그라운드로 실행해보기 (0) | 2021.01.04 |
---|---|
[리눅스] /dev/null의 뜻과 활용법 (0) | 2021.01.04 |
[리눅스] DNS 네임서버 설정하기 (0) | 2020.11.20 |
[리눅스] 단축키 기능 alias 사용하기 (0) | 2020.10.06 |
[리눅스] 다른 서버로 파일전송하기(scp,rsync) (0) | 2020.08.08 |