| 항목 | 내용 |
|---|---|
| 무엇인가 | node_modules 폴더 |
| 분류 | 개발 폴더 |
| 전형적인 크기 | 프로젝트당 200MB~2GB |
| 안전도 | 지워도 됩니다 |
| 지운 뒤 다시 생기나 | 생깁니다 |
| 첫 번째 자리 | 프로젝트 폴더\node_modules |
| 기준 환경 | USB 메모리 |
자바스크립트 프로젝트가 쓰는 외부 라이브러리를 통째로 받아 둔 폴더입니다. 프로젝트마다 하나씩 생기고, 서로 공유하지 않습니다.
라이브러리 하나가 또 다른 라이브러리를 부르는 구조라, 직접 설치한 게 열 개여도 실제로는 수백 개가 들어옵니다. 프로젝트 하나에 수십만 개 파일이 흔합니다.
node_modules의 자리는 한 곳입니다. 탐색기 주소창에 아래 경로를 그대로 붙여 넣으면 바로 열립니다.
경로에 들어 있는 %LOCALAPPDATA% 같은 부분은 탐색기 주소창에서 알아서 풀립니다. 직접 계정 이름을 찾아 들어갈 필요는 없습니다.
프로젝트 폴더\node_modules
node_modules는 지워도 됩니다. 다시 생기고, 잃는 게 거의 없습니다.
package.json 과 lock 파일이 있으면 npm install 한 줄로 그대로 돌아옵니다. 소스 코드가 아니라 받아 온 것이라 잃을 게 없습니다.
지운 뒤에도 프로그램을 다시 쓰면 같은 자리에 다시 생깁니다. 그래서 "한 번 지우면 끝"이 아니라 "얼마나 자주 지울 것인가"의 문제입니다.
다시 설치하는 데 드는 시간(1~5분)과 인터넷 트래픽뿐입니다.
같이 지우면 안 되는 것이 있습니다. lock 파일(package-lock.json 등)은 지우지 마세요. 그게 없으면 다시 설치할 때 버전이 달라져 프로젝트가 깨질 수 있습니다.
아래 순서대로 하면 됩니다. 중간에 프로그램이 켜져 있으면 일부 파일이 "사용 중"으로 남으니, 먼저 닫고 시작하세요.
pnpm 으로 옮기면 라이브러리를 한 곳에 두고 프로젝트마다 링크만 겁니다. 프로젝트가 열 개면 용량이 10분의 1 수준으로 줍니다.
USB 메모리는 작고 느립니다. 여기에 캐시나 작업 폴더를 두면 프로그램이 눈에 띄게 느려지고, 갑자기 뽑으면 파일이 깨집니다.
용량 확보용 임시 이동처로는 괜찮지만 상시 저장소로는 쓰지 마세요. 옮겼다면 되도록 빨리 제대로 된 디스크로 다시 옮기세요.
이 환경에서 남겨 둘 여유 용량은 최소 1GB 정도로 잡으세요. FAT32로 포맷돼 있으면 4GB 넘는 파일은 아예 복사되지 않습니다.
PowerShell 에서 Get-ChildItem -Filter node_modules -Recurse -Directory 로 목록을 뽑고, 각 폴더 크기를 더하면 됩니다. 프로젝트가 많을수록 합계가 놀랍습니다.
숫자를 한 번 적어 두세요. 정리한 뒤 다시 재서 비교해야 효과를 알 수 있고, 다음 달에 같은 자리가 또 커졌다면 그건 지울 게 아니라 설정을 바꿔야 하는 항목입니다.
테라클린은 이 문서에서 다룬 자리를 찾아 크기와 함께 목록으로 보여주고, 지워도 되는 이유와 안 되는 이유를 항목마다 적습니다. 지우기 전에 목록을 먼저 봅니다. 파일은 기기를 떠나지 않습니다.
Windows용 무료 다운로드 브라우저에서 체험 →크기부터 재세요. PowerShell 에서 Get-ChildItem -Filter node_modules -Recurse -Directory 로 목록을 뽑고, 각 폴더 크기를 더하면 됩니다. 프로젝트가 많을수록 합계가 놀랍습니다. 숫자를 보고 나서 지울지 말지 정하면 됩니다.
망가지지 않습니다. 다시 설치하는 데 드는 시간(1~5분)과 인터넷 트래픽뿐입니다. 그 이상은 없습니다.
휴지통을 비웠는지 먼저 보세요. 그래도 그대로면 지운 파일을 아직 잡고 있는 프로그램이 있다는 뜻입니다. 재부팅 한 번이면 대개 반영됩니다. 재부팅 뒤에도 같다면 그 자리를 차지하는 건 node_modules가 아니라 다른 것입니다.
이 문서는 node_modules 폴더에 대한 한눈에 정리 문서입니다(USB 메모리 기준). 경로와 명령어는 확인한 것만 적었고, 확인하지 못한 항목은 비워 두었습니다. 지우기 전에 반드시 크기를 먼저 재고, 되돌릴 수 없는 항목은 사본을 두세요.