Section 5.1: 디렉토리들의 디스크 사용량 조사하기
가끔은 어떤 디렉토리가 얼마나 디스크 용량을 차지하고 있는지를 확인해야 할 필요가 있는데, 이는 특히 사용자가 df -h
명령을 수행한 후 디스크 내의 가용 공간이 얼마 남지 않았다는 것을 확인한 경우 더욱 그러하다.
du:
du
명령어는 FILE 파라미터들에 대한 디스크 사용량 요약 정보를 출력하며, 디렉토리들에 대해서는 재귀적으로 동작한다.
이 명령어는 주로 -sh
옵션과 함께 사용된다:
-s, --summarize
각 인자별로 총 사용량의 합만을 출력한다
-h, --human-readable
크기 정보를 사람이 인식하기 편리한 형태로 출력한다 (예: 1K 234M 2G)
현재 디렉토리 내의 파일들에 대한 디스크 사용량 정보의 요약 정보를 출력하려면 다음과 같이 입력한다:
du -sh *
출력되는 예제는 다음과 같다:
572K Documents
208M Downloads
4,0K Music
724K Pictures
4,0K Public
4,0K Templates
4,0K Videos
아래와 같은 방법으로 숨겨진 파일들도 포함시킬 수 있다:
du -sh .[!.]* *
출력되는 예제는 다음과 같다:
6,3M .atom
4,0K .bash_history
4,0K .bash_logout
8,0K .bashrc
350M .cache
195M .config
12K .dbus
4,0K .dmrc
44K .gconf
60K .gem
520K .gimp-2.8
28K .gnome
4,0K .ICEauthority
8,3M .local
8,0K .nano
404K .nv
36K .pki
4,0K .profile
8,0K .ssh
0 .sudo_as_admin_successful
4,0K .Xauthority
4,0K .xsession-errors
4,0K .xsession-errors.old
572K Documents
208M Downloads
4,0K Music
724K Pictures
4,0K Public
4,0K Templates
4,0K Videos
다음으로, 출력 결과에 전체 총합 정보를 추가하려면 -c
옵션을 기술한다:
du -sch .[!.]* *
출력되는 예제는 다음과 같다:
.
.
.
4,0K Templates
4,0K Videos
769M total
du
명령어를 루트 디렉토리에서 적절하게 사용하는 것은 때때로 큰 도움이 되는데, 이를 통해 어떤 프로그램/서비스나 혹은 사용자가 디스크 공간을 과도하게 점유하고 있는지를 확인할 수 있기 때문이다. 예를 들어, 웹 혹은 메일 서버에 있어 비정상적으로 낮은 수준의 디스크 공간만이 사용 가능한 경우에는, 메일 서비스로의 스팸 공격이 그 원인일 수 있으며 이는 du
명령어를 통해 문제 파악에 도움을 받을 수 있다.
루트 디렉토리에 대한 디스크 사용량 검사는 다음과 같이 수행한다:
sudo du -sch /.[!.]* /*
출력되는 예제는 다음과 같다:
16K /.VolumeIcon.icns
24K /.VolumeIcon.png
13M /bin
57M /boot
4,0K /cdrom
620K /dev
13M /etc
779M /home
0 /initrd.img
406M /lib
3,9M /lib32
4,0K /lib64
16K /lost+found
4,0K /media
4,0K /mnt
367M /opt
du: cannot access '/proc/18221/task/18221/fd/4': No such file or directory
du: cannot access '/proc/18221/task/18221/fdinfo/4': No such file or directory
du: cannot access '/proc/18221/fd/4': No such file or directory
du: cannot access '/proc/18221/fdinfo/4': No such file or directory
0 /proc
20K /root
du: cannot access '/run/user/1000/gvfs': Permission denied
9,4M /run
13M /sbin
4,0K /srv
0 /sys
72K /tmp
3,5G /usr
639M /var
0 /vmlinuz
5,8G total
마지막으로, 작은 용량의 결과를 무시하기 위해 크기에 대한 기준치 값을 추가적으로 기술할 수 있다. 아래 명령어는 루트 디렉토리로부터 최 종단 디렉토리들에 이르기까지 파일시스템상의 크기가 1GB 이상인 디렉토리들만 출력해 줄 것이다:
sudo du --threshold=1G -ch /.[!.]* /*
출력되는 예제는 다음과 같다:
1,4G /usr/lib
1,8G /usr/share
3,5G /usr
5,8G total
본 문서는 Linux Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.
[출처] https://books.goalkicker.com/GitBook/
'번역 > Linux Notes for Professionals' 카테고리의 다른 글
6.1: CPU, 메모리, 네트웍 및 디스크 (I/O 작업) 관련 통계치 확인하기 (0) | 2020.07.02 |
---|---|
5.2: 디스크 공간 확인하기 (0) | 2020.07.01 |
4.4: 시스템에 존재하는 파일 위치 찾기 (0) | 2020.06.30 |
4.3: 사용자만의 명령어 별칭 (Alias) 생성하기 (0) | 2020.06.29 |
4.2: 기본적인 쉘 유틸리티들 (0) | 2020.06.29 |