it-swarm.com.de

nodejs vs knoten auf ubuntu 12.04

Ich habe nodejs auf Ubuntu von Anweisungen aus hier installiert.

Wenn ich node --version in das Terminal schreibe, sehe ich Folgendes: 
-bash: /usr/sbin/node: No such file or directory

Ich kann jedoch Knoten im Verzeichnis /usr/sbin/ sehen.

Schreiben von npm --version zeigt 1.3.5 
Schreiben von nodejs --version zeigt v0.10.15

Ich kann auch Knoten im Verzeichnis /usr/bin/ sehen.

Wie kann ich also node funktionieren?

Wenn ich zsh anstelle von bash verwende, funktioniert der Befehl node.

345
Jatin

Sie müssen manuell einen Symlink /usr/bin/node erstellen. Abkürzung für bash-kompatible Shells:

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

Wenn Sie nicht standardmäßige Shells verwenden, kodieren Sie einfach den Pfad, den Sie mit which nodejs finden:

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

Später bearbeiten

Ich habe diese Erklärung in dem von Ihnen geposteten Link gefunden

Es gibt einen Namenskonflikt mit dem Knotenpaket (Amateur Packet Radio Node-Programm), und die Binärdatei von nodejs wurde von Knoten zu Knotenjs umbenannt. Sie müssen/usr/bin/node mit/usr/bin/nodejs verknüpfen oder Sie können das Amateur Packet Radio Node-Programm deinstallieren, um diesen Konflikt zu vermeiden.

Später später bearbeiten

Es ist eine Weile her, seit ich das beantwortete. Obwohl die von mir hier veröffentlichte Lösung mehrmals für mich funktioniert hat, haben die Benutzer in den Kommentaren ein paar weitere Lösungen gemeldet:

Von @ user229115

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

Von AskUbuntu (Benutzer leftium)

Sudo apt-get --purge remove node
Sudo apt-get --purge remove nodejs
Sudo apt-get install nodejs
583
randunel

Ich denke das ist es:

 Sudo-Update-Alternativen --install/usr/bin/node node/usr/bin/nodejs 10 

Debian-Alternativen verwenden.

86
user229115

Anscheinend unterscheidet sich die Lösung zwischen den Ubuntu-Versionen. Folgendes hat für mich auf Ubuntu 13.10 gearbeitet:

Sudo apt-get install nodejs-legacy

HTH

Edit: Faustregel:

Wenn Sie nodejs installiert haben, aber die /usr/bin/node-Binärdatei fehlt, installieren Sie auch nodejs-legacy. Dies erstellt nur den fehlenden Softlink.

Laut meinen Tests hat Ubuntu 17.10 und höher nach der Installation von nodejs bereits den Kompatibilitätssoftlink /usr/bin/node installiert. In diesen Versionen fehlt nodejs-legacy, da er nicht mehr benötigt wird.

62
Tino

Ich habe das gleiche Problem in Ubuntu 14.04.

Ich habe "nodejs" installiert und es funktioniert, aber nur wenn ich den Befehl "nodejs" verwende. Wenn ich versuche, "Knoten" zu verwenden, passiert nichts.

Ich habe dieses Problem auf folgende Weise behoben:

  1. Installieren Sie nodejs-legacy

    Sudo apt-get install nodejs-legacy

Wenn ich in der Befehlszeile "node" eingebe, erhalte ich eine Fehlermeldung "/ usr/sbin/node: Keine solche Datei oder Verzeichnis"

  1. Zweitens, was ich getan habe, ist ein symbolischer Link zu "nodejs":

    Sudo ln -s/usr/bin/nodejs/usr/sbin/node
30
Dmytro Medvid

Das ist mir auch passiert. 

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

Das Problem war, dass ich vor einiger Zeit einen Knoten aus dem Quellcode installiert hatte. Laufen 

which node

wies immer auf diese lokale Installation hin. Ebenfalls, 

echo NODE_PATH

wies auf die lokale Installation.

