
서버를 운영하다 보면 df -h로 전체 용량을 먼저 확인하게 됩니다.
그런데 어느 영역이 찼는지 확인했다면, 그다음에는 “정확히 어떤 폴더가 용량을 많이 차지하는지” 찾아야 합니다.
이때 실무에서 자주 사용하는 명령어가 바로 아래입니다.
du -sh * | sort -rh
겉으로 보면 짧은 명령어지만, 현재 경로에서 용량이 큰 폴더를 빠르게 찾는 데 매우 유용합니다.
오늘은 이 명령어가 어떤 의미인지, 언제 쓰는지, 그리고 운영 서버에서 주의할 점은 무엇인지 정리해보겠습니다.
1. du -sh * | sort -rh는 언제 쓰나?
예를 들어 df -h 결과에서 /data, /backup, /var 같은 영역의 사용률이 높게 나왔다고 가정해 보겠습니다.
이럴 때 바로 파일을 삭제하는 것이 아니라,
먼저 해당 경로로 이동해서 어떤 폴더가 가장 큰지 순서대로 확인해야 합니다.
예:
cd /var
du -sh * | sort -rh
그러면 /var 바로 아래에 있는 폴더들 중 어떤 폴더가 용량을 많이 차지하는지 큰 순서대로 볼 수 있습니다.
즉, 이 명령어는 다음 상황에서 유용합니다.
- 특정 마운트 경로에서 큰 폴더를 찾고 싶을 때
- 로그, 백업, 업로드 파일 등 어느 디렉터리가 커졌는지 확인하고 싶을 때
- 삭제 또는 정리 전에 먼저 범인 폴더를 찾고 싶을 때
2. 명령어 하나씩 뜯어보기
명령어는 아래처럼 구성되어 있습니다.
du -sh * | sort -rh
각 부분의 의미는 다음과 같습니다.
du
du는 디스크 사용량(Disk Usage) 을 확인하는 명령어입니다.
-s
summary의 의미입니다.
하위 파일과 폴더를 전부 길게 나열하지 않고, 각 항목의 합계만 보여줍니다.
-h
human-readable의 의미입니다.
바이트 단위가 아니라 K, M, G처럼 사람이 읽기 쉬운 단위로 표시됩니다.
*
현재 경로 아래의 모든 파일/폴더를 대상으로 하겠다는 뜻입니다.
|
앞 명령어의 결과를 뒤 명령어로 넘기는 파이프입니다.
sort -rh
정렬 명령어입니다.
- -r : 큰 값부터 역순 정렬
- -h : 사람이 읽기 쉬운 단위(K/M/G)를 이해하고 정렬
즉, 최종적으로는 현재 경로의 항목들을 용량 큰 순서대로 정렬해서 보여주는 명령어가 됩니다.
3. 예시로 보면 더 이해가 쉽다
예를 들어 /var에서 아래 명령어를 실행했다고 가정해 보겠습니다.
cd /var
du -sh * | sort -rh
출력 예시는 다음과 비슷할 수 있습니다.
8.5G log
2.1G tmp
1.4G cache
320M spool
40M www
이 결과를 보면 /var/log가 가장 큰 용량을 차지하고 있다는 걸 바로 알 수 있습니다.
이제 여기서 다음 단계는 단순합니다.
- 가장 큰 폴더로 이동
- 다시 같은 방식으로 세부 경로 확인
- 무엇이 커졌는지 원인 파악
예를 들어:
cd /var/log
du -sh * | sort -rh
이렇게 한 단계씩 좁혀가면 용량이 커진 정확한 위치를 추적할 수 있습니다.
4. 운영 서버에서 주의할 점
이 명령어는 편리하지만, 운영 환경에서는 몇 가지 주의할 점이 있습니다.
① 무조건 /에서 바로 실행하지 않기
루트(/)에서 바로 아래처럼 실행하면:
du -sh * | sort -rh
시스템 전체를 광범위하게 읽게 되어 시간이 오래 걸릴 수 있고,
환경에 따라 불필요한 부하를 줄 수도 있습니다.
가능하면 먼저 df -h로 문제가 있는 마운트 경로를 확인한 뒤,
그 경로 안에서 실행하는 것이 더 안전합니다.
예:
cd /data
du -sh * | sort -rh
② “큰 폴더”를 찾는 용도이지, 바로 삭제하는 용도가 아님
이 명령어 결과를 보고 바로 지우기 시작하면 위험합니다.
예를 들어 큰 폴더가 보이더라도, 그것이
- 현재 서비스에서 사용하는 업로드 경로인지
- 백업 보관 경로인지
- 로그 경로인지
- 애플리케이션이 참조 중인 데이터인지
먼저 판단해야 합니다.
항상 순서는:
확인 → 판단 → 조치
입니다.
③ 권한 문제나 특수 경로는 결과가 다르게 보일 수 있음
일부 디렉터리는 권한이 없으면 정확히 읽지 못할 수 있습니다.
또한 심볼릭 링크나 마운트 구조에 따라 예상과 다르게 보일 수 있으므로,
한 번의 결과만 보고 단정하지 말고 경로를 단계적으로 좁혀가며 확인하는 것이 좋습니다.
5. 실무에서는 이렇게 이어서 본다
용량 이슈가 발생하면 보통 아래 흐름으로 점검합니다.
1단계. 전체 현황 확인
df -h
어느 마운트 영역이 찼는지 확인합니다.
2단계. 큰 폴더 찾기
cd /문제가_있는_경로
du -sh * | sort -rh
큰 폴더를 찾습니다.
3단계. 더 깊게 들어가기
cd 큰폴더
du -sh * | sort -rh
세부 경로를 좁혀서 원인을 찾습니다.
4단계. 큰 파일 확인
find . -type f -size +100M -exec ls -lh {} +
폴더 안에서 실제 큰 파일을 찾습니다.
이렇게 보면 단순히 “용량이 크다”는 수준이 아니라,
어느 폴더 → 어느 파일 → 무엇 때문에 증가했는지까지 추적할 수 있습니다.
6. 자주 헷갈리는 점
Q. du -sh *만 써도 되지 않나요?
네, 현재 경로의 각 항목 용량을 요약해서 보는 데는 충분합니다.
다만 결과가 정렬되지 않기 때문에, 실무에서는 보통 아래처럼 sort -rh를 붙여서 큰 것부터 보이게 합니다.
du -sh * | sort -rh
Q. 파일도 같이 나오나요?
네, 현재 경로에 있는 파일도 함께 나올 수 있습니다.
하지만 보통은 폴더 위주로 보게 되고, 더 구체적인 파일 확인은 find 명령어로 이어서 보는 경우가 많습니다.
Q. 삭제 전에 무엇을 꼭 확인해야 하나요?
- 서비스에서 사용하는 경로인지
- 백업/로그/업로드/데이터 경로인지
- 프로세스가 사용 중인 파일인지
- 삭제보다 비우기(truncate) 가 더 안전한 경우는 아닌지
이런 점을 확인해야 합니다.
7. 정리
du -sh * | sort -rh는
현재 경로에서 용량이 큰 폴더를 빠르게 찾는 데 가장 실용적인 명령어 중 하나입니다.
특히 용량 부족 상황에서는 무작정 삭제하기보다,
먼저 이 명령어로 어디가 큰지 확인하는 것이 더 중요합니다.
핵심만 다시 정리하면:
- df -h : 어느 영역이 찼는지 본다
- du -sh * | sort -rh : 그 안에서 큰 폴더를 찾는다
- find : 큰 파일을 찾는다
- 조치는 반드시 확인 후 진행한다
서버 관리에서는 “빨리 지우는 것”보다
정확히 확인하고 안전하게 조치하는 것이 더 중요합니다.
서버 용량 이슈는 한 번에 해결되기보다, 순서대로 좁혀가는 것이 안전합니다.
먼저 df -h로 어느 마운트 영역이 찼는지 확인하고, 그다음 du -sh * | sort -rh로 큰 폴더를 찾습니다.
큰 폴더를 찾았다면 다시 그 안으로 들어가서 같은 방식으로 확인하고, 마지막에는 find로 실제 큰 파일까지 확인하는 흐름이 좋습니다.
디스크 용량이 90%를 넘었을 때 전체적으로 어떤 순서로 확인하면 좋은지는 아래 글에서 정리했습니다.
리눅스 서버 디스크 용량 90% 넘었을 때 바로 삭제하지 말고 확인하는 법
리눅스 서버를 운영하다 보면 디스크 용량 90% 이상 사용 중 같은 알림을 받을 때가 있습니다. 이때 바로 파일을 삭제하면 로그 분석에 필요한 파일을 지우거나, 서비스가 사용 중인 파일을 잘못
opsnote.tistory.com
df -h 결과를 볼 때 Use%만 보면 안 되는 이유는 아래 글과 함께 보면 좋습니다.
리눅스 서버 df -h 결과, Use%만 보면 안 되는 이유와 확인 순서
리눅스 서버에서 디스크 용량을 확인할 때 가장 많이 쓰는 명령어는 df -h입니다. 그런데 초보 운영자는 Use% 숫자만 보고 “90%니까 바로 파일을 지워야 하나?”라고 판단하기 쉽습니다. 하지만 서
opsnote.tistory.com
큰 폴더를 찾은 뒤 실제 큰 파일을 찾는 방법은 아래 글에서 이어서 볼 수 있습니다.
리눅스 서버 디스크 용량을 잡아먹는 큰 파일 find 명령어로 찾는 법
리눅스 서버에서 디스크 용량이 부족할 때는 먼저 df -h로 어느 영역이 찼는지 확인합니다.그다음 du -sh * | sort -rh 명령어로 어떤 폴더가 큰지 확인할 수 있습니다.그런데 폴더 단위로 확인한 뒤에
opsnote.tistory.com
디스크 용량 문제를 전체 흐름으로 보고 싶다면 아래 글을 함께 보면 좋습니다.
https://opsnote.tistory.com/70
리눅스 서버 디스크 용량 문제 확인 순서 총정리
리눅스 서버를 운영하다 보면 디스크 용량 문제는 생각보다 자주 만납니다.처음에는 단순해 보입니다.디스크가 찼다.공간이 부족하다.큰 파일을 지우면 된다. 하지만 운영 서버에서는 이렇게
opsnote.tistory.com
'리눅스' 카테고리의 다른 글
| 리눅스 서버 /var/log 용량이 갑자기 커졌을 때 확인하는 법 (0) | 2026.05.06 |
|---|---|
| 리눅스에서 파일 삭제했는데 용량이 안 줄어들 때 lsof로 확인하는 법 (0) | 2026.05.05 |
| 리눅스 서버 디스크 용량을 잡아먹는 큰 파일 find 명령어로 찾는 법 (0) | 2026.05.05 |
| 리눅스 서버 df -h 결과, Use%만 보면 안 되는 이유와 확인 순서 (0) | 2026.05.02 |
| 리눅스 서버 디스크 용량 90% 넘었을 때 바로 삭제하지 말고 확인하는 법 (0) | 2026.05.02 |