create-next-app 에러 해결 총정리: EACCES, ENOENT, 네트워크까지 (2026)

📌 이 글 요약
npx create-next-app 실행 중 만나는 EACCES, ENOENT, ETIMEDOUT, Node.js 버전 불일치 등 대표 에러를 유형별로 분류했습니다. 각 에러의 원인과 해결 명령어, 재발 방지법까지 한 번에 정리합니다. 에러 메시지 첫 줄만 확인하면 90%는 이 글 안에서 해결할 수 있습니다.

📑 목차 (클릭하여 열기)

 

🔍 create-next-app 에러 진단 순서

create-next-app 에러를 만났을 때 가장 먼저 해야 할 일은 에러 메시지를 읽는 것입니다. 터미널에 출력된 빨간 글씨 중 ERR!로 시작하는 첫 번째 줄이 핵심 원인입니다. 그 줄에 포함된 에러 코드(EACCES, ENOENT, ETIMEDOUT 등)를 확인하면 어떤 범주의 문제인지 바로 파악할 수 있습니다.

에러 코드를 찾았다면 아래 다섯 가지를 순서대로 확인하세요. 이 흐름만 따라가도 전체 에러의 약 80%는 원인을 특정할 수 있습니다.

  1. Node.js 설치 여부node --version을 입력했을 때 버전 번호가 출력되는지 확인합니다.
  2. Node.js 버전 — Next.js 14 이상은 Node.js 18.17.0 이상을 요구합니다. 버전이 낮으면 설치 도중 호환성 에러가 발생합니다.
  3. npx 정상 동작npx --version을 입력해 버전 번호가 나오는지 확인합니다.
  4. 인터넷 연결npm ping을 실행해 PONG 응답이 돌아오는지 확인합니다.
  5. 디스크 공간 — 최소 1GB 이상 여유 공간이 필요합니다.
💚 진단 순서를 지키는 게 중요한 이유
Node.js가 아예 설치되지 않은 상태에서 네트워크 설정을 만지면 시간만 낭비됩니다. 위 순서대로 가장 기본적인 조건부터 확인하면 불필요한 시행착오를 줄일 수 있습니다.

 

📖 에러 메시지에 자주 나오는 핵심 용어

에러 메시지를 읽으려면 자주 등장하는 용어의 의미를 알아야 합니다. 아래 표를 참고하세요.

용어 의미
EACCES 파일이나 디렉토리에 접근 권한이 없다는 에러 코드
ENOENT 지정한 파일이나 경로가 존재하지 않는다는 에러 코드 (Error NO ENTry)
ETIMEDOUT 서버 응답을 기다리다 시간이 초과되었다는 에러 코드
npx npm 패키지를 설치 없이 바로 실행해주는 도구. npm 5.2.0 이상에 포함
PATH 운영체제가 명령어 실행 파일을 찾는 디렉토리 목록
npm cache npm이 다운로드한 패키지를 임시 저장하는 공간
LTS Long Term Support — 안정적인 장기 지원 버전

 

🔐 EACCES 권한 에러 원인과 해결

EACCES는 npm이 전역 패키지를 설치하려는 디렉토리에 쓰기 권한이 없을 때 발생합니다. macOS와 Linux에서 sudo로 Node.js를 설치했거나, 기본 전역 경로가 /usr/local/lib으로 잡혀 있을 때 자주 나타납니다.

 

🍎 macOS/Linux에서 권한 에러 해결

npm의 전역 설치 디렉토리를 사용자 홈 폴더 아래로 변경하면 sudo 없이도 패키지를 설치할 수 있기 때문에, 아래 명령어로 경로를 바꿔주세요.

mkdir -p ~/.npm-global
npm config set prefix '~/.npm-global'

셸 설정 파일에 PATH를 추가합니다. zsh를 사용한다면 ~/.zshrc, bash라면 ~/.bashrc를 편집하면 됩니다.

echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.zshrc
source ~/.zshrc

npm config get prefix를 실행했을 때 /Users/사용자이름/.npm-global이 출력되면 정상적으로 변경된 것입니다.

⚠️ sudo로 실행하면 안 되는 이유
sudo npx create-next-app으로 실행하면 당장은 해결되지만, 생성된 파일의 소유자가 root로 설정됩니다. 이후 일반 사용자로 파일을 수정하거나 패키지를 추가할 때 다시 권한 에러가 발생하는 악순환에 빠집니다. 전역 디렉토리를 사용자 폴더로 변경하는 것이 근본적인 해결입니다.

 

