티스토리 뷰

현업에서 개발환경의 용량이 90프로를 초과해서 컴포넌트들의 저장공간을 비워야했습니다. 혼자서 전체 저장공간을 정리하기란 불가능하기 때문에 담당자에게 용량 정리를 할당해야했습니다. 그러기 위해선 1GB이상의 용량을 차지하고 있는 컴포넌트들 지워야한다는 기준을 세웠고 그 때 사용한 명렁어가 'du'입니다.
이번 글에서는 'du' 명령어의 기본적인 사용법부터 실무에서 유용한 옵션까지 정리해 보겠습니다.
1. du 명령어란?
du(Disk Usage)는 파일 및 디렉토리의 디스크 사용량을 표시하는 리눅스 명령어입니다. 주로 디스크 공간 부족 문제를 해결하거나 대용량 파일을 찾는 데 사용됩니다.
2. 기본 사용법
기본적으로 du 명령어를 실행하면 현재 디렉토리의 모든 하위 디렉토리와 파일의 크기를 출력합니다.
$ du
출력 예시:
4 ./docs
8 ./images
12 .
위 출력에서 .은 현재 디렉토리를 나타내며, 숫자는 해당 디렉토리의 크기를 킬로바이트(KB) 단위로 표시합니다.
3. 자주 사용하는 옵션
3.1. 파일 크기를 사람이 읽기 쉬운 단위로 출력하기 (-h)
$ du -h
출력 예시:
4.0K ./docs
8.0K ./images
12K .
-h 옵션을 사용하면 K(KB), M(MB), G(GB) 단위로 변환되어 가독성이 향상됩니다.
3.2. 디렉토리별 합계만 출력하기 (-s)
$ du -sh
출력 예시:
1.2G .
이 옵션은 현재 디렉토리 전체 크기만 확인하고 싶을 때 유용합니다.
3.3. 하위 디렉토리의 크기 출력 (-c)
$ du -hc
출력 예시:
4.0K ./docs
8.0K ./images
12K .
12K total
-c 옵션을 사용하면 마지막 줄에 총합(total)이 표시됩니다.
3.4. 특정 깊이까지 출력 (--max-depth=N)
$ du -h --max-depth=1
출력 예시:
4.0K ./docs
8.0K ./images
12K .
--max-depth=1 옵션을 사용하면 최상위 디렉토리만 출력하고, 하위 디렉토리는 생략됩니다.
$ du -hd 1
※macOS에서는 -d 옵션을 사용하여 원하는 깊이만큼 디스크 사용량을 확인할 수 있습니다.
3.5. 특정 파일 시스템만 분석 (-x)
$ du -hx /
이 옵션은 다른 파일 시스템을 제외하고 현재 파일 시스템의 디스크 사용량만 계산할 때 사용됩니다.
3.6. 특정 파일 또는 디렉토리 크기 확인
$ du -sh /var/log
출력 예시:
500M /var/log
특정 경로의 크기를 알고 싶을 때 유용합니다.
4. 실무에서 유용한 활용 예제(du, find, watch)
4.1. 디스크 사용량이 많은 상위 5개 디렉토리 찾기
$ du -ah / | sort -rh | head -n 5
이 명령어는 루트(/) 디렉토리에서 크기가 큰 상위 5개 파일 또는 디렉토리를 찾습니다.
4.2. 홈 디렉토리에서 1GB 이상인 파일 찾기
$ find ~/ -type f -size +1G -exec du -sh {} \;
이 명령어를 사용하면 홈 디렉토리에서 1GB 이상인 파일을 찾아 크기를 출력할 수 있습니다.
4.3. 디스크 사용량을 실시간으로 모니터링하기
$ watch -d 'du -sh /home'
이 명령어는 /home 디렉토리의 크기를 실시간으로 감시할 때 유용합니다.
5. 결론
du 명령어는 리눅스에서 디스크 사용량을 분석하는 데 매우 유용한 도구입니다. 특히 -h, -s, --max-depth, -c 등의 옵션을 잘 활용하면 불필요한 파일을 쉽게 찾아내고, 시스템을 효율적으로 관리할 수 있습니다.
리눅스 서버를 운영하거나 디스크 용량을 관리할 때 du 명령어를 적극 활용해 보세요~~ ☺️
- Total
- Today
- Yesterday
- 페이지네이션
- read-tracker
- keyset
- db성능개선
- 할일관리
- 쿼리최적화
- readtracker
- db
- NoSQL
- 인덱스
- 역직렬화
- grammarly
- SQL
- vimium
- 크롬
- 개발자면접
- 개발회고
- 개발
- 쿼리
- 삭제쿼리
- 데이터베이스
- 개발지식
- 진행률
- 데이터베이스삭제
- 개발자
- 생산성
- Ai
- 쿼리튜닝
- 개발기
- 확장프로그램
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |