WTMemory 가이드

맥에서 npm, Yarn, pnpm 캐시 삭제하는 방법

2026년 10월 13일 업데이트

맥에서 npm 캐시를 지우려면 npm cache clean --force를 실행하세요. pnpm은 pnpm store prune, Yarn 1은 yarn cache clean, Yarn 2 이상은 yarn cache clean --all이에요. 모두 다운로드 캐시라서 지워도 안전해요. 대가는 다음 설치 때 패키지를 다시 내려받는 것뿐이에요.

무료로 조회할 수 있는 macOS 메뉴 막대 앱 WTMemory로, 지우기 전에 이 캐시들의 용량을 나란히 비교해 볼 수 있어요. 자세한 내용은 끝부분에 있고, 아래 명령들은 터미널만 있으면 돼요.

패키지 캐시가 용량을 얼마나 쓰고 있나요?

어느 캐시가 정리할 가치가 있는지 알 수 있도록 먼저 재 보세요. macOS 기본 위치는 다음과 같아요.

du -sh ~/.npm ~/Library/pnpm/store ~/Library/Caches/Yarn ~/.yarn/berry/cache \
  ~/.bun/install/cache ~/.cargo/registry ~/.cargo/git ~/.gradle/caches 2>/dev/null

설정이나 환경 변수로 위치를 바꿨다면 도구에 직접 물어보세요.

도구macOS 기본 위치도구에 물어보기비우기
npm~/.npm/_cacachenpm config get cachenpm cache clean --force
pnpm~/Library/pnpm/storepnpm store pathpnpm store prune
Yarn 1~/Library/Caches/Yarnyarn cache diryarn cache clean
Yarn 2+~/.yarn/berry/cacheyarn config get cacheFolderyarn cache clean --all
Bun~/.bun/install/cachebun pm cachebun pm cache rm
Cargo~/.cargo/registry, ~/.cargo/gitecho $CARGO_HOMEregistry/cache와 registry/src 삭제
Gradle~/.gradle/cachesecho $GRADLE_USER_HOME데몬 중지 후 caches 삭제

맥에서 npm 캐시는 어떻게 지우나요?

npm cache clean --force

npm은 내려받은 tarball을 ~/.npm/_cacache 아래 콘텐츠 주소 방식 저장소에 보관해요. npm 5부터 캐시가 스스로 무결성을 검사하기 때문에 --force 없이는 정리를 거부해요. 손상이 의심될 뿐이라면 npm cache verify가 필요 없는 데이터를 가비지 컬렉션하고 나머지를 검사해 줘요. 전부 버리지 않아도 돼요.

~/.npm 안의 이웃 폴더 두 개도 지워도 안전해요. npx로 가져온 패키지가 있는 _npx와 디버그 로그가 있는 _logs예요. 캐시를 지워도 프로젝트나 전역 설치에는 영향이 없어요.

pnpm store는 어떻게 비우나요?

pnpm store prune

pnpm은 모든 패키지 버전을 전역 store에 한 벌씩 보관하고, 여기서 각 프로젝트의 node_modules로 파일을 하드 링크해요. prune은 어떤 프로젝트도 더 이상 참조하지 않는 패키지를 지워요. 설치가 진행 중일 때는 실행하지 마세요. 정확한 폴더는 pnpm store path로 확인하세요. store 디렉터리 이름에는 pnpm 메이저 릴리스마다 바뀌는 버전(예: v10)이 들어가서, 업그레이드 후 예전 버전 폴더가 남아 있을 수 있어요.

하드 링크 때문에 store와 프로젝트에 각각 du를 돌리면 같은 바이트가 두 번 계산되고, 프로젝트가 아직 그 파일들을 링크하고 있는 동안에는 store 전체를 지워도 확보되는 공간이 적어요. 먼저 prune하고, 그다음 더 이상 작업하지 않는 프로젝트의 node_modules를 지우세요.

Yarn 캐시는 어떻게 지우나요?

yarn --version으로 버전을 확인하세요. Yarn 1(classic)은 ~/Library/Caches/Yarn을 써요.

yarn cache clean

Yarn 2 이상(Berry)은 기본적으로 ~/.yarn/berry/cache에 전역 캐시를 두고, 일부 리포지토리는 대신 프로젝트별 .yarn/cache를 써요. 전역 캐시와 현재 프로젝트 캐시를 모두 비우려면:

yarn cache clean --all

리포지토리가 zero-install을 위해 .yarn/cache를 git에 커밋했다면 손으로 지우지 마세요. 리포지토리의 일부예요.

Bun 캐시는 어떻게 지우나요?

bun pm cache rm

Bun은 BUN_INSTALL_CACHE_DIR로 따로 지정하지 않는 한 내려받은 패키지를 ~/.bun/install/cache에 저장해요. 경로는 bun pm cache로 출력할 수 있어요. ~/.bun/bin은 bun 실행 파일 자체가 있는 곳이니 건드리지 마세요.

Cargo 캐시는 어떻게 지우나요?

Cargo는 내려받은 crate를 압축 아카이브로 ~/.cargo/registry/cache에, 압축을 푼 소스를 ~/.cargo/registry/src에 보관해요. 둘 다 지워도 안전하고, 다음 빌드 때 Cargo가 다시 가져와요.

rm -rf ~/.cargo/registry/cache ~/.cargo/registry/src

