npm install 에러

Siwoo Pak·2021년 6월 9일
0

Node.js

목록 보기
1/5
post-thumbnail

맥북님의 정신이 가출해서 백업된걸로 복원하고
세팅 새로 해서 기존에 했던 코딩들 테스트 해볼려고
npm run start 했더니 에러가 두둥
Error: Cannot find module '../scripts/start'
그래서 npm install 했더니 거기서도 에러가 두둥
npm WARN saveError EACCES: permission denied
그래서 sudo 권한 줘보고 인스톨!
$ sudo npm install
해서 모듈들은 정상적으로 설치됐지만,
npm run start 똑같이 실패. sudo권한 줘도 똑같은 에러..
그래서 node_modules 폴더를 지우고, package-lock.json 파일을 지우고 다시 설치

$ rm -rf node_modules/
$ sudo rm -rf package-lock.json
$ npm install

이렇게 해도 에러 떠서..
iterm2 끄고 맥북 기존 터미널에서 배쉬셀로 옮겨서 하니
sudo 권한 안 줘도 잘 설치 되는 중
하지만... 다른 에러 출현..
npm ERR! 404 Not Found
아고라에서 찾아보니 내가 연결을 안해줬다..

$ /bin/bash -c "$(curl -fsSL https://codestates-content.s3.ap-northeast-2.amazonaws.com/npm-registry/registry.sh)"

다시 한번 npm install

$ npm install

npm ERR! code EACCES
npm ERR! syscall access
npm ERR! path /Users/siwoo/Documents/codestates/week05/im-sprint-react-twittler-state-props
npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, ~~

오 신이시여....
node가 sudo 권한으로 설치되어있는 듯...

  • 설치되는 디렉토리 경로를 현재 계정의 home directory로 변경하는 걸로 시도해 보았다.

    1. npm global directory 생성
      $ mkdir ~/.npm-global
    2. 해당 디렉토리에 npm config set 설정
      $ npm config set prefix '~/.npm-global'
    3. '.npm-global' 파일에 library path 설정 추가
      $ nano ~/.profile
      (편집기에서 아래 내용을 그대로 추가 후 저장)
      export PATH=~/.npm-global/bin:$PATH
    4. '.npm-global' 파일 설정 적용
      $ source ~/.profile
      이렇게 했지만.. 이래도 에러
  • 마지막으로 유저에 npm 권한을 주고 다시 npm 설치
    $ sudo chown -R $USER:$GROUP ~/.npm

과연...
또 다시 같은 에러로 실패...
마지막에 마지막으로 sudo 권한으로 설치해보았다....
결과는...

node_modules 폴더가 생겼다.. 오~~ 신이시여 ㅠㅠ
이제 서버를 돌려보자~
$ sudo npm run start

서버도 정상적으로 돌아가고 내가 구현했던 기능들도 정상적으로 동작한다.. ㅠㅜ

p.s

전이랑 다르게 sudo 권한을 주고 npm 명령어를 실행하는게
Homebrew로 노드를 설치안해줘서 그런것 같다.
어제 계속 brew로 노드 설치하는 게 안 되서 딴 방법으로 했는데 고것이 sudo 권한으로 노드를 설치해버린듯..
brew 다시 설치해보고 테스트 해봐야겠다..
아 근데 HA 하루 전에 맥북님이 정신나가시고 당일 새벽 5시까지 이러고 있는 나님... HA 어쩌지....

profile
'하루를 참고 인내하면 열흘을 벌 수 있고 사흘을 참고 견디면 30일을, 30일을 견디면 3년을 벌 수 있다.'

0개의 댓글