AWS EC2에 Node 6.x 설치하기

AWS EC2에서는 Node 설치에 4.x 버전만 제공하고 있다.
이를 무시하고 6.x대의 최신 Node를 설치하기 위해서는
‘source install’ 을 할 수 밖에 없다.

EC2에서는 ‘nodejs.x86_64’ 패키지에 대해 4.7.2만 지원하고 있다.
ec2-usertest-ssh-2017-01-31-18-25-20

Node 6.x 소스를 다운받아 설치해 보자.
* 다운로드: https://nodejs.org/ko/download/

$ wget https://nodejs.org/dist/v6.9.4/node-v6.9.4.tar.gz

$ tar xvfz node-v6.9.4.tar.gz

$ cd node-v6.9.4

# 설정파일 Makefile 만들기
$ ./configure

# 컴파일 (꽤 오래 걸린다. 커피 한잔하고 올것)
$ make

# 설치하기
$ sudo make install

# 버전확인
$ node -v
v6.9.4
$ npm -v
3.10.10

정상적으로 설치가 된 것 같지만, sudo 접두어를 붙이면 실행이 되지 않는다.

$ sudo npm install -g typescript
sudo: npm: command not found

node가 설치된 ‘/usr/local/bin’에 대한 secure_path 설정이 되어 있지 않기 때문인데

ec2-usertest-ssh-2017-01-31-18-35-29

이를 해결하려면
1) ‘/usr/local/bin’에 있는 node,  npm에 대해서 ‘/usr/bin’에 링크를 생성하거나
2) sudo 가 ‘/usr/local/bin’을 참조하도록 path를 추가하는
방법이 있다.

당근 2)번 방법이 합당하고, 이를 설정하려면
* 참조 http://stackoverflow.com/questions/4976658/on-ec2-sudo-node-command-not-found-but-node-without-sudo-is-ok

$ sudo visudo
# ...
# 아래 문장을 찾아, 뒤에 '/usr/local/bin'을 추가한다
# Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
# ...
# :wq 저장

# sudo로 npm 명령을 조회하면 정상적으로 찾는다
$ sudo which npm
/usr/local/bin/npm

이제 기분좋게 typescript (v2.1.5)를 설치한다.

$ sudo npm install -g typescript

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중

%d 블로거가 이것을 좋아합니다: