디스크가 얼마나 찼는지, 어느 디렉터리가 큰지, 메모리가 얼마나 남았는지를 보는 명령이다.
df
df는 파일시스템 단위의 사용량이다.
df -h
df -h .
df -hT
df -i`-h`는 KiB, MiB, GiB로 보여 준다. 인자에 파일이나 디렉터리를 주면 그것이 놓인 파일시스템만 나온다. `-T`는 ext4, tmpfs 같은 종류를 붙인다. `-i`는 inode 사용량이다.
용량이 남아 있어도 inode를 다 쓰면 새 파일을 만들지 못한다. 작은 파일이 아주 많을 때 나는 현상이다. `df -i`의 IUse%를 본다.
Use%가 100에 가깝고 Available이 0이면 일반 계정은 더 쓸 공간이 없다. 파일시스템은 root 관리용으로 약간의 여유를 남겨 두기도 한다. 그 여유는 일반 계정의 Available에 들어가지 않는다.
du
du는 디렉터리와 파일이 디스크에서 차지하는 크기다.
du -sh /var
du -h --max-depth=1 /var
du -sh -- * | sort -h`-s`는 합계만, `-h`는 읽기 쉬운 단위다. `--max-depth=1`은 한 단계 아래까지만 보여 준다. 어느 하위 디렉터리가 큰지 볼 때 쓴다. 마지막 예는 현재 디렉터리의 항목을 크기순으로 정렬한다. 이름이 점으로 시작하는 항목은 `*`에 들어가지 않는다.
du의 숫자는 기본적으로 디스크 블록이다. 성긴 파일은 `ls -l`의 바이트보다 작게 나올 수 있다. 내용 길이 자체가 필요하면 `du -b`를 쓴다. `-b`는 보이는 크기이고 단위는 바이트다.
권한 없는 하위 디렉터리는 건너뛰면서 오류를 낸다. 합계가 작아 보이면 그 오류가 있는지 먼저 본다.
free
free -h`free` 칸만 보면 남은 메모리가 거의 없어 보일 수 있다. 리눅스는 비어 있는 RAM을 파일 캐시로 쓴다. 새 프로그램이 메모리를 달라고 하면 그 캐시를 돌려준다. 바로 쓸 수 있는 양은 `available` 칸이다.
buff/cache가 커도 available이 충분하면, 그것만으로 메모리가 부족한 것은 아니다. available이 작고 스왑 사용이 계속 늘면 그때 메모리 부족을 의심한다.
COMMENTS
댓글 0
이 글에 대한 의견이나 질문을 남겨 주세요.
댓글은 구글이나 카카오로 시작한 뒤에 남길 수 있습니다.
등록된 댓글이 없습니다.