nodeJS를 최신 버전으로 업데이트하려면 어떻게해야합니까?


626

다음 코드로 Ubuntu에 nodeJS를 설치했습니다.

sudo apt-get install nodejs

우분투의 새로운 사용자 이므로이 코드도 실행했습니다.

sudo apt-get install npm

이제 내가 입력하면

 nodejs --version

이것은 보여준다

v0.6.19

최신 nodeJS 버전을 확인하고 보았습니다. 0.10.26

nodeJS 버전을 어떻게 업데이트 0.10.26합니까?

나는 함께 노력했다

 sudo apt-get install <packagename>
 sudo apt-get install --only-upgrade <packagename>

그러나 운이 없다.


2
nvm을 사용하여 nodejs를 설치하는 것이 좋습니다. "노드 버전 관리자"를 나타냅니다. 여러 버전의 nodejs를 매우 쉽게 설치하고 서로 전환하여 기본값을 설정할 수 있습니다.
미나 마이클

답변:


1107

노드를 업그레이드하기 위해 npm 에서 n 모듈 사용

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

최신 버전 (현재 안정적인 버전이 아님)으로 업그레이드하려면

sudo n latest

실행 취소 :

sudo apt-get install --reinstall nodejs-legacy     # fix /usr/bin/node
sudo n rm 6.0.0     # replace number with version of Node that was installed
sudo npm uninstall -g n

