390 Stimmen

Nodejs vs node auf ubuntu 12.04

Ich habe Node.js auf Ubuntu gemäß den Anweisungen hier installiert.

Wenn ich node --version im Terminal eingebe, sehe ich folgendes:
-bash: /usr/sbin/node: Datei oder Verzeichnis nicht gefunden

Ich kann Node in dem Verzeichnis /usr/sbin/ jedoch sehen.

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

Außerdem kann ich Node im Verzeichnis /usr/bin/ sehen.

Also, wie bekomme ich node zum Laufen?

Außerdem, wenn ich anstelle von Bash zsh verwende, funktioniert der Befehl node.

11voto

CHsurfer Punkte 1204

Das ist mir auch passiert.

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

Das Problem war, dass ich Node vor einiger Zeit aus den Quellen installiert hatte. Wenn ich

which node

ausführte, zeigte es immer auf diese lokale Installation. Auch

echo NODE_PATH

zeigte auf die lokale Installation.

Das Löschen des Verzeichnisses mit der Quellinstallation hat nicht geholfen. Es hat den Node-Befehl nur kaputt gemacht. Letztendlich hat das Löschen der NODE_PATH Umgebungsvariable und das Entfernen und Neuinstallieren von Nodejs den Trick gemacht.

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

Nach diesem Schritt,

node -v => 5.5.0

und das Installieren von npm begann für Pakete, die von Node => 5.0 abhängen, zu funktionieren.

10voto

Phill Punkte 505

Ich bin neu in all dem, aber für mich hat ein einfaches Alias funktioniert:

alias node='env NODE_NO_READLINE=1 rlwrap nodejs'

zumindest für das direkte Ausführen von Befehlen in der Bash und das Ausführen von .js Dateien.

9voto

cchamberlain Punkte 15982

Wie wäre es, die offiziellen Anweisungen von der nodejs-Website zu verwenden:

Für v7:

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

Für v6:

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 Befehle von Windows Bash (über das Subsystem für Linux - 14.04) und Raspbian (ARM Debian-basiert) getestet. Wenn Sie sudo apt-get install -y nodejs ausführen, ohne zuvor das Setup-Skript auszuführen, erhalten Sie Node 0.10.

Wenn Sie vorhaben, native npm-Module zu installieren, die einen Build erfordern, führen Sie auch aus:

sudo apt install -y build-essential

Hinweis: Dies ist der empfohlene Weg für alle auf Debian basierenden Distributionen bei allen Architekturen.

7voto

Erresen Punkte 1923

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

Wenn Sie node.js gemäß der empfohlenen Methode aus dem Node GitHub Installationsleitfaden installieren, wird empfohlen, den Anweisungen im Nodesource Blog-Artikel zu folgen, anstatt aus dem veralteten apt-get-Repo zu installieren. Node.js sollte mit dem node-Befehl sowie dem nodejs-Befehl ausgeführt werden, ohne dass ein neuer Symlink erstellt werden muss.

Diese Methode aus dem Artikel lautet:

# Beachten Sie den neuen Setup-Skriptnamen für Node.js v0.12
curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -

# Dann installieren Sie mit:
sudo apt-get install -y nodejs

Beachten Sie, dass dies für v0.12 gilt, was wahrscheinlich in naher Zukunft veraltet sein wird.

Außerdem, wenn Sie sich hinter einem Firmenproxy befinden (wie ich), sollten Sie die -E-Option zum sudo-Befehl hinzufügen, um die für den Proxy erforderlichen Umgebungsvariablen beizubehalten:

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

7voto

kfblake Punkte 129

Zusätzlich zu der korrekten Antwort von @randunel (kann leider noch nicht auf SO kommentieren):

Ich musste auch einen Symlink von /usr/local/bin/node auf /usr/bin/nodejs erstellen.

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

Anscheinend hat dies den Befehl /usr/bin/node überschrieben.

Keine Ahnung, wie das passiert ist, aber ich hoffe, es hilft jemand anderem, da es für mich schwierig war herauszufinden, warum das oben Genannte für mich nicht funktioniert hat.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X