Mac에서 Homebrew 캐시와 이전 버전을 안전하게 정리하기
AskClean 팀 · 업데이트 2026-08-05
brew --cache로 Homebrew의 다운로드 캐시를 찾은 다음 변경 전에 brew cleanup -n을 실행하세요. 일반 brew cleanup은 오래된 잠금 파일, 기한이 지난 다운로드, 설치된 formula의 이전 버전을 삭제합니다. brew cleanup --prune=all은 나이와 관계없이 캐시를 넓게 비우므로 재다운로드와 이전 버전 복구 비용을 감수할 때만 사용하세요.

캐시·이전 keg·현재 도구 구분하기
Homebrew 다운로드 캐시에는 bottle, 소스 아카이브, cask 다운로드가 있으며 기본 위치는 ~/Library/Caches/Homebrew이지만 HOMEBREW_CACHE로 바꿀 수 있습니다. formula의 버전별 keg는 Cellar, cask는 Caskroom, 현재 사용되는 링크는 prefix에 있어 단순 캐시가 아닙니다. brew --cache, brew --cellar, brew --caskroom, brew --prefix로 실제 위치를 확인하고 추측한 /opt/homebrew 또는 /usr/local을 삭제하지 마세요.
드라이 런으로 삭제 후보 점검하기
brew cleanup -n은 파일을 바꾸지 않고 Homebrew가 삭제할 다운로드와 이전 formula 버전을 보여 줍니다. 크기만으로는 다시 받을 수 있는 bottle, 현재 keg, cask, 사용자 설정을 구분할 수 없습니다. brew list --versions와 대조해 롤백 절차나 경로가 고정된 스크립트가 이전 keg에 의존하지 않는지 확인하세요. 드라이 런은 백업이 아니며, 실제 정리 뒤 삭제된 항목이 macOS 휴지통에 남거나 같은 버전으로 계속 배포된다는 보장도 없습니다.
- brew --cache를 실행하고 du -sh "$(brew --cache)"로 현재 다운로드 캐시의 크기를 측정합니다.
- brew cleanup -n을 실행해 후보가 된 다운로드와 이전 formula 버전을 모두 확인합니다.
- brew list --versions로 필요한 현재 버전과 롤백 또는 고정 워크플로에 쓰는 이전 버전을 파악합니다.
- 일반 유지 관리에는 brew cleanup을 사용하고, 모든 캐시를 비울 때는 brew cleanup -n --prune=all을 확인한 뒤 brew cleanup --prune=all을 실행합니다.
- 캐시와 여유 공간을 다시 측정하고 brew cleanup -n과 중요한 Homebrew 설치 명령으로 결과를 검증합니다.
brew cleanup -n은 삭제 예정 항목을 보여 주는 미리보기일 뿐 백업이 아닙니다. Homebrew가 이전 keg나 캐시를 지운 뒤 같은 버전을 배포 원본에서 다시 받을 수 있거나 macOS 휴지통에서 복원할 수 있다고 보장할 수 없습니다.
목적에 맞는 cleanup만 실행하기
일반 유지 관리에는 brew cleanup을 사용해 Homebrew의 기본 보존 기간과 패키지 상태에 따라 정리합니다. 모든 캐시를 나이와 관계없이 비워야 한다면 먼저 brew cleanup -n --prune=all을 확인한 뒤 brew cleanup --prune=all을 실행하세요. 이후 설치, 재설치, 소스 빌드에는 bottle, 아카이브, 대용량 설치 파일을 다시 받아야 합니다. 이전 keg도 일반 cleanup 대상이 될 수 있으므로 이 작업을 완전히 되돌릴 수 있다고 생각하면 안 됩니다.
autoremove와 사용자 데이터는 별도로 판단하기
brew autoremove는 캐시 정리가 아니라 Homebrew가 더 이상 필요하지 않다고 판단한 의존 formula를 제거합니다. 별도 작업으로 검토할 때도 brew autoremove --dry-run부터 실행하고 스크립트, 빌드, 서비스가 직접 쓰는 도구가 없는지 확인하세요. Brewfile, dotfile, 인증서, 데이터베이스, 서비스 상태와 프로젝트는 사용자 데이터입니다. 정리 뒤에는 brew cleanup -n, du -sh "$(brew --cache)", brew list --versions를 다시 실행하고 중요한 Homebrew 설치 명령이 정상 동작하는지 확인하세요.
삭제 판단과 복구 비용
brew cleanup의 미리보기를 사용해 Homebrew 다운로드와 이전 formula를 정리하면서 현재 설치, 의존성, 설정을 보호하는 방법입니다.
| 항목·작업 | 확인 위치 | 삭제 또는 작업의 결과 |
|---|---|---|
| 캐시·이전 keg·현재 도구 구분하기 | brew --cache | Homebrew 다운로드 캐시에는 bottle, 소스 아카이브, cask 다운로드가 있으며 기본 위치는 ~/Library/Caches/Homebrew이지만 HOMEBREW_CACHE로 바꿀 수 있습니다. formula의 버전별 keg는 Cellar, cask는 Caskroom, 현재 사용되는 링크는 prefix에 있어 단순 캐시가 아닙니다. brew --cache, brew --cellar, brew --caskroom, brew --prefix로 실제 위치를 확인하고 추측한 /opt/homebrew 또는 /usr/local을 삭제하지 마세요. |
| 드라이 런으로 삭제 후보 점검하기 | brew cleanup -n | brew cleanup -n은 파일을 바꾸지 않고 Homebrew가 삭제할 다운로드와 이전 formula 버전을 보여 줍니다. 크기만으로는 다시 받을 수 있는 bottle, 현재 keg, cask, 사용자 설정을 구분할 수 없습니다. brew list --versions와 대조해 롤백 절차나 경로가 고정된 스크립트가 이전 keg에 의존하지 않는지 확인하세요. 드라이 런은 백업이 아니며, 실제 정리 뒤 삭제된 항목이 macOS 휴지통에 남거나 같은 버전으로 계속 배포된다는 보장도 없습니다. |
| 목적에 맞는 cleanup만 실행하기 | brew cleanup / brew cleanup --prune=all | 일반 유지 관리에는 brew cleanup을 사용해 Homebrew의 기본 보존 기간과 패키지 상태에 따라 정리합니다. 모든 캐시를 나이와 관계없이 비워야 한다면 먼저 brew cleanup -n --prune=all을 확인한 뒤 brew cleanup --prune=all을 실행하세요. 이후 설치, 재설치, 소스 빌드에는 bottle, 아카이브, 대용량 설치 파일을 다시 받아야 합니다. 이전 keg도 일반 cleanup 대상이 될 수 있으므로 이 작업을 완전히 되돌릴 수 있다고 생각하면 안 됩니다. |
| autoremove와 사용자 데이터는 별도로 판단하기 | brew autoremove --dry-run (캐시 정리와 별개) | brew autoremove는 캐시 정리가 아니라 Homebrew가 더 이상 필요하지 않다고 판단한 의존 formula를 제거합니다. 별도 작업으로 검토할 때도 brew autoremove --dry-run부터 실행하고 스크립트, 빌드, 서비스가 직접 쓰는 도구가 없는지 확인하세요. Brewfile, dotfile, 인증서, 데이터베이스, 서비스 상태와 프로젝트는 사용자 데이터입니다. 정리 뒤에는 brew cleanup -n, du -sh "$(brew --cache)", brew list --versions를 다시 실행하고 중요한 Homebrew 설치 명령이 정상 동작하는지 확인하세요. |
자주 묻는 질문
brew cleanup을 실행해도 안전한가요?
Homebrew가 제공하는 유지 관리 명령이지만 오래된 다운로드뿐 아니라 설치된 formula의 이전 버전도 삭제합니다. 반드시 brew cleanup -n을 먼저 확인하고 이전 keg를 사용하는 워크플로가 없는지 점검하세요.
brew cleanup --prune=all은 무엇을 삭제하나요?
캐시 나이와 관계없이 폭넓게 정리하며 일반 cleanup에 포함되는 오래된 잠금 파일과 이전 formula 처리도 함께 수행합니다. 실행 전에 brew cleanup -n --prune=all로 정확한 대상을 확인하세요.
brew autoremove도 이어서 실행해야 하나요?
자동으로 실행하지 마세요. 이는 캐시가 아니라 의존 formula를 제거하는 별도 작업입니다. brew autoremove --dry-run을 확인하고 직접 사용하는 도구가 포함되지 않았을 때만 검토하세요.
참고 자료