David Walsh 블로그 ( http://davidwalsh.name/upgrade-nodejs)에 있습니다.


11
이것이 정답이어야합니다. n주어진 node.js 버전을 설치하거나 업데이트하는 노드 헬퍼 패키지입니다.
Martin

40
프로덕션 인스턴스에서이 작업을 수행하지 않는 것이 좋습니다. 글로벌 npm 패키지와 새로운 패키지 설치 기능을 심각하게 망칠 수 있습니다.
Loourr

12
하지만 여전히 nodejs --version sow 0.10.25
Mansuu ....


14
작동하지 않음-단계를 수행 한 후에도 node -v여전히 10이 아닌 6 버전을 제공했습니다.
Tomáš Zato

368

Nodesource 에서 전체 설치 지침을 여기 에 업로드 했습니다. 참조 용으로 아래에 복사되어 있습니다. 최신 버전으로 업데이트하는 방법은 동일합니다.

Node.js v12.x :

참고 : Ubuntu Precise 또는 Debian Wheezy를 사용하는 경우 이전 배포판에서 Node.js> = 6.x 실행 에 대해 읽을 수 있습니다.

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_12.x | bash -
apt-get install -y nodejs

Node.js v11.x :

참고 : Ubuntu Precise 또는 Debian Wheezy를 사용하는 경우 이전 배포판에서 Node.js> = 6.x 실행 에 대해 읽을 수 있습니다.

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_11.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_11.x | bash -
apt-get install -y nodejs

Node.js v10.x :

참고 : Ubuntu Precise 또는 Debian Wheezy를 사용하는 경우 이전 배포판에서 Node.js> = 6.x 실행 에 대해 읽을 수 있습니다.

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_10.x | bash -
apt-get install -y nodejs

Node.js v9.x :

참고 : Ubuntu Precise 또는 Debian Wheezy를 사용하는 경우 이전 배포판에서 Node.js> = 6.x 실행 에 대해 읽을 수 있습니다.

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_9.x | bash -
apt-get install -y nodejs

Node.js v8.x :

참고 : Ubuntu Precise 또는 Debian Wheezy를 사용하는 경우 이전 배포판에서 Node.js> = 6.x 실행 에 대해 읽을 수 있습니다.

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_8.x | bash -
apt-get install -y nodejs

Node.js v7.x :

참고 : 데비안 위지와 우분투 정밀 패키지는 NOT 이 릴리스 가능합니다. 이전 배포판에서 Node.js> = 4.x 실행을 참조하십시오.

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_7.x | bash -
apt-get install -y nodejs

Node.js v6.x :

참고 : Ubuntu Precise 또는 Debian Wheezy를 사용하는 경우 이전 배포판에서 Node.js> = 4.x 실행 에 대해 읽을 수 있습니다 .

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_6.x | bash -
apt-get install -y nodejs

Node.js v5.x :

참고 : Ubuntu Precise 또는 Debian Wheezy를 사용하는 경우 이전 배포판에서 Node.js> = 4.x 실행 에 대해 읽을 수 있습니다 .

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_5.x | bash -
apt-get install -y nodejs

Node.js v4.x :

참고 : Ubuntu Precise 또는 Debian Wheezy를 사용하는 경우 이전 배포판에서 Node.js> = 4.x 실행 에 대해 읽을 수 있습니다 .

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_4.x | bash -
apt-get install -y nodejs

Node.js v0.12 :

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_0.12 | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_0.12 | bash -
apt-get install -y nodejs

Node.js v0.10 :

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_0.10 | sudo -E bash -
sudo apt-get install -y nodejs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_0.10 | bash -
apt-get install -y nodejs

io.js v3.x :

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_iojs_3.x | sudo -E bash -
sudo apt-get install -y iojs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_iojs_3.x | bash -
apt-get install -y iojs

io.js v2.x :

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_iojs_2.x | sudo -E bash -
sudo apt-get install -y iojs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_iojs_2.x | bash -
apt-get install -y iojs

io.js v1.x :

참고 :이 io.js 브랜치는 적극적으로 유지 관리되지 않으며 프로덕션 용도로는 권장되지 않습니다.

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_iojs_1.x | sudo -E bash -
sudo apt-get install -y iojs

# Using Debian, as root
curl -sL https://deb.nodesource.com/setup_iojs_1.x | bash -
apt-get install -y iojs

최신 정보를 먼저 읽도록 오래된 정보를 제거하거나 질문의 ​​맨 아래로 이동하는 것이 좋습니다.
k0pernikus

2
이것은 나를 위해 일한 대답입니다!
eri0o

1
나와 같은 모든 혼란스러운 바보에게는 설치를 실행하면 이전의 것을 효과적으로 대체하는 것처럼 보입니다. 따라서이 프로세스로 업그레이드 또는 다운 그레이드를 수행 할 수 있다고 생각합니다. v8에서 v10으로 업그레이드 한 후 설치 로그에서이 메시지를 발견했습니다. 설치 후 Unpacking nodejs (10.15.0-1nodesource1) over (8.12.0-1nodesource1) ...실행 node -v하면 v10.15.0원하는 것이 표시됩니다 .
icc97

2
curl {anything} | sudo bash -끔찍한 보안 관행
krubo

1
@krubo 동의합니다. 사용자는 스크립트를 실행하기 전에 검사해야합니다. 그러나, 그것은 이다 믿을만한 소스에서 ( nodesource.com)와 연결이 HTTPS에 의해 보안, 그래서 당신은 그 스크립트에 배치 할 수 있습니다 신뢰의 충분한 양이있다. 그러나 예, 일반적으로 스크립트를 파이프하기 전에 확인하십시오sudo bash
dayuloli

28

이 PPA가 오래되어 더 이상 유지되지 않습니다. 이 답변 대신 다른 답변을 고려해야합니다.

PPA에서 최신 버전을 설치할 수 있습니다.

sudo add-apt-repository ppa:chris-lea/node.js  
sudo apt-get update  
sudo apt-get install nodejs

13
나는 이것이 당신이 (그리고) 이것을 수행하는 ppa가 아닌 방법을 제공한다면 ppas가 구식이고 유지되지 않는 것으로 유명하여 본질적으로 대답을 쓸모 없게 만드는 것으로 악명 높은 것으로 생각합니다.
pzkpfw

@ bigbadonk420 네, 방금 구글 검색을한다면 아마 첫 번째 줄을 건너 뛰고 노드 0.10.34로 업데이트하고 설치 작업을하는 것이 좋습니다.
Capaj

@Capaj nope. 도움이되지 못했습니다.
초에 deostroll

6
이 ppa를 더 이상 사용하지 않는 것이 좋습니다. 다소 오래된 것 같습니다.
Kzqai

19

NVM을 사용하여 노드 버전을 처리합니다. 설치가 매우 쉽고 사용하기 쉽습니다.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm

대신 NVM을 전체적으로 설치하려면 위의 명령 대신 다음 curl 명령을 사용하십시오. 두 번째 명령은 사용하지 말고 세 번째 명령은 사용하십시오.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | NVM_DIR=/usr/local/nvm bash

그런 다음 최신 또는 특정 버전의 Node를 얻으려면을 사용하십시오 nvm install stable(또는 대신 버전 번호를 삽입하십시오 stable). nvm use stable해당 노드 버전을 사용 하려면 (또는 특정 버전 번호)를 사용하십시오. 사용하여 nvm ls설치 및 것을 노드 버전 확인 nvm uninstall stable(또는 특정 버전 번호) 노드의 특정 버전을 제거 할 수 있습니다.

출처 : 설치 , 사용법


이 이론적으로 질문에 대답 할 수 있습니다 동안, 바람직 할 것이다 여기에 대한 대답의 본질적인 부분을 포함하고 참조 할 수 있도록 링크를 제공합니다.
워렌 힐

내 멍청한 사과 업데이트 된 답변
amnah

주어진 컬 경로가 작동하지 않습니다. github.com/creationix/nvm에 제공된 "curl raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh | bash"를 사용 했습니다
Senthil

URL 부분을 최신 버전의 nvm으로 업데이트하는 것을 잊지 마십시오
Nidhin David

16

또한 대신 nvm을 사용하고 터미널에서 충돌을 피하기 위해 이미 설치된 버전을 제거하는 것이 좋습니다.

sudo apt purge nodejs npm

그런 다음 nvm을 설치하고 사용하십시오.

비디오 설명

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

nvm을 다운로드하고 설치하는 방법

nvm install node

최신 버전의 노드를 다운로드하여 설치해야합니다.

나중에 노드를 업데이트하려면

nvm install node
nvm alias default node

4
우분투에서 제정신의 최신 노드 설정을 원한다면 이것이 유일하게 허용되는 답변이어야합니다.
José L. Patiño

이것은 또한 나에게 가장 효과적입니다 (EC2에서 꽤 오래된 nodejs를 가지고 많은 제안을 시도했지만 이것만으로도 효과가있었습니다). 또한 100 %는 위의 의견에 동의합니다!
Shan Dou

nvm사용자별로 Node.js를 설치합니다. 사용 nvm하면 시스템 전체 node명령이 제공되지 않습니다 . 따라서 node다른 사용자로 실행되는 스크립트를 계속 실행할 수 있도록 전역 / 시스템을 제거하지 않는 것이 node좋습니다.
d4nyll

4

우분투 14.04에서 동일한 목록 명령을 시도했지만 여전히 오류가 발생했습니다.

내가 실행 한 명령은 다음과 같습니다.

sudo add-apt-repository ppa:chris-lea/node.js  
sudo apt-get update  
sudo apt-get install nodejs

그리고 내가 얻는 오류 :

Invalid version 0.12.2
Line 299: curl not found in /bin/n

내가 알아 낸 것은 curl 유틸리티가 내 OS에 설치되어 있지 않다는 것입니다.

나는 명령을 실행했다 :

apt-get install curl

( sudo아닌 경우 접두사로 사용 su)

그런 다음 대답에서 제안한 단계를 반복하면 작동합니다.)


