반응형
문제 상황
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 32G 0 32G 0% /dev
tmpfs 6.3G 2.8M 6.3G 1% /run
/dev/nvme0n1p2 916G 907G 0G 100% /
- 'df -h' 명령을 통해 file을 지워도 사용가능한 공간인 Available이 올라가지 않으며, Use가 100%인 상황이 발생한다.
해결 방안
계속 Use가 100%인 이유
- 이 경우 filesystem(ext3 등) 에서 기본적으로 root 를 위해 확보해(reserved) 놓은 용량이 있기 때문에 그런 경우가 있다.
- 그래서 기본적으로 위와 같은 경우에 916G * 0.95 아래로 Used 를 낮춰야 Available 이 생겨난다.
파일의 용량 확인 및 제거
i) 일일이 찾아보기
$ cd /
# 용량 확인 및 큰용량 파일 제거
$ du -h
$ rm log.txt
ii) 특정 경로를 기준으로 용량 순 정렬
# 오름차순 정렬
$ du /home/sjchoi/ | sort -n | tail -5
1437836 /home/sjchoi/gmbdsvr/build/lib
2890160 /home/sjchoi/gmbdsvr/build/_deps
7139396 /home/sjchoi/gmbdsvr/build
8001824 /home/sjchoi/gmbdsvr
9643132 /home/sjchoi/
# 내림차순 정렬
$ du /home/sjchoi/ | sort -nr | head -5
9642656 /home/sjchoi/
8001824 /home/sjchoi/gmbdsvr
7139396 /home/sjchoi/gmbdsvr/build
2890160 /home/sjchoi/gmbdsvr/build/_deps
1437836 /home/sjchoi/gmbdsvr/build/lib
추가로, root 가 가지고 있는 5% 의 용도
- ref. 3 에 따르면 ext2 나 ext3, 4 등은 이 공간을 5%로 잡고 있다고 한다. 이녀석의 용도는 temp 용인듯 하다. ref.2 의 설명에 따르면 fragmentation 을 줄여주고, root 권한의 deamon 등이 동작하다가 하드 용량이 없어서 동작이 안되는 경우 등을 막아준다고 한다.
- 그런데 단순히 저장공간(HDD 등) 이 static file 의 저장을 위한 용도라면 필요하지 않기에, 이 녀석에 대한 비율을 조정하는 방법은 tune2fs(8) 등을 통해 가능하다.
참고
- [컴][리눅스] df 에서 file 을 지워도 Available 이 올라가지 않는 경우: http://i5on9i.blogspot.com/2015/06/df-file-available.html
- 리눅스 디스크 용량 및 저장 공간 확인: https://blog.naver.com/PostView.naver?blogId=hongganz&logNo=222437398559&from=search&redirect=Log&widgetTypeCall=true&directAccess=false
- linux - Deleting files doesn't free space - Super User
- microHOWTO: Reduce the space reserved for root on an ext2, ext3 or ext4 filesystem
반응형