본문 바로가기

Dev Stories/데브옵스(DevOps)

[macOS] 시스템 데이터 용량 줄이기

디스크 용량이 부족하다는 메시지를 자주 받았다. 그때마다 외장하드로 프로젝트 파일을 백업했다. 프로젝트 파일, 문서, 코드 등 직접 생산하는 파일은 문서 아주 일부이다. 그런데 이제 보니 문서를 백업하는 것과 응용 프로그램을 지우는 것으로는 부족하다는 것을 눈으로 확인했다. 바로 SSD 500GB 디스크 용량의 반을 차지하고 있는 것이 '시스템 데이터'다.

시스템 데이터 정리하기 전

시스템 데이터에는 각종 로그 파일, 개발 캐시(gradle, m2, npm), 도커(이미지, 컨테이너, 볼륨), iOS시뮬레이터 등 개발 관련 리소스가 포함되어 있다. 

사전 준비로 현재 디스크 사용량을 확인한 후 중요한 데이터가 없는지 확인하나 후 백업한다. 디스크 용량을 차지하고 있는 항목을 찾고 정리하는 작업을 최소 1회 실행하면 디스크 공간 부족하다는 알림이나 소프트웨어 업데이트가 안 되는 문제를 예방할 수 있다. 디스크 용량의 대부분을 차지하고 있으며 사용하다 보면 점점 늘어나는 '시스템 데이터'는 캐시, 도커, 시뮬레이터 등 개발 관련 리소스가 용량을 차지하고 있을 가능성이 크기 때문에 다시 다운로드하는 일이 생기더라도 정리를 하는 것이 필요하다.

정리

현재 디스크 사용량 확인

df -h

Time Machine 로컬 스냅샷 정리

타임머신 기능을 사용한다면 당연히 데이터 백업 공간을 사용할 수밖에 없다. 스냅샷이나 OS업데이트를 정리하여 용량을 확보할 수 있다.

로컬 스냅샷 목록 확인:

# 현재 스냅샷 목록 확인
tmutil listlocalsnapshots /

스냅샷 정리:

# 루트 볼륨에서 최소 100GB 만큼 로컬 스냅샷을 정리
sudo tmutil thinlocalsnapshots / 100000000000 4

로그 및 캐시 정리

Finder → 이동 → 폴더로 이동 → 입력

사용자 캐시 및 시스템 캐시 정리: 

~/Library/Caches
/Library/Caches

로그파일 정리:

~/Library/Logs
/Library/Logs

Xcode 정리 (iOS/macOS 개발자)

전체 용량 확인

du -sh ~/Library/Developer/Xcode

DerivedData 삭제 (안전)

rm -rf ~/Library/Developer/Xcode/DerivedData

Device Support

rm -rf ~/Library/Developer/Xcode/iOS DeviceSupport

시뮬레이터 캐시 정리

rm -rf ~/Library/Developer/CoreSimulator/Caches

Docker 정리

사용량 확인

docker system df

미사용 이미지/컨테이너/볼륨 정리

docker system prune -a

개발 캐시 정리

Gradle

du -sh ~/.gradle/caches

rm -rf ~/.gradle/caches

Maven

du -sh ~/.m2/repository

rm -rf ~/.m2/repository

npm

du -sh ~/.npm

rm -rf ~/.npm

Dart / Flutter

du -sh ~/.pub-cache

rm -rf ~/.pub-cache

Homebrew 정리

% brew cleanup
...
==> This operation has freed approximately 117MB of disk space.

% brew autoremove

 

결과

86GB 정도 데이터 공간을 확보했다.

시스템 데이터 정리한 후

 

반응형