2

이것은 nodesource에서 최신 노드 v0.12. *를 설치합니다.

sudo apt-get install -y curl
curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
sudo apt-get install -y nodejs

노드 v4.x의 경우

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs

2
처음부터 노드를 설치하고 있습니까? 문제는 설치되지 않은 업데이트에 관한 것이 었습니다
Green

2

nvm을 사용 하는 것이 좋습니다. 먼저 nvm을 설치하십시오.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

그런 다음 nodejs를 설치하십시오.

nvm install node

이제 노드 버전을 쉽게 전환 할 수 있습니다.


2

NVM (노드 버전 관리자) --lts

NVM은 https://askubuntu.com/a/441527/52975 에서 언급 되었지만 여기에 제정신 --lts버전을 포함한보다 완전한 사용 예가 있습니다.

NVM은 최신 안정 노드와 npm을 모두 설치합니다

curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | sh
source ~/.nvm/nvm.sh
nvm install --lts
nvm use --lts
npm --version

이제 더미 패키지로 테스트하십시오.

npm install --global vaca
vaca

모든 새 셸에 대해 소싱을 수행해야하므로 설치 스크립트 핵은 자동 끝에 소싱을 추가합니다 .barshrc. 그것은 작동하지만 자동 추가 항목을 제거하고 내 것을 추가하는 것을 선호합니다.

f="$HOME/.nvm/nvm.sh"
if [ -r "$f" ]; then
  . "$f" &>'/dev/null'
  nvm use --lts &>'/dev/null'
fi

장점 :

  • sudo없이 여러 버전의 Node를 사용할 수 있습니다

  • Ruby RVM 및 Python Virtualenv와 유사하며 Ruby 및 Python 커뮤니티에서 우수 사례로 널리 간주됩니다.

  • 가능한 경우 사전 컴파일 된 바이너리를 다운로드하고 그렇지 않은 경우 소스를 다운로드하여 컴파일합니다.

다음을 사용하여 노드 버전을 쉽게 전환 할 수 있습니다.

nvm install 0.9.0
nvm install 0.9.9
nvm use 0.9.0
node --version
#v0.9.0
nvm use 0.9.9
node --version
#v0.9.9

그런 다음 자식 추적 .nvmrc파일을 사용 하여 주어진 프로젝트에 필요한 노드 버전을 나타낼 수 있습니다 : https : //.com/questions/24869959/how-do-i-specify-a-local-version-of-node-for -a- 프로젝트 / 54503474 # 54503474

우분투 17.10에서 테스트되었습니다.


1

원하는 nodejs 버전과 설치 상위 디렉토리로 편집하면 먼저 모든 nodejs 설치를 제거한 다음 스크립트 아래에서 실행하는 것이 좋습니다.

사용 가능한 모든 nodejs 버전보기

https://nodejs.org/dist/

아래 스크립트를 사용하면 Linux 또는 OSX에 해당 nodejs 버전을 설치할 수 있습니다

