소개
하드 드라이브가 가득 찼을 때 정리하려면 다음 질문에 답해야 합니다.
- “어디에 큰 상자가 있는가?”(용량이 큰 디렉터리)
- “어디에 큰 물건이 있는가?”(큰 파일)
사용할 도구는 다음과 같습니다.
find: 금속 탐지기 (크기로 파일 찾기)du: 저울 (디렉터리 용량 측정)sort: 정리 도구 (크기순 정렬)
이 실습에서는 전문적인“봄맞이 대청소”점검을 수행합니다.
이러한 분석 방식은 실제 운영 환경에서 흔히 사용합니다. 파일시스템이 가득 찼을 때 진짜 질문은 보통“가득 찼는가?”가 아니라“정확히 어떤 파일이나 디렉터리가 원인인가?”입니다.
큰 파일 찾기 (find)
find를 사용해“큰 물고기”, 즉 100MB 보다 큰 파일을 찾습니다.
cd ~/project
find . -type f -size +100M
명령 구성:
.: 현재 디렉터리입니다.-type f: 파일만 대상으로 지정합니다.-size +100M: 100MB 보다 큰 항목을 찾습니다.
find 명령은 디렉터리를 직접 탐색하지 않고 규칙에 따라 검색하므로 강력합니다. 따라서 규모가 크거나 정리가 잘 되지 않은 파일시스템에서 특히 유용합니다.
출력 예시는 다음과 같습니다.
./storage/backup_v1.iso
검색 결과를 파일로 저장합니다.
find . -type f -size +100M > large_files.txt
cat large_files.txt
디렉터리 크기 분석 (du)
때로는“잡동사니 서랍”, 즉 작은 파일이 많이 쌓인 영역이 문제일 수 있습니다.
du를 사용해 /var(가변 데이터) 의 용량을 확인합니다.
sudo du -h --max-depth=1 /var
명령 구성:
-h: MB, GB 처럼 사람이 읽기 쉬운 단위로 표시합니다.--max-depth=1: 최상위 하위 폴더만 표시합니다 (중요).
출력 예시는 다음과 같습니다.
246M /var/cache
5.5G /var/lib
...
이제 용량이 큰 영역이 /var/lib라는 것을 알 수 있습니다.
디렉터리 수준의 분석이 유용한 이유는 저장 공간 문제가 하나의 거대한 파일 때문에 발생할 수도 있고, 파일시스템의 특정 영역에 시간이 지나면서 많은 데이터가 쌓여 발생할 수도 있기 때문입니다.
가장 큰 디렉터리 순위 매기기 (sort)
정렬되지 않은 목록은 읽기 어렵습니다. sort를 사용해 목록을 정리합니다.
du, sort, head를 함께 사용하는“황금 조합”을 실행합니다.
sudo du -h --max-depth=1 /var | sort -hr | head -n 5 > ~/project/top_var_dirs.txt
명령 구성:
du ...: 디렉터리 크기를 가져옵니다.sort -hr: 사람이 읽기 쉬운 크기를 역순으로 정렬합니다. 큰 항목부터 표시합니다.head -n 5: 상위 5 개 항목만 표시합니다.
보고서를 확인합니다.
cat ~/project/top_var_dirs.txt
이 과정은 시스템 관리자가 표준적으로 사용하는 작업 방식입니다.
기억할 흐름은 다음과 같습니다. 용량이 큰 영역을 찾고, 결과를 정렬한 다음, 가장 큰 효과를 낼 수 있는 영역부터 정리에 집중합니다.
요약
이 실습에서는 디스크 공간을 탐정처럼 조사하는 방법을 배웠습니다.
find -size: 특정한 큰 파일 (“큰 물고기”) 을 찾습니다.du -h --max-depth=1: 주요 폴더 (“큰 상자”) 의 용량을 측정합니다.sort -hr: 용량순으로 순위를 매겨 정리 작업의 우선순위를 정합니다.
이 도구들을 사용하면“내 서버의 디스크가 가득 찬 이유는 무엇인가?”라는 질문에 빠르게 답하고, 문제가 되기 전에 해결할 수 있습니다.



