[javascript] 우분투 12.04의 nodejs와 node
여기에 제공된 지침에서 우분투에 nodejs를 설치했습니다.
node --version
터미널에 쓸 때 나는 이것을 본다 :
-bash: /usr/sbin/node: No such file or directory
/usr/sbin/
그래도 디렉토리 에서 노드를 볼 수 있습니다 .
작문 npm --version
쇼 1.3.5
작문 nodejs --version
쇼v0.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/node
install도 설치하십시오 nodejs-legacy
. 이것은 누락 된 소프트 링크를 만듭니다.
내 테스트에 따르면 Ubuntu 17.10 이상은 이미 설치된 /usr/bin/node
후 호환성 소프트 링크가 이미 nodejs
설치되어 있으므로 nodejs-legacy
더 이상 필요하지 않으므로이 릴리스에서 누락되었습니다.
답변
우분투 14.04에서도 같은 문제가 있습니다.
“nodejs”를 설치했는데 작동하지만 “nodejs”명령을 사용하는 경우에만 작동합니다. “노드”를 사용하려고하면 아무 일도 일어나지 않습니다.
다음 방법으로이 문제를 해결했습니다.
-
nodejs-legacy 설치
sudo apt-get 설치 nodejs-legacy
그 후 명령 줄에 “node”를 입력하면 “/ usr / sbin / node : No such file or directory”라는 오류 메시지가 나타납니다.
-
둘째, 내가 한 일은 “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 사용하는 것이 좋습니다 . 또한 명명 문제를 해결합니다 ( node
vs 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 파일을 실행하는 경우.