#!/bin/bash

#     usage :
#
#     edit two vars in below :  NODE_VER  and  CODE_PARENT_DIR
#
# ... execute this script as yourself unless you choose a root owned value for var CODE_PARENT_DIR
#     whichever id you execute this as determines the id you will issue npm commands as :  npm install -g foo-bar
#
#     NOTE - nodejs comes bundled with npm ... so no need to do separate npm install
#            this scripts runs fine on linux or OSX

# ...  copy all the lines starting here  .. top of copy  ....   and ending ... end of copy  ...
#      and paste into your ~/.bashrc file so proper env vars get set 

# ............... top of copy  ........................  install_node.sh

# export NODE_VER=v7.2.0  # see available versions at https://nodejs.org/dist/
# export NODE_VER=v8.5.0  # edit this line next time you need to update nodejs  
export NODE_VER=v9.3.0  # edit this line next time you need to update nodejs

# ...  pick parent dir of nodejs install  ... comment out or remove ONE of below
# export CODE_PARENT_DIR=/opt/code  # root owned dir ... requires you to sudo prior to npm install going forward
export CODE_PARENT_DIR=${HOME}    # RECOMMENDED execute as yourself including npm install

# ......... following env vars are OK no edits needed ... only ever need to edit above vars

curr_OS=$( uname )

echo curr_OS $curr_OS

if [[ "${curr_OS}" == "Darwin" ]]; then

    OS_ARCH=darwin-x64

elif [[ "${curr_OS}" == "Linux" ]]; then

    OS_ARCH=linux-x64
else
    echo "ERROR - failed to recognize OS $curr_OS"
    exit 5
fi

if [[ -z ${CODE_PARENT_DIR} ]]; then

    echo "ERROR - failed to see env var CODE_PARENT_DIR"
    exit 5
fi

export NODE_CODEDIR=${CODE_PARENT_DIR}/nodejs
export COMSUFFIX=tar.gz
export NODE_NAME=node-${NODE_VER}
export NODE_PARENT=${NODE_CODEDIR}/${NODE_NAME}-${OS_ARCH} 

export PATH=${NODE_PARENT}/bin:${PATH}
export NODE_PATH=${NODE_PARENT}/lib/node_modules

# ............... end of copy  ........................  install_node.sh

# copy and paste above from ... top of copy ... to here into your file ~/.bashrc   

echo
echo "NODE_CODEDIR $NODE_CODEDIR<--"
echo

echo "mkdir -p ${NODE_CODEDIR}"
echo
      mkdir -p ${NODE_CODEDIR}
echo

echo "cd ${NODE_CODEDIR}"
      cd ${NODE_CODEDIR}
echo

# this is compiled code NOT source

[ -f ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX} ] && rm ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX} # if file exists remove

echo "wget -q --show-progress https://nodejs.org/download/release/${NODE_VER}/${NODE_NAME}-${OS_ARCH}.${COMSUFFIX}"
      wget -q --show-progress https://nodejs.org/download/release/${NODE_VER}/${NODE_NAME}-${OS_ARCH}.${COMSUFFIX}
echo

echo "tar -C ${NODE_CODEDIR} -xf ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX}"
      tar -C ${NODE_CODEDIR} -xf ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX}
echo

[ -f ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX} ] && rm ${NODE_NAME}-${OS_ARCH}.${COMSUFFIX} # if file exists remove

# ...........  done ........... #

which node

node --version

# ....  bottom of file   install_node.sh

1

사용 n이 작동하지 않으면 nodejs다음 명령을 실행하는 최신 버전 (예 : 버전 8)을 설치할 수 있습니다 .

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -

sudo apt-get install -y nodejs

추가 지침은 여기에 있습니다 .


0

프록시 뒤에있는 경우 'sudo n 안정'을 실행할 때이 오류가 발생할 수 있습니다.

Error: invalid version

다음과 같이 env 변수를 설정해야합니다.

export HTTP_PROXY=http://your-proxy-url:port
export HTTPS_PROXY=http://your-proxy-url:port

그런 다음이 변수를 루트 사용자에게 전달하는 명령을 실행하십시오.

sudo -E n stable


0

위에서 답변 한 nvm을 통해 설치하려고하지만 우분투 18.04에서 일부 오류가 발생합니다. 그런 다음이 과정을 겪습니다.

sudo apt purge nodejs npm

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

nvm install node

이 명령을 실행 한 후 그 오류를 찾을 수 있습니다 Command 'nvm' not found, did you mean:

이 경우이 명령을 실행할 수 있습니다

source ~/.nvm/nvm.sh

또는 파일을 /.bashrc 또는 ~ / .profile 파일에 넣어 자동으로로드 할 수 있습니다

그 후 당신은 다음 과정을 통해 할 수 있습니다

nvm install node
nvm alias default node
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.