🪟 Windows에서 EPERM/권한 에러 해결

Windows에서는 EACCES 대신 EPERM 에러가 나타나는 경우가 많습니다. 원인은 동일하게 권한 부족입니다.

  1. 바탕화면 또는 시작 메뉴에서 터미널(PowerShell) 아이콘을 마우스 오른쪽 버튼으로 클릭합니다.
  2. “관리자 권한으로 실행”을 선택합니다.
  3. 관리자 터미널에서 npx create-next-app@latest my-app을 다시 실행합니다.

관리자 권한으로도 해결되지 않으면 바이러스 백신이 npm의 파일 쓰기를 차단하고 있을 수 있습니다. Windows Defender 또는 서드파티 백신의 실시간 보호 기능을 일시적으로 끄고 다시 시도해보세요. 에러 없이 프로젝트 폴더가 생성되면 백신을 다시 켜면 됩니다.

 

📂 ENOENT 경로 에러 원인과 해결

ENOENT는 “Error NO ENTry”의 줄임말로, 지정한 파일이나 디렉토리를 찾을 수 없다는 의미입니다. create-next-app에서 이 에러가 나오는 대표적인 원인은 세 가지입니다.

 

🗑️ npm 캐시가 손상된 경우

이전 설치가 중간에 끊기면서 캐시 파일이 깨질 수 있기 때문에, 캐시를 강제로 정리하면 대부분 해결됩니다.

npm cache clean --force

정리 후 npx create-next-app@latest my-app을 다시 실행하세요. 캐시 관련 에러 메시지가 사라지고 프로젝트 생성 질문이 나오면 정상 복구된 것입니다.

 

🔤 프로젝트 경로에 한글이나 특수문자가 포함된 경우

프로젝트를 생성할 폴더 경로에 한글, 공백, 특수문자가 포함되면 npm이 경로를 올바르게 인식하지 못합니다. 예를 들어 C:\Users\홍길동\바탕화면\내프로젝트같은 경로에서는 ENOENT가 발생할 가능성이 높습니다.

# 문제가 되는 경로
cd C:\Users\홍길동\바탕 화면\my app

# 안전한 경로
cd C:\dev\my-app

영문으로만 구성된 짧은 경로(예: C:\dev 또는 ~/projects)에서 실행하세요. 경로를 변경한 뒤 에러 없이 프로젝트 파일이 생성되면 경로 문제가 원인이었던 것입니다.

 

❓ npx 자체가 없다는 에러

npx: command not found가 나오면 npm 버전이 너무 오래됐거나 Node.js 설치가 불완전한 상태입니다. npm 5.2.0 이상이면 npx가 자동으로 포함되므로, Node.js를 최신 LTS로 재설치하는 것이 가장 확실한 방법입니다.

node --version
npm --version

npm이 5.2.0 미만이거나 명령어 자체가 인식되지 않으면 Node.js 공식 사이트에서 LTS 버전을 다시 설치하세요. 설치 후 터미널을 새로 열고 npx --version이 출력되면 정상입니다.

 

🌐 네트워크 에러 ETIMEDOUT, EAI_AGAIN 해결

create-next-app은 npm 레지스트리에서 패키지를 다운로드하므로 인터넷 연결이 필수입니다. 네트워크 에러는 ETIMEDOUT, ECONNREFUSED, EAI_AGAIN 같은 코드로 나타납니다.

 

🔒 프록시 또는 VPN 환경에서 발생하는 에러

회사나 학교 네트워크에서 프록시를 사용하는 경우 npm이 외부 레지스트리에 접근하지 못하기 때문에, npm에 프록시 설정을 추가해야 합니다.

npm config set proxy http://프록시주소:포트
npm config set https-proxy http://프록시주소:포트

VPN을 사용 중이라면 일시적으로 VPN을 끄고 다시 시도해보세요. 프록시 설정이 맞는데도 실패하면 네트워크 관리자에게 registry.npmjs.org 도메인이 허용 목록에 있는지 확인하세요.

 

📡 npm 레지스트리가 변경된 경우

기본 레지스트리 URL이 변경돼 있으면 패키지를 찾지 못할 수 있습니다. 현재 설정을 확인하고, 기본값과 다르면 복원하세요.

npm config get registry
# https://registry.npmjs.org/ 가 아니라면 아래 명령으로 복원
npm config set registry https://registry.npmjs.org/

