[javascript] 우분투 12.04의 nodejs와 node

여기에 제공된 지침에서 우분투에 nodejs를 설치했습니다.

node --version터미널에 쓸 때 나는 이것을 본다 :
-bash: /usr/sbin/node: No such file or directory

/usr/sbin/그래도 디렉토리 에서 노드를 볼 수 있습니다 .

작문 npm --version1.3.5
작문 nodejs --versionv0.10.15

또한 /usr/bin/디렉토리 에서 노드를 볼 수 있습니다 .

어떻게 node일을합니까?

또한 bash 대신 zsh 를 사용하면 node명령이 작동합니다.



답변

symlink를 수동으로 작성해야합니다 /usr/bin/node. bash 호환 쉘의 단축키 :

sudo ln -s `which nodejs` /usr/bin/node

또는 비표준 쉘을 사용하는 경우 찾은 경로를 하드 코딩하십시오 which nodejs.

sudo ln -s /usr/bin/nodejs /usr/bin/node

나중에 편집

귀하가 게시 한 링크에서이 설명을 찾았습니다

노드 패키지 (Amateur Packet Radio Node Program)와 이름이 충돌하고 nodejs 바이너리의 이름이 node에서 nodejs로 변경되었습니다. / usr / bin / node를 / usr / bin / nodejs에 심볼릭 링크하거나 아마추어 패킷 라디오 노드 프로그램을 제거하여 충돌을 피할 수 있습니다.

나중에 편집

내가 이것에 대답 한 지 오래되었습니다. 여기에 게시 한 솔루션이 여러 번 효과가 있었지만 사용자는 주석 내에 몇 가지 솔루션을 더보고했습니다.

@ user229115에서

sudo update-alternatives --install /usr/bin/node node /usr/bin/nodejs 10

AskUbuntu (사용자 왼쪽)

sudo apt-get --purge remove node
sudo apt-get --purge remove nodejs
sudo apt-get install nodejs


답변

나는 이것이 생각합니다 :

sudo 업데이트 대안 --install / usr / bin / node 노드 / usr / bin / nodejs 10

데비안 대안 사용하기.


답변

분명히 해결책은 우분투 버전마다 다릅니다. 다음은 우분투 13.10에서 나를 위해 일했습니다.

sudo apt-get install nodejs-legacy

HTH

편집 : 경험 법칙 :

바이너리를 설치 nodejs했지만 누락 된 경우 /usr/bin/nodeinstall도 설치하십시오 nodejs-legacy. 이것은 누락 된 소프트 링크를 만듭니다.

내 테스트에 따르면 Ubuntu 17.10 이상은 이미 설치된 /usr/bin/node후 호환성 소프트 링크가 이미 nodejs설치되어 있으므로 nodejs-legacy더 이상 필요하지 않으므로이 릴리스에서 누락되었습니다.


답변

우분투 14.04에서도 같은 문제가 있습니다.

“nodejs”를 설치했는데 작동하지만 “nodejs”명령을 사용하는 경우에만 작동합니다. “노드”를 사용하려고하면 아무 일도 일어나지 않습니다.

다음 방법으로이 문제를 해결했습니다.

  1. nodejs-legacy 설치

    sudo apt-get 설치 nodejs-legacy

그 후 명령 줄에 “node”를 입력하면 “/ usr / sbin / node : No such file or directory”라는 오류 메시지가 나타납니다.

  1. 둘째, 내가 한 일은 “nodejs”의 심볼릭 링크입니다.

    sudo ln -s / usr / bin / nodejs / usr / sbin / node

답변

이것은 나에게도 일어났다.

node -v => 0.10.2
nodejs -v => 5.5.0

문제는 얼마 전에 소스에서 노드를 설치했다는 것입니다. 달리는

which node

항상이 로컬 설치를 가리 켰습니다. 또한,

echo NODE_PATH

로컬 설치를 가리 켰습니다.

소스 설치로 디렉토리를 삭제해도 도움이되지 않습니다. 방금 node 명령을 중단했습니다. 결국 NODE_PATH 환경 변수를 설정 해제하고 nodejs를 제거했다가 다시 설치하면 문제가 해결되었습니다.

unset NODE_PATH
sudo apt-get --purge remove nodejs
sudo apt-get install nodejs

금후,

node -v => 5.5.0

npm 설치는 Node => 5.0에 따라 패키지에서 작동하기 시작했습니다.


답변

노드 버전 관리자 (nvm)

여러 nodejs 버전을 설치하고 쉽게 전환하려면 Node Version Manger 사용하는 것이 좋습니다 . 또한 명명 문제를 해결합니다 ( nodevs nodejs)

아주 간단합니다 :

nodejs 버전을 설치하십시오.

$ nvm install 4.4

이제 이미 설치된 버전 외에 nodejs 4.4가 있으며 node명령을 사용 하여 새로 설치된 버전에 도달 할 수 있습니다 .

$ node -v    // The new version added by nvm.
v4.4.5
$ nodejs -v  // The OS version is untouched and still available.
v0.10.25

더 많은 nodejs 버전을 설치하고 쉽게 전환 할 수 있습니다.

$ nvm install 6.2
$ nvm use 6.2
Now using node v6.2.1 (npm v3.9.3)
$ node -v
v6.2.1
$ nvm use 4.4
Now using node v4.4.5 (npm v2.15.5)


답변

나는이 모든 것을 처음 사용하지만 간단한 별칭이 작동했습니다.

alias node='env NODE_NO_READLINE=1 rlwrap nodejs'

적어도 bash에서 직접 실행하고 .js 파일을 실행하는 경우.