apt를 사용하여 NodeJS 4를 설치하는 방법은 무엇입니까?


답변:


75

https://github.com/nodesource/distributions 에서 지침을 얻었습니다.

wget -qO- https://deb.nodesource.com/setup_4.x | sudo bash -

그리고:

sudo apt-get install nodejs

시스템 버전은 다음과 같습니다.

ubuntu@424c7702-0947-e7c7-c532-dfec484fc109:~$ lsb_release -r
Release:    15.04
ubuntu@424c7702-0947-e7c7-c532-dfec484fc109:~$ node -v
v4.0.0
ubuntu@424c7702-0947-e7c7-c532-dfec484fc109:~$ npm -v
2.14.2

@jarserver- "다음 패키지는 충족되지 않은 종속성을 가지고 있습니다. nodejs : 종속 : rlwrap이지만 설치할 수 없습니다. E : 문제를 해결할 수 없습니다. 손상된 패키지를 보유했습니다."-apt-get install 동안 오류가 발생했습니다. 이 문제를 해결하는 방법?
Kumar Sambhav

@KumarSambhav는 패키지 데이터베이스가 깨진 상태 인 것처럼 들립니다. 사이트에서 적절한 깨진 상태를 수정하는 방법을 검색하십시오.
battlemidget

이것은 우분투 15.10에서 작동하지 않습니다. 그것은 항상 v0.10.25를 설치합니다 (OP보다 낮은 버전이므로 어떤 일이 일어나고 있는지 전혀
모르겠습니다

@HankScorpio apt-repo가 ​​업데이트되지 않은 것 같습니다. 수동 설치 지시 사항 ( github.com/nodesource/distributions#manual-installation )을 따르고 문제가 해결되는지 확인하십시오.
jarsever

예, 그것이 문제였습니다. 일부 GPG 키 (무엇이든)가 누락되어 apt-get update매번 실패했습니다. 나는 y-ppa-manager문제를 해결하기 위해 사용 했고 이제 NodeJS 4의 최신 버전을 가지고 있습니다.
HankScorpio

37

Node Version Manager는 항상 최신 버전입니다

프로덕션 서버 대신 개발을 수행하려는 컴퓨터에 노드 버전 관리자와 함께 노드설치 하는 것이 Ubuntu에서 가장 좋은 옵션이라고 생각합니다.

공식 저장소를 통해 설치하면 끔찍한 구식이됩니다. 언제든지 PPA를 추가 할 수 있지만 npm에서 모듈을 전체적으로 설치하려면 관리자 권한이 필요한 지저분한 권한 이 여전히 남아 있습니다.

NVM을 사용하면 모든 것이 홈 폴더에 보관되므로 (필요하지 않음 sudo) 여러 버전의 Node (4.0 포함)를 설치하고 쉽게 전환 할 수 있습니다.

NVM으로 설치

NVM 설치 지침 에서 발췌 :

최신 NVM 사본을 가져 오십시오 ( sudo apt-get install curl먼저 필요할 수도 있음 ).

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

쉘에 사용하도록 nvm지시하십시오 (이 기능을 추가 ~/.bashrc하여 나중에 자동으로 수행되도록 할 수 있습니다)

source ~/.nvm/nvm.sh

그런 다음 최신 노드 버전을 설치하십시오.

nvm install 4.0

사용하려는 노드의 버전을 nvm에 알려주십시오.

nvm use 4.0

터미널을 시작할 때마다 노드 버전을 선택할 필요가 없도록 nvm use 4.0행을 에 추가 할 수도 있습니다 ~/.bashrc.

이제 확인하면 which node홈 폴더 내의 노드 실행 파일 경로가 제공됩니다. Running node --version은 달리고 있음 을 알려줍니다 v4.0.0.


6
지저분한 권한 설명이 정확하지 않다고 생각하고 nodesource apt repo에서 노드를 설치하고 로컬 홈 디렉토리 (-g 전역 옵션 포함)에서 노드 모듈을 실행하고 설치할 수 있습니다. 접두사 디렉토리를 정의하기 위해 ~ / .npmrc를 업데이트하기 만하면됩니다.
battlemidget

3
아, 그것은 매우 공정한 포인트입니다. 나는 여전히 버전 관리 측면에서 nvm의 팬이지만, 그렇지 않은 경우 접두사를 설정하는 것이 ~/.npmrc전역 모듈에 대한 권한을 처리하는 올바른 방법 인 것 같습니다.
Michael Martin-Smucker

정식 리포지토리에 대한 "오래된"노트는 대답이 약간 ... 구식이라고 생각합니다 .-) 공식 리포지토리는 지원되는 릴리스 기차에서 공개적으로 릴리스 된 버전을 지원합니다. 버전 6, 7 및 심지어 8, 그리고 적어도 내 대답 (10/15) 이후
그랬습니다

36

kujars를 @jarsever와 함께 사용하면 개인적으로 " curl | sh "패러다임을 구독하지 않습니다 .

인터넷에서 루트 계정의 셸 프로세스로 임의의 텍스트를 파이프하라는 메시지가 표시 될 때와 같은 종류의 불안감을 느끼는 경우 동일한 효과를 위해 시도하지만 약간의 두려움과 불확실성을 갖도록 시도해 볼 수 있습니다 그리고 의심 :

version=4
apt-key adv --keyserver keyserver.ubuntu.com --recv 68576280
apt-add-repository 'deb https://deb.nodesource.com/node_${version}.x precise main'
apt-get update
apt-get install nodejs

프로세스가 명확해야한다고 생각하며 Ubuntu의 소프트웨어 속성 UI를 통해 동일한 작업을 수행 할 수도 있습니다.


이 방법으로 단점이 있습니까? 최선의 선택 인 것 같습니다 ...
Catskul

6
한 줄 이상이고 시스템에 대해 배울 수 있습니까? ... 어떤 사람들은 그런 것을 좋아하지 않습니다. 이것이 제가 curl|sh현상을 설명 할 수있는 유일한 방법이라고 생각합니다 .
Guss

3
OS의 패키지 관리자에 대해 배우는 것 외에도 보안 문제이기도합니다. curl|sh서버에서 스크립트를 가져 와서 쉘에서 직접 실행합니다. 나는 개인적으로 노드 소스를 신뢰하지만 좋은 습관이 아닙니다. unix.stackexchange.com/questions/46286/…
blanket_cat 1

그리고 거기에 파이프를 요구합니다 sudo -E bash. 루트로 실행 중입니다. 넷에서 루트 쉘로 스크립트를 파이프하려면 스크립트를 읽고 이해하는 것이 좋습니다.
blanket_cat 1

1
일반적으로 deb 패키지를 설치하면 인터넷을 루트 셸에 파이프하는 것과 같은 위험을 감수합니다. 즉, 하나는 시스템을 이해한다는 의미이고, 다른 하나는 그렇지 않다는 것을 의미합니다. 이는 큰 차이입니다.
거스

0

나는 pypi ( https://pypi.python.org/pypi/nodeenv )의 nodeenv를 사용하고 pip를 사용하여 패키지를 설치 한 다음 "node / virtualenv"를 설정하고 미리 빌드 된 버전을 빠르고 간단하게 설치하도록 지시합니다 . 폴


-1

이것은 나를 위해 일했다

echo 'export PATH=$HOME/local/bin:$PATH' >> ~/.bashrc
. ~/.bashrc
mkdir ~/local
mkdir ~/node-latest-install
cd ~/node-latest-install
curl http://nodejs.org/dist/node-latest.tar.gz | tar xz --strip-components=1
./configure --prefix=~/local
make install 
curl https://www.npmjs.org/install.sh | sh

출처 : https://gist.github.com/isaacs/579814


1
질문은 Apt로 NodeJS를 설치하는 방법에 관한 것 입니다.
David Foerster
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.