← 전체 글 보기

Mac '디스크 공간 부족': 무엇부터 지워야 할까

Mac에서 '디스크 공간 부족' 경고가 떴을 때 무엇부터 지워야 하는지를, 실제로 회수되는 용량이 큰 순서대로 단계별로 정리했습니다.

· 업데이트 2026년 9월 14일
macOSStorageTroubleshooting

이런 종류의 가이드는 현재 영어로 더 많이 제공됩니다. 전체 글 보기


이 글은 긴 설명을 읽을 시간이 없는 상황을 위한 버전입니다 — 지금 당장 뭔가가 막혀 있고, 앞으로 5분 안에 공간을 확보해야 합니다. 실제로 효과가 있는 순서, 가장 빠르고 회수량이 큰 것부터 정리했습니다.

먼저, 얼마나 심각한지 확인

df -h /

Avail 열이 사용할 수 있는 여유 공간입니다. macOS 자체는 전체 볼륨 기준 대략 10% 미만이 되면 불안정해지기 시작합니다 — 이 선에 가깝다면, 아래 단계를 순서대로 밟으면 빠르게 벗어날 수 있습니다.

1단계: 휴지통을 제대로 비우기

“파일을 지웠는데도 여전히 공간이 없다”는 가장 흔한 이유입니다 — 파일을 삭제하면 휴지통으로 이동할 뿐이고, 실제로 비우기 전까지는 계속 사용 공간으로 잡힙니다.

# 셸에서 휴지통 비우기 — macOS 자체 "휴지통 비우기"가 큰 파일에
# 추가 확인을 요구할 때도 이 방법은 곧바로 처리됩니다
rm -rf ~/.Trash/*

공간 확보를 위해 큰 파일을 삭제했는데 그 후 휴지통을 비우지 않았다면, 이 단계 하나만으로 문제 전체가 해결되는 경우가 많습니다.

2단계: Downloads 폴더, 크기순 정렬

두 번째로 흔한 원인입니다 — 설치 프로그램, .dmg 파일, 한 번 쓰고 완전히 잊어버린 대용량 다운로드 파일들입니다.

du -sh ~/Downloads/* 2>/dev/null | sort -hr | head -20

.dmg와 .pkg 설치 파일이 전형적인 범인입니다 — 앱을 설치한 뒤에도 디스크 이미지는 그대로 남아 있고, 이미 설치된 앱과 완전히 중복됩니다. 이미 설치를 마친 소프트웨어의 설치 파일은 삭제해도 안전합니다.

3단계: Time Machine 로컬 스냅샷

노트북을 쓰고 있다면, macOS가 알지 못하는 사이에 공간을 차지하는 시간별 로컬 스냅샷이 매우 높은 확률로 존재합니다 — 1분도 안 되어 10~40GB를 되찾을 수 있습니다.

tmutil thinlocalsnapshots / 10000000000 4

무엇을 하는지, 언제 안전한지에 대한 전체 설명을 원한다면 참고하세요 — 짧게 말하면, 로컬 스냅샷이 유일한 백업이 아닌 이상 안전하며, 대부분의 사람들에게는 그렇지 않습니다.

4단계: ~/Library/Caches 전체

1~3단계로 충분하지 않았다면, 다음으로 회수량이 크고 위험이 낮은 방법입니다 — Apple 자신이 바로 이런 종류의 일회용 데이터를 위해 지정해 둔 위치입니다.

rm -rf ~/Library/Caches/*

이것이 왜 안전한지, 알아둘 가치가 있는 소수의 예외는 무엇인지에 대한 전체 설명은 이 폴더에 대한 전용 가이드에 있습니다 — 다만 긴급 상황이라면 더 읽지 않고 이 명령을 실행해도 안전합니다.

5단계: 개발자라면, 3대장

이 셋만으로도 iOS, Docker, Node 개발을 어느 정도 해온 컴퓨터에서 흔히 합쳐서 50~150GB를 차지합니다.

rm -rf ~/Library/Developer/Xcode/DerivedData/*
docker system prune -a --volumes    # Docker가 설치되어 실행 중일 때만
find ~ -name "node_modules" -type d -prune -exec du -sh {} \; 2>/dev/null | sort -hr | head -10

각각 자세한 내용을 다룬 전용 가이드가 있습니다. DerivedData, Docker, node_modules.

그래도 충분하지 않다면

이 시점에서 남은 공간은 거의 확실히 실제 파일 — Photos 라이브러리, Music, Documents — 안에 있을 가능성이 큽니다. 이 글은 그런 항목은 의도적으로 다루지 않습니다. 그건 캐시가 아니라 실제 데이터이고, 시간에 쫓기지 않는 상태에서 신중하게 결정해야 할 몫이기 때문입니다. 아니면 Apple의 잡동사니 범주인 “시스템 데이터”에 있을 수도 있는데, 이는 별도의 가이드에서 다루며, 긴급 5분짜리 점검보다 더 많은 조사가 필요합니다.

이 일이 계속 반복되는 이유

위 다섯 단계 중 어느 것도 한 번으로 끝나는 해결책이 아닙니다 — 모두 다시 채워집니다. 캐시는 앱을 쓸 때마다 재생성되고, DerivedData는 빌드하는 순간 다시 채워지며, Time Machine 스냅샷은 삭제한 순간부터 시간별로 다시 시작됩니다. 긴급 조치와 진짜 해결책은 서로 다릅니다. 이 글은 오늘 당장의 막힌 상황을 풀어주는 것이고, DevCruft는 다음 달에 이 글을 다시 찾을 필요가 없도록 개발 중인 개발자용 무료 Mac 앱입니다. 같은 다섯 범주를 “내보내기를 막는” 심각도에 이르기 훨씬 전부터 계속 보여주도록 설계하고 있습니다. 출시되면 알림을 받을 수 있도록 대기자 명단에 등록해 주세요.

이 작업을 위한 무료 앱을 만들고 있습니다.

이런 가이드에 나오는 모든 캐시를 찾아내고 각각이 차지하는 용량을 보여주는 DevCruft를 만들고 있습니다. 출시 소식을 받으려면 대기자 명단에 등록하세요.

출시 때 이메일 한 통 외에는 아무것도 보내지 않습니다. 언제든 명단에서 삭제해 달라고 요청하실 수 있습니다. 개인정보 처리방침