MacOS sudo Error 1: sudo required (or change ownership, or define N_PREFIX)

webpack dev 실행 테스트 시, 나타나는 버전 오류로 nodejs를 업데이트를 하려니 아래와 같은 에러가 떴다.

mkdir: /usr/local/n/versions~ : Permission denied
Error: sudo required (or change ownership, or define N_PREFIX)

위에서 나타나는 권한 에러는
MacOS 버전 High Sierra 이상에서는 usr/local 폴더에 권한 부여를 하지 않기 때문에
관리자 권한을 위한 슈퍼유저 권한 실행 명령어인 “sudo“를 사용하지 않을 경우,
특정 명령어 실행 시 권한이 없어 나타나는 에러이다.

아래의 2가지 방법으로 해당 에러는 해결이 가능하다.

1. nodeJS n 명령어 앞에 sudo만 붙여주면 잘 실행된다.

sudo n stable

2. 특정 폴더에 사용자 권한을 부여하는 방법으로도 해결할 수 있다.

sudo chown -R $(whoami) /usr/local/n

아래의 명령어는 관리자 권한으로 권한을 부여할 수 있다.

sudo chown -R $(whoami):admin /usr/local/n

예) 위와 같이 권한으로 인해 폴더 생성에서 에러가 난 경우 아래와 같이 실행하면 문제 없이 실행된다.

sudo mkdir -p /usr/local/n
sudo chown -R $(whoami) /usr/local/n
n latest

Related Articles


Resources


Leave a Reply

Your email address will not be published. Required fields are marked *