git 의존성이 들어 있는 ~/.cargo/git/checkouts도 지워도 돼요. ~/.cargo/bin(cargo install로 설치한 도구)과 ~/.cargo/credentials.toml은 지우지 마세요. Rust에서 더 큰 공간은 보통 프로젝트마다 있는 target 폴더에서 나오고, 프로젝트 안에서 cargo clean으로 비울 수 있어요.

Gradle 캐시는 어떻게 지우나요?

Gradle 데몬이 캐시 파일을 열어 두고 있으니 먼저 데몬을 멈추세요.

./gradlew --stop
rm -rf ~/.gradle/caches

다음 빌드 때 의존성을 다시 내려받고 transform을 다시 빌드하는데, Android 프로젝트라면 꽤 오래 걸릴 수 있어요. ~/.gradle/wrapper/dists에는 지금까지 쓴 wrapper 버전마다 Gradle 배포판 전체가 들어 있으니, 더 이상 빌드에 쓰지 않는 예전 버전은 지우세요. 서명과 리포지토리 자격 증명이 들어 있는 경우가 많은 ~/.gradle/gradle.properties는 남겨 두세요.

용량을 차지하는 node_modules 폴더는 어떻게 찾나요?

프로젝트가 많은 맥에서는 보통 node_modules 폴더가 전역 캐시보다 무거워요. ~/code를 프로젝트를 두는 위치로 바꿔서 용량과 함께 나열해 보세요.

find ~/code -name node_modules -type d -prune -exec du -sh {} + | sort -h

-prune은 find가 각 node_modules 안으로 내려가지 않게 해서, 중첩된 의존성 폴더가 따로 나열되지 않고 스캔도 빨라요. 지금 작업하지 않는 프로젝트의 것을 지우세요.

rm -rf ~/code/old-project/node_modules

나중에 프로젝트의 lockfile로 npm ci, pnpm install --frozen-lockfile, yarn install --immutable을 실행하면 정확히 같은 트리가 복원돼요. 골라서 지울 수 있는 대화형 목록이 필요하면 npx npkill이 폴더를 스캔해 선택한 node_modules를 지워 줘요.

지우면 안 되는 것은?

캐시를 지우면 맥이 빨라지나요?

아니요. 디스크 공간이 확보되고 가끔 생기는 손상된 다운로드가 고쳐질 뿐이에요. 캐시가 다시 찰 때까지 다음 설치나 빌드는 더 느리고, 오프라인 설치도 안 돼요.

메뉴 막대에서 개발자 캐시 검토하기

WTMemory는 npm, pnpm, Yarn, Bun, Cargo, Gradle 캐시를 포함한 지원되는 개발자 캐시 위치를 스캔하고, 각 항목을 설명과 예상 용량과 함께 보여 줘요. 먼저 Finder에서 어떤 항목이든 볼 수 있어요. 조회는 무료예요.

Pro에서는 캐시를 하나씩 고르고, 어떤 영향이 있는지 검토한 다음, WTMemory가 휴지통으로 옮겨요. 아무것도 자동으로 선택되지 않고 아무것도 영구 삭제되지 않아요. 휴지통을 비울지는 여러분이 결정해요. 정리 대상은 이 캐시들뿐이에요. 소스 코드는 제외되고, node_modules를 포함한 프로젝트도 정리 대상에서 빠지니, 그런 건 위의 find 명령을 쓰세요. 먼저 실행 중인 패키지 매니저와 빌드를 종료하세요. WTMemory는 Apple Silicon과 Intel의 macOS 12 이상에서 돌아가고, Pro는 $9 USD 일회성 결제로 맥 3대까지 쓸 수 있으며 7일 체험판이 있어요.

WTMemory 다운로드

자주 묻는 질문

npm 캐시를 지워도 안전한가요?

네. npm 캐시는 내려받은 패키지를 콘텐츠 주소 방식으로 저장한 사본이에요. 지워도 설치된 프로젝트가 깨지는 일은 없어요. 다음 설치 때 패키지를 다시 내려받고, 캐시가 다시 찰 때까지 오프라인 설치가 안 될 뿐이에요.

npm cache clean에 왜 --force가 필요한가요?

npm 5부터 캐시가 스스로 무결성을 검사하고 손상을 복구하기 때문에, npm은 캐시 삭제를 불필요한 일로 보고 --force로 확인을 요구해요. 더 순한 방법은 npm cache verify예요.

pnpm store를 지우면 프로젝트가 깨지나요?

pnpm store prune은 어떤 프로젝트도 참조하지 않는 패키지만 지우므로 안전해요. store 전체를 지워도 파일이 하드 링크라서 기존 node_modules가 손상되지는 않지만, 다음 pnpm install 때 전부 다시 내려받아야 해요.

캐시를 지우면 맥이 빨라지나요?

아니요. 디스크 공간이 확보될 뿐이에요. 캐시가 다시 찰 때까지 다음 설치와 빌드는 더 느려요.

보통 캐시와 node_modules 중 어느 쪽이 더 큰가요?

프로젝트가 많은 맥에서는 프로젝트 안의 node_modules 폴더와 Rust target 폴더를 합치면 보통 전역 캐시보다 커요. find와 du로 나열해 보세요.

관련 가이드

WTMemory 전체 가이드와 라이선스 도움말