das Löschen des Verzeichnisses mit der Quellinstallation hat nicht geholfen. Es hat gerade den Knotenbefehl gebrochen. Am Ende gelang es, die Umgebungsvariable NODE_PATH zu löschen und nodejs zu löschen und erneut zu installieren.

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

Danach, 

node -v => 5.5.0

und npm install funktionierte für Pakete in Abhängigkeit von Node => 5.0.

11
CHsurfer

Ich bin neu bei all dem, aber für mich funktionierte ein einfacher Alias: 

alias node='env NODE_NO_READLINE=1 rlwrap nodejs'

zumindest für die Ausführung von Dingen direkt in bash und das Ausführen von .js-Dateien. 

10
Phill

Knotenversionsmanager (nvm)

Wenn Sie mehrere nodejs-Versionen installieren und problemlos zwischen ihnen wechseln möchten, würde ich empfehlen, Node Version Manger zu verwenden. Es löst auch das Namensproblem (node vs. nodejs)

Es ist ganz einfach:

Installieren Sie eine nodejs-Version:

$ nvm install 4.4

Jetzt haben Sie nodejs 4.4 zusätzlich zu der bereits installierten Version. Sie können einfach mit dem Befehl node die neu installierte Version erreichen:

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

Sie können weitere nodejs-Versionen installieren und problemlos zwischen diesen wechseln:

$ 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)
9
Rotareti

Wie benutzt man die offiziellen Anweisungen von der nodejs-Site:

Für v7:

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

Für Version 6:

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

Für v4:

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

Ich habe diese von Windows bash (via Subsystem für Linux - 14.04) und Raspbian (basierend auf ARM Debian) getestet. Wenn Sie Sudo apt-get install -y nodejs ausführen, ohne vorher das Setup-Skript auszuführen, erhalten Sie Knoten 0.10.

Wenn Sie die Installation nativer npm-Module planen, für die Build erforderlich ist, führen Sie außerdem Folgendes aus:

Sudo apt install -y build-essential

Hinweis: Dies ist der empfohlene Pfad für jede Debian-basierte Distribution in allen Architekturen.

9
cchamberlain

Späte Antwort, aber für aktuelle Informationen ...

Wenn Sie node.js mit der "recommend" -Methode aus der Readme-Datei " node github installation " installieren, empfiehlt es sich, den Anweisungen im Blogartikel " nodeource" zu folgen, anstatt vom veralteten apt-get repo-Knoten zu installieren .js sollte mit dem Befehl node sowie mit dem Befehl nodejs ausgeführt werden, ohne dass ein neuer Symlink erstellt werden muss.

Diese Methode aus dem Artikel lautet:

# Note the new setup script name for Node.js v0.12
curl -sL https://deb.nodesource.com/setup_0.12 | Sudo bash -

# Then install with:
Sudo apt-get install -y nodejs

Beachten Sie, dass dies für v0.12 gilt, das in absehbarer Zukunft wahrscheinlich veraltet wird.

Wenn Sie sich hinter einem Unternehmens-Proxy (wie mir) befinden, sollten Sie dem Sudo-Befehl die Option -E hinzufügen, um die für den Proxy erforderlichen Env-Werte zu erhalten:

curl -sL https://deb.nodesource.com/setup_0.12 | Sudo -E bash -

7
Erresen

Hinzufügen zu @ randunels richtiger Antwort (kann noch nicht zu SO kommentieren):

Ich musste auch/usr/local/bin/node mit/usr/bin/nodejs verbinden. 

Sudo ln -s /usr/bin/nodejs /usr/local/bin/node

Anscheinend überschrieb dies den Befehl/usr/bin/node.

Keine Ahnung, wie das eingestellt wurde, aber ich hoffe, es hilft jemand anderem, da es ein Schmerz war, herauszufinden, warum das Obige für mich nicht funktionierte. 

7
kfblake

Das funktioniert für mich:

alias node=nodejs

Nachdem Sie die Anweisungen in this link befolgt haben.

5
Burak Tutanlar

Wenn Sie sich in einer AWS EC2-Instanz befinden, auf der eine Ubuntu-Instanz ausgeführt wird (getestet auf Ubuntu 16.x), können diese Schritte für Sie funktionieren

     Sudo apt-get Update 
 Sudo apt-get --purge Knoten entfernen -y 
 Sudo apt-get --purge remove nodejs -y 
 Sudo apt-get --purge Entfernt den Legacy-Knoten -y 
 Sudo rm /usr/bin/node
 curl -sL https://deb.nodesource.com/setup_6.x | Sudo bash -
 Sudo apt-get install nodejs -y 
 Knoten -v 

Wenn alles korrekt ist, muss der letzte Befehl folgende Ausgabe haben: v6.x.x

Wenn nicht, dann führe folgendes aus:

 Sudan ls -s/usr/bin/nodejs /usr/bin/node

Hoffentlich hilft das. Es hat mir magisch geholfen (hehe).

4
Vivek

Ich hatte den gleichen symbolischen Link, der mir dabei half: Sudo ln -s/usr/bin/nodejs /usr/bin/nodeNachdem .__

verlief reibungslos

3
arr

Am besten installieren Sie nodejs über NVM (Node Version Manager).

Vorherige Versionen löschen: 

$ Sudo rm -rf node_modules

Dann

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

ODER 

$ wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.31.7/install.sh | bash

Überprüfen Sie nvm to path 

$ source ~/.profile
$ nvm ls-remote

wenn Sie einen Fehler bezüglich der Auflistung erhalten, installieren Sie git.

$ Sudo apt-get install git

Wiederholen: 

$ nvm ls-remote
OR 
$ Sudo nvm ls-remote

$ nvm installiere Version, die Sie benötigen 

Version überprüfen

# node --version
nVM verwenden Sie Version, die Sie benötigen

INFORMATION COURTESY: 

https://www.digitalocean.com/community/tutorials/how-to-install-node-js-mit-nvm-node-version-manager-on-a-vps

2
SUMIT LAHIRI

Wird für absolute Anfänger hilfreich sein

Obwohl Sie die Antwort erhalten haben, möchten Sie nur darauf hinweisen, dass der Befehl node (ohne Parameter) den Knoten in REPL startet. lese-Eval-Print-Schleife Modus, um rohen Javascript-Code auszuführen.

Eine andere Möglichkeit, den Befehl node zu verwenden, besteht darin, eine js-Datei als Parameter anzugeben. So verwenden wir es meistens.

1
student

Ich hatte einen Symlink erstellt, der aber immer noch nicht funktionierte.

Ich habe vergessen, mein Terminal (meine PuTTY-Verbindung) neu zu starten. Nachdem ich es ohne den Symlink hatte :)

1
Jamie Hutber

https://nodejs.org/de/download/ 

Download .pkg file on your mac and install it. it directly works.

➜  ~ which node
/usr/local/bin/node
➜  ~ node --version
v10.11.0
➜  ~ which npm
/usr/local/bin/npm
➜  ~ npm --version
6.4.1
0
Ashok R

Sie können diesen Befehl ausführen, um nodejs zu aktivieren:

scl enable rh-nodejs8 bash

Hinweis: Überprüfen Sie Ihre Knotenversion.

Source:https://developers.redhat.com/products/softwarecollections/hello-world/

Verwenden Sie einfach NVM (Node Version Manager) - https://github.com/creationix/nvm

Es ist zum Standard für die Verwaltung von Node.js geworden.

Wenn Sie eine neue Version benötigen:

nvm install NEW_VER
nvm use XXX

Wenn etwas schief geht, können Sie immer wieder mit

nvm use OLD_VER
0

Es ist optional, den vorhandenen Knoten und die vorhandenen Knoten zu entfernen. Alternativ müssen die neuesten 7.x-Knoten installiert werden.

curl -sL https://deb.nodesource.com/setup_7.x | Sudo -E bash -
Sudo apt-get install -y nodejs
0
gino