반응형

du 명령어 (파일및 디렉토리의 용량을 확인한다.)


 

제공 : 리눅스포털 -수퍼유저코리아-

 

 

 

 

Disk Usage의 약어로서 파일및 디렉토리의 사용량을 확인할 때 사용하는 명령어이다.
du 명령어는 현재디렉토리의 용량뿐 아니라 현재디렉토리의 서브디렉토리 및 파일들 까지 모두 함께 사용량을 계산하여 표시해 준다.
기본 용량표시단위는 kbyte이다.

 

사용형식

       du [OPTION]... [FILE]...

 

사용예 #1

특정 디렉토리내에 존재하는 파일들의 개별용량을 확인코자 할 때에는 다음과 같이 한다.
"du 디렉토리명"이라고 하면 지정한 디렉토리내에 존재하는 모든 파일의 용량을 파일명과 함께 표시해 준다.

다음은 그 예이다.

[root@host3 /]# du /etc 
184     /etc/sysconfig/network-scripts
4       /etc/sysconfig/console
4       /etc/sysconfig/networking/devices
4       /etc/sysconfig/networking/profiles/default
8       /etc/sysconfig/networking/profiles
20      /etc/sysconfig/networking
16      /etc/sysconfig/apm-scripts
20      /etc/sysconfig/rhn
372     /etc/sysconfig
60      /etc/X11/desktop-menus
....
....

위의 예는 /etc/에 존재하는 모든 파일들(서브디렉토리내의 파일들 까지 포함)의 용량과 함께 파일명을 표시해 준다.
용량 단위는 kbyte단위이다.

하지만 /etc내에는 수많은 파일들이 존재하므로 한 화면에 모두 표시되지 않는다.
그리고 모두 표시된다 하더라도 한눈에 정확하게 어떤파일이 얼마의 용량을 차지하고 있는지를 한눈에 확인하기가 어렵다.
따라서 이번에는 전체 용량을 정리하여 한번에 보여주는 예를 보도록 하자.

사용예 #2

이번에는 /etc 디렉토리의 전체용량이 얼마나 되는가를 확인해 보도록 하자.
"-s"(summary)을 사용하면 지정된 디렉토리내에 존재하는 모든 파일과 서브디렉토리들의 용량을 합쳐서 표시해 준다.

[root@host3 /]# du -s /etc
12892   /etc
[root@host3 /]#

위와 같이 전체용량을 간략히 표시할 때에는 -s옵션을 사용한다.
위의 예에서 /etc/는 12,892byte를 현재 사용하고 있다.
그런데 좀 용량단위가 표시되지 않아서 불편해 보일 수도 있다.
이것을 좀 더 간편하게 용량단위까지 표시해 보도록 하자.

사용예 #3

이번에는 /etc 전체용량을 용량의 단위까지 표시해서 확인해 보자.
즉, 전체용량을 모두 합해서 용량단위까지 붙여서 출력하라는 옵션은 "-sh"옵션을 사용한다.

"-h"(human-readable)는 단위를 표시하게 하는 du명령어의 옵션으로서 Kbyte 또는 MBbyte또는 GByte등의 용량표시를 해주게 된다.
K, B, G단위는 용량의 크기에 따라서 간편한 쪽으로 표시된다.
즉, human-readable의 약어인것 처럼 사람이 좀 더 읽기 편하게 표시해준다는 의미이다.

[root@host3 /]# du -sh /etc
13M     /etc
[root@host3 /]#

위의 예는 /etc의 전체 용량이 13M가 된다는 것을 의미하고 있다.

이번에는 좀 더 현실적인 예를 들어 보자.
서버관리를 하다보면 루트디렉토리 밑에 존재하는 각 디렉토리들의 개별 사용량을 확인하거나 확인하여 보고서를 작성해야할 때도 있을 것이다.
이때 간편하게 다음과 같은 명령어로 개별 디렉토리의 사용량을 간편하게 확인할 수 있다.

[root@host3 /]# du -sh /*
6.8M    /bin
5.2M    /boot
12K     /command
428K    /dev
13M     /etc
216K    /home
4.0K    /initrd
44M     /lib
16K     /lost+found
4.0K    /misc
8.0K    /mnt
4.0K    /opt
1.0K    /proc
4.0M    /root
12M     /sbin
48K     /tftpboot
500K    /tmp
1.7G    /usr
44M     /var
[root@host3 /]#

보다시피 / 밑에는 개별 시스템 디렉토리들이 존재하고 있다.
이때 간편히 위와 같은 명령어로 개별 디렉토리의 용량을 확인할 수 있다.

또한 좀 더 실무적인 접근을 해보자면, 호스팅 서버에서는 개별 사용자들의 계정 사용량을 확인해야할 경우가 종종 있을 것이다.
이때에는 다음과 같이 간편하게 확인할 수 있다.

아래는 /home의 전체용량을 확인한 것이다.

[root@host3 /]# du -sh /home/
59M     /home
[root@host3 /]#

그리고 계정사용자들의 개별사용량을 확인한 것이다.
[root@host3 /]# du -sh /home/*
13M     /home/bible
15M     /home/bible1
17M     /home/bible2
15M     /home/bible3
[root@host3 /]#


사용법 #4

개별 사용자가 자기가 사용하는 계정의 전체용량을 확인하고자 할때에는 다음과 같이 한다.
telnet이나 ssh등으로 서버로 로그인한 다음 "du -sh ~자기ID"라고 하면 현재 자기가 사용중인 계정의 전체용량을 확인할 수 있다.

[root@host3 /]# du -sh ~bible
13M     /home/bible
[root@host3 /]# du -sh ~bible1
15M     /home/bible1
[root@host3 /]#

이상으로 du에 대한 설명을 마친다.
참고로 du 명령어는 df명령어와 함께 익혀두는 것이 서버관리 공부에 많은 도움이 될 것이다.


저작권: 리눅스포털 (
www.superuser.co.kr), 무단 재배포및 복사를 금합니다.


 

출처 : http://www.superuser.co.kr/superuserboard/view.html?id=35&code=linuxcom&start=50&position=

반응형

'OS > Linux' 카테고리의 다른 글

.bashrc 파일 적용  (0) 2009.02.11
path 추가  (0) 2009.02.11
쉘바꾸기  (0) 2009.02.11
scp 파일 가져오기.  (1) 2009.02.11
[VI] vi 에서 utf-8 형식의 글 보기.  (0) 2009.02.11

+ Recent posts