Debian Jessie에 최신 NodeJS를 설치하는 방법은 무엇입니까?

Debian Jessie에 최신 NodeJS를 설치하는 방법은 무엇입니까?

방금 권장 방법을 사용하여 Debian Jessie에 NodeJS와 NPM을 설치했습니다.

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

그러나 상당히 오래된 버전입니다(노드 v0.10.38 및 npm 1.4.28).

최신 버전을 설치하는 가장 쉬운 방법에 대한 제안 사항이 있습니까? 예를 들어 현재 노드는 v0.12.4이고 npm은 2.7.4입니다. 소스에서 설치하는 것이 유일한 방법입니까?

답변1

Node.js에 사용할 수 있는 설정 스크립트가 있습니다(참조:설치 참고 사항):

# Adapt version number to the version you want
curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
sudo apt-get install -y nodejs

약간의 코멘트: 나의 겸손한 의견으로는 이것은매우나쁜 생각 curl | sudo bash. 루트 권한 확인을 사용하지 않는 스크립트를 실행 중입니다. 스크립트를 다운로드하여 읽어보고 악성 명령이 있는지 확인한 다음 실행하는 것이 더 좋습니다.저것, 달리다. 하지만 그건 내 2센트에 불과해요.

아래 단계에 따라 수동으로 설치를 수행할 수 있습니다.수동 설치 과정:

  • 이전 PPA 제거(해당되는 경우)
  • 노드 저장소 SSH 키 추가
  • 노드 저장소를 다음에 추가하십시오.sources.list
  • 패키지 목록을 업데이트하고 선호하는 apt 도구를 사용하여 설치

답변2

최신 버전의 Node( 4.2.2) 를 다운로드할 수 있습니다.그들의 웹사이트에서, Debian 제공 패키지( 0.12)를 사용하는 대신. 이는 또한 최신 버전의 npm을 사용하고 있음을 의미합니다. Jesse에서는 이 작업을 수행하는 데 아무런 문제가 없었습니다.

.tar.gz해당 웹사이트에서 다운로드하여 cd이 디렉터리에 넣습니다(파일 이름은 분명히 내 다운로드에 고유합니다).

$ tar -xzvf node-v4.2.2-linux-x64.tar.gz
$ cd node-v4.2.2-linux-x64

bin 폴더를 보면 Node 및 npm에 필요한 바이너리가 표시됩니다.

$ ls node-v4.2.2-linux-x64/bin 
node  npm

이제 폴더 이름을 추적하기 쉬운 이름으로 바꾸겠습니다.

$ mv node-v4.2.2-linux-x64 nodejs

노드를 계속 업데이트하지 않으려면 이 폴더를 저장소 위치 중 하나로 이동하고(나는 하나를 사용함 ~/bin) 다음 단계를 건너뜁니다.

노드 버전을 쉽게 업데이트하려면 nodejs추적할 수 있는 위치( ~/nodejs아마도?)로 폴더를 이동하세요. 그런 다음심볼릭 링크전체 경로를 작성하지 않고도 셸에서 바이너리를 사용할 수 있도록 bin 위치 중 하나에 저장합니다.

nodejs 폴더를 홈 디렉터리에 넣었다고 가정하면 이제 다음을 수행할 수 있습니다.

$ ln -s ~/nodejs ~/bin/nodejs

분명히 이것은 원하는 쓰레기통 위치에 도달할 수 있습니다. 나는 나만을 위한 홈 디렉토리를 사용했지만 다음과 같은 작업을 쉽게 수행할 수 있습니다.

$ ln -s ~/nodejs /usr/local/bin/nodejs

이렇게 하면심볼릭 링크홈 디렉터리의 nodejs 폴더에서 bin 디렉터리로(이는 홈 폴더의 디렉터리에 대한 모든 업데이트가 다음을 통해 다른 폴더에 반영됨을 의미함)심볼릭 링크). 이제 nodejs 디렉터리가 포함된 bin 폴더가 다음 위치에 있는지 확인하고 싶습니다.$PATH환경 변수, 따라서 ~/.profile홈 디렉터리에서 파일을 엽니다. 이것을 파일 맨 아래에 추가하고 싶습니다(사용하지 않는 경우 경로를 변경하십시오 ~/bin/).

# Set the node PATH if it exists
if [ -d "$HOME/bin/nodejs/bin" ] ; then
    PATH="$HOME/bin/nodejs/bin:$PATH"
fi

디렉터리가 있는지 확인하고, 있으면 PATH에 추가합니다. 나는 사용하므로 zsh방금 행을 업데이트했습니다 ~/.zshrc.

export PATH="$HOME/bin/nodejs/bin:$PATH"

터미널을 닫았다가 다시 연 후 다음을 입력하여 확인하세요.

$ node -v
v4.2.2

$ npm -v
2.14.7

심볼릭 링크를 생성하면 향후 .tar.gzNodejs 웹사이트에서 새 심볼릭 링크를 다운로드하여 ~/nodejs압축을 풀 수 있다는 의미입니다.$PATH 환경 변수자동으로 업데이트됩니다.

답변3

제 경우에는 권장되는 쉘 명령을 실행했습니다.

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

문제는 bash 스크립트가 내 APT 수정 사항을 업데이트하지 않았기 때문에 apt-get이 nodesource.com 대신 debian.org 소스에서 기본 이전 데비안 패키지를 설치했다는 것입니다.

이것이 문제인지 확인하십시오 apt-cache policy nodejs. Candidate: 6.10.2-1nodesource1~jessie1대신에 이와 같은 것을보아야합니다Candidate: 0.10.29~dfsg-2

노드 소스에 고정 우선순위를 설정하려면 다음 내용이 포함된 파일을 호출에 /etc/apt/preferences.d/추가하세요 .node

Package: nodejs
Pin: release o=Node Source
Pin-Priority: 1200

저장하고 실행하십시오 apt-get cache update. 그런 다음 다시 시도해 보세요 apt-cache policy nodejs. 후보가 올바르게 보이면 정상적으로 설치하십시오.apt-get install nodejs

답변4

공식 홈페이지에서 최신 리눅스 바이너리(.tar.gz)를 다운로드하여 사용하시면 됩니다. https://stackoverflow.com/a/23084499/1197421

관련 정보