레지스트리 복원 후 npm ping을 실행해서 PONG 응답이 돌아오면 연결이 정상입니다.

 

🌏 DNS 조회 실패 (EAI_AGAIN)

EAI_AGAIN 에러는 DNS 서버가 도메인 이름을 IP 주소로 변환하지 못했다는 의미입니다. DNS를 Google Public DNS 또는 Cloudflare DNS로 변경하면 해결되는 경우가 많습니다.

  • Windows: 네트워크 설정 → 어댑터 속성 → IPv4 → DNS 서버를 8.8.8.8, 8.8.4.4로 변경
  • macOS: 시스템 설정 → 네트워크 → Wi-Fi → 세부사항 → DNS 탭에서 8.8.8.8 추가

DNS 변경 후에는 터미널을 새로 열고 다시 시도해야 합니다. npm ping이 정상 응답하면 DNS 문제가 해결된 것입니다.

 

📦 Node.js 버전 불일치 에러 해결

Next.js는 버전마다 요구하는 최소 Node.js 버전이 다릅니다. 버전이 맞지 않으면 설치 도중 호환성 에러가 발생하기 때문에, 먼저 현재 버전을 확인해야 합니다.

Next.js 버전 최소 Node.js 버전
Next.js 13 16.14.0
Next.js 14 18.17.0
Next.js 15 18.18.0
node --version

출력된 버전이 v16이나 v17이라면 업데이트가 필요합니다. 가장 간단한 방법은 Node.js 공식 사이트에서 최신 LTS를 다시 설치하는 것입니다. 기존 버전을 삭제하지 않아도 덮어쓰기로 설치됩니다.

nvm(Node Version Manager)을 사용하고 있다면 아래 명령으로 전환할 수 있습니다.

nvm install --lts
nvm use --lts
node --version

버전 번호가 18.17.0 이상으로 표시되면 npx create-next-app@latest my-app을 다시 실행하세요. 호환성 에러 없이 프로젝트 생성 질문이 나타나면 버전 문제가 해결된 것입니다.

📌 nvm을 처음 들어보신다면
nvm은 여러 버전의 Node.js를 설치하고 프로젝트마다 전환할 수 있는 도구입니다. 바이브코딩 Node.js 설치 가이드에서 nvm 설치 방법을 확인할 수 있습니다.

 

🛤️ PATH 환경변수 문제 해결

Node.js를 설치했는데도 node, npm, npx 명령어가 인식되지 않으면 PATH 설정에 문제가 있는 것입니다. PATH는 운영체제가 명령어의 실행 파일을 찾는 디렉토리 목록이기 때문에, 여기에 Node.js 경로가 빠져 있으면 명령어를 찾을 수 없습니다.

 

🪟 Windows에서 PATH 확인하기

  1. Windows 검색에서 “환경 변수”를 입력하고 “시스템 환경 변수 편집”을 엽니다.
  2. “환경 변수” 버튼을 클릭합니다.
  3. “사용자 변수” 또는 “시스템 변수”에서 Path를 찾아 더블 클릭합니다.
  4. 목록에 Node.js 설치 경로(기본값: C:\Program Files\nodejs\)가 있는지 확인합니다.
  5. 없으면 “새로 만들기”를 클릭하고 C:\Program Files\nodejs\를 추가합니다.

변경 후에는 열려 있는 터미널을 모두 닫고 새로 열어야 적용됩니다. node --version이 정상 출력되면 PATH가 올바르게 설정된 것입니다.

 

🍎 macOS에서 PATH 확인하기

echo $PATH
which node

which node의 출력이 비어 있으면 PATH에 Node.js 경로가 없는 것입니다. nvm을 사용한다면 셸 설정 파일(~/.zshrc)에 초기화 코드가 있는지 확인하세요.

# ~/.zshrc 에 아래 내용이 있어야 합니다
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

설정을 추가한 뒤 source ~/.zshrc를 실행하고, node --version이 정상 출력되면 해결된 것입니다.

 

✅ 에러 해결 후 점검 목록

에러를 해결한 뒤 아래 항목을 순서대로 확인하세요. 모든 항목이 통과하면 개발 환경이 올바르게 구성된 것입니다.

  • node --version → v18.17.0 이상 출력
  • npm --version → 9.0.0 이상 출력
  • npx --version → 버전 번호 출력
  • npm pingPONG 응답 확인
  • npx create-next-app@latest my-test-app → 프로젝트 생성 성공
  • cd my-test-app && npm run dev → 브라우저에서 localhost:3000 접속 가능
💚 테스트 프로젝트로 검증하기
본격적인 프로젝트를 시작하기 전에 my-test-app이라는 이름으로 테스트 프로젝트를 먼저 만들어보세요. 정상 동작을 확인한 뒤 삭제하면 됩니다. 이렇게 하면 실제 프로젝트에서 에러를 만날 확률이 크게 줄어듭니다.

 

🔄 전부 시도했는데도 안 될 때

위의 모든 방법을 시도했는데도 에러가 계속 발생한다면 아래 순서로 진행하세요. 환경을 완전히 초기화하는 접근입니다.

 

🧹 Node.js 완전 삭제 후 재설치

기존 Node.js를 완전히 삭제하고 공식 사이트에서 최신 LTS를 새로 설치합니다. Windows에서는 “프로그램 추가/제거”에서 Node.js를 삭제하세요. macOS에서 Homebrew를 사용했다면 brew uninstall node로 삭제합니다.

 

🗂️ npm 캐시 수동 삭제

npm cache clean --force를 실행한 뒤, 캐시 폴더를 수동으로 삭제하면 더 확실합니다.

  • Windows: %AppData%\npm-cache 폴더 삭제
  • macOS/Linux: ~/.npm 폴더 삭제

 

🔀 다른 패키지 매니저로 프로젝트 생성

npx 자체에 문제가 있을 수 있으므로, pnpm이나 yarn으로 동일한 프로젝트를 생성할 수 있습니다.

# pnpm 사용
pnpm create next-app my-app

# yarn 사용
yarn create next-app my-app

패키지 매니저를 바꿔서 성공했다면, 이후 프로젝트에서도 해당 패키지 매니저를 일관되게 사용하세요. 프로젝트마다 다른 패키지 매니저를 섞어 쓰면 lock 파일 충돌이 발생할 수 있습니다.

 

💻 운영체제 버전 확인

Windows 10 이전 버전이나 macOS 11(Big Sur) 이하에서는 최신 Node.js가 정상 동작하지 않을 수 있습니다. 운영체제 업데이트가 가능하다면 먼저 업데이트를 진행하고 다시 시도하세요.

 

🪤 자주 하는 실수와 예방법

아래는 create-next-app 에러를 경험한 분들이 반복적으로 빠지는 함정입니다. 미리 알아두면 시간을 아낄 수 있습니다.

실수 예방법
sudo npx create-next-app으로 실행 권한 문제가 연쇄적으로 발생합니다. npm 전역 경로를 사용자 디렉토리로 변경하세요.
한글 경로에서 프로젝트 생성 영문 경로(예: C:\dev 또는 ~/projects)를 사용하세요.
여러 Node.js 버전이 충돌 nvm으로 버전을 관리하고, 프로젝트마다 .nvmrc 파일을 만들어 두세요.
에러 메시지를 읽지 않고 바로 재실행 에러 로그의 첫 번째 ERR! 줄이 핵심 원인입니다. 해당 코드를 이 글에서 검색하세요.
환경변수 변경 후 같은 터미널에서 재실행 PATH나 환경변수를 변경하면 반드시 터미널을 새로 열어야 적용됩니다.
⚠️ 실무에서 흔한 실수 패턴
“에러가 나면 일단 sudo를 붙여본다”는 습관은 가장 위험합니다. root 권한으로 생성된 파일은 이후 모든 작업에서 권한 충돌을 일으키고, 결국 프로젝트 폴더 전체를 삭제하고 다시 만들어야 하는 상황이 됩니다. 권한 에러가 나면 sudo 대신 위의 npm 전역 경로 변경 방법을 따르세요.

프로젝트 생성 단계 말고 다른 곳에서 막히면, 원인을 5분 안에 좁히는 바이브코딩 디버깅 5단계를 먼저 돌려보세요.

 

📋 면책조항

이 글의 내용은 2026년 4월 기준, Node.js 22 LTS 및 Next.js 15 환경에서 작성되었습니다. Node.js, npm, Next.js의 버전 업데이트에 따라 에러 메시지나 해결 방법이 달라질 수 있습니다. 문제가 지속되면 각 도구의 공식 문서를 참고해주세요.

여기까지 따라오셨다면 대부분의 create-next-app 에러를 스스로 진단하고 해결할 수 있는 상태입니다. 개발환경 세팅에서 막히는 부분이 있다면 아래 FAQ도 확인해보세요.

 

❓ FAQ

질문을 누르면 답변이 펼쳐집니다.

Q. npx create-next-app 대신 npm create-next-app을 써도 되나요?
npm create next-app도 동일한 동작을 합니다. npm 7 이상에서는 npm createnpm init의 별칭으로 동작하며, 내부적으로 create-next-app 패키지를 실행합니다. 결과물에는 차이가 없으므로 편한 쪽을 사용하면 됩니다.
Q. create-next-app 실행 중 “TypeScript를 사용하시겠습니까?” 질문 없이 바로 에러가 납니다.
프로젝트 생성 질문이 나오기 전에 에러가 발생한다면, 패키지 다운로드 단계에서 실패한 것입니다. 네트워크 연결을 확인하고 npm cache clean --force를 실행한 뒤 다시 시도하세요. npm ping에서 PONG이 돌아오는지도 함께 확인해보세요.
Q. EACCES 에러가 나는데 sudo를 쓰면 안 되나요?
sudo로 실행하면 당장은 해결되지만, 생성된 파일의 소유자가 root로 설정됩니다. 이후 일반 사용자로 파일을 수정하거나 패키지를 추가할 때 다시 권한 에러가 발생합니다. npm 전역 디렉토리를 사용자 폴더로 변경하는 방법이 근본적인 해결입니다.
Q. Windows에서 PowerShell과 명령 프롬프트 중 어떤 것을 써야 하나요?
둘 다 사용 가능하지만, PowerShell이 더 최신이고 기능이 많으므로 PowerShell을 권장합니다. Windows 11에서는 기본 터미널이 Windows Terminal이며, PowerShell 탭이 기본으로 열립니다. 터미널 사용법 가이드에서 자세한 내용을 확인할 수 있습니다.
Q. create-next-app 실행 시 “ERR! code E404” 에러가 나옵니다.
npm 레지스트리에서 패키지를 찾지 못했다는 의미입니다. npm config get registry로 레지스트리 URL을 확인하고, https://registry.npmjs.org/가 아니면 npm config set registry https://registry.npmjs.org/로 복원하세요.
Q. Node.js를 여러 버전 설치해도 문제없나요?
nvm을 사용하면 여러 버전을 설치하고 프로젝트마다 전환할 수 있습니다. 단, nvm 없이 Node.js를 여러 번 설치하면 PATH가 꼬일 수 있으므로 반드시 nvm을 통해 관리하세요.
Q. create-next-app 실행이 중간에 멈추면 어떻게 하나요?
Ctrl+C로 강제 종료한 뒤, 생성 중이던 폴더를 삭제하고 다시 실행하세요. 폴더가 남아 있으면 “이미 존재하는 디렉토리” 에러가 추가로 발생할 수 있습니다. rm -rf my-app(macOS/Linux) 또는 rmdir /s my-app(Windows)으로 삭제할 수 있습니다.
Q. –use-pnpm 옵션을 추가하면 에러가 나는 이유는 뭔가요?
해당 패키지 매니저가 시스템에 설치되어 있어야 합니다. --use-pnpm을 쓰려면 먼저 npm install -g pnpm으로 pnpm을 설치하세요. 설치 후 터미널을 새로 열고 pnpm --version이 출력되는지 확인한 다음 다시 시도하면 됩니다.
Q. macOS에서 Homebrew Node.js와 공식 설치 파일이 충돌하나요?
충돌할 수 있습니다. 한 가지 방법으로만 설치하는 것이 좋습니다. 이미 둘 다 설치됐다면 which node로 어느 Node.js가 사용되고 있는지 확인하고, 사용하지 않는 쪽을 삭제하세요. Homebrew 설치분은 brew uninstall node로, 공식 패키지는 /usr/local/bin/node를 삭제하면 됩니다.
Q. create-next-app에서 –ts, –tailwind 같은 옵션을 미리 지정할 수 있나요?
가능합니다. npx create-next-app@latest my-app --ts --tailwind --app --src-dir처럼 옵션을 붙이면 대화형 질문 없이 바로 프로젝트가 생성됩니다. 어떤 옵션이 있는지는 npx create-next-app --help로 확인할 수 있습니다.

🚀 바이브코딩, 직접 해보고 싶다면?
Git, Node.js, VS Code 설치부터 첫 배포까지 — 복사 붙여넣기만으로 끝.
VibeStart에서 무료로 시작하기 →

 

🔗 관련 글

 

📑 참고 자료

위로 스크롤