서버관리2014. 10. 7. 13:28
300x250



유닉스 리눅스에서 du 명령어는 폴더나 파일의 사용량을 보여 주는 명령어 이다. 

Summarize disk usage of each FILE, recursively for directories.


du 명령어의 사용법을 알아보자.



1. 보여주는 서브폴더 단계 조절


기본적으로 모든 파일 폴더는 물론 서브폴더 까지 다 보여 주기 때문에 너무 많이 리스트 된다. 

그래서 --max-depth=N 이라는 옵션을 이용하여 보여주는 폴더 단계를 조절해서 사용한다. 


# du --max-depth=1 

이렇게 하면 1단계 폴더만 리스트 된다. 


이 옵션을 별로로 옵션을 주지 않고 영구적으로 설정하여 계속 동작하게 하려면, 

/etc/profile.d/ 폴더에 파일 하나를 추가해 서 위 옵션을 적어 넣어 주면 된다. 

물론, bashrc 파일 등을 직접 수정할 수도 있지만, 확장성을 위해서 /etc/profile.d/ 를 이용하는 게 좋다.


/etc/profile.d/zzz.sh 파일의 내용은 아래 형식으로 넣어 준다. 

alias du='du -h --max-depth=1'


위 옵션들은 각각

-h : human-readable 보기 쉬운 형태로 보여 준다. eg, 1K 2345M 2G

--max-depth=1 : 디렉토리를 1단계만 보여 준다. 



2. 보여주는 목록 정렬


du 의 결과물을 정렬을 해 보자. 


du 명령어 자체에는 정렬 옵션이 없어 보인다. 

그래서, sort 명령어를 추가해서 정렬을 할 수 있다. 


# du | sort -hr


이런식으로 du 의 결과물을 정렬할 수 있다. 

du 한 후에 sort 하기 때문에, du 의 결과물이 많을 경우 sort 에도 시간이 많이 걸릴 수 있다. 


sort 의 옵션들은 각각

-h : human-numeric-sort 파일크기에 따라 정렬한다. du 의 -h 옵션에 대응한다.

-n : numeric-sort 단순히 문자열의 수치 값에 따라 비교한다. K M 이 섞인다.

-r : reverse  역순으로 정렬




300x250
Posted by 마스타