node: komut bulunamadı


46

nodeKomutun neden işe yaramayacağını anlamıyorum , oysa nodejsişe yarıyor:

$ node --version
zsh: command not found: node
$ nodejs --version
v0.10.15

Denedim apt-get install nodejs, ancak en son sürüm zaten yüklü.

Ve ayrıca:

$ npm
zsh: command not found: npm

npmNodeJS> 0.10'a dahil olduğunu düşündüm ?


bu yayın sorununuzu çözebilir mi [Stackoverflow] [1] [1]: stackoverflow.com/questions/13593902/node-command-not-found
Ahmed Al-battashi

@ AhmedAl-battashi Bu yardımcı olmuyor, zaten okudum. NodeJS, yüklü nodejsPATH olmakla nodeve npmbenim sistemde herhangi bir yerde onları bulamıyorum, kullanılamaz.
Matthieu Napoli

2
Tamamen emin değilim, ancak nodeikili kodun yeniden adlandırılmasının nedeninin node(Amatör Paket Radyo Düğüm Programı) adlı paketlerden biriyle çakışması nedeniyle olduğunu hatırlıyorum .
yjwong

Aradığına nodeve aradığına emin misin nodejs? nodedüşündüğün gibi değil.
Braiam

@Braiam nodegördüğüm her derste kullanılıyor
Matthieu Napoli

Yanıtlar:


43

nodePaket NodeJS ilgisi yoktur. DüğümDüğümü yükleyin hakkında daha fazla bilgi için buraya bakınız :

Amatör Paket Radyo Düğümü programı (geçici paket)


Bunun yerine nodejs Nodejs'i yüklepaketi yüklemelisiniz .

sudo apt-get install nodejs

daha sonra nodejskomut ile kullanın.

Neden nodeişe yaramazsa, nodeyukarıda bağlanan orijinal paketle olan çatışmalardan dolayı olasıdır .


İsterseniz npm Npm'yi yükle, onu da yüklemeniz gerekir.

sudo apt-get install npm

3
nodePaketi biliyordum , ancak bir isim paketinin komut satırı aracı üzerinde neden bir etkisi olduğunu anlamıyorum. Mesela ben yüklemem phpama php5-cli. Ancak cevap için teşekkürler, el ile yükleme npmbir sorun olup olmadığından emin değildi, görünüşe göre öyle değil.
Matthieu Napoli

2
nodejs-legacyPaketin kurulması ya nodeda kullanmanıza izin verir nodejs.
grooveplex

48

Katılıyorum, bu biraz sorun ama neden olduğunu bilmiyorum.

Çözüm

Öncelikle ilk önce sadece ikili nodeişaret olarak adlandırılan sembolik bir bağlantı oluşturun nodejs.

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

Sorun

Nodejs'i kurarken bulduğum birkaç rehber ( burada ve burada ), kurulumun doğru olup olmadığını test etmek için benzer kodlara sahip. Yani aslında şöyle basit bir sunucu oluşturun:

// hello_node.js
var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello Node.js\n');
}).listen(8124, "127.0.0.1");
console.log('Server running at http://127.0.0.1:8124/');

ve sonra aşağıdakilerle düğümlerde çalıştırın:

node hello_node.js

Ve sonra bir şey yüklemek için npm kullanmaya çalışırken, aynı node not foundmesajı veriyor ve rapor ediyordu .


Aynı problem var, sudo apt-get install npm ve ardından @jlouzado tavsiyesini takiben işi tamamladım. Şimdi iyi çalışıyor
user615274

5
Komik ipucu: hala üzerinde güvenilen "eski kod" ile uyumluluk için iddia edilen sembolik bağı sağlayan bir düğüm paketi var.
Simón

1
@ Simón Bunun sembolik bir bağlantı kurmaktan daha iyi bir çözüm olduğunu düşünüyorum.
grooveplex

Şimdi temelde Node.js. ile bir şey yapıyorsam yüklemem gereken 3 paketi sayıyorum. Bu bir Node.js kütüphanesini bir saattir kurmaya çalışıyorum.
sudo

Yükleyemedi asciicast2gifçünkü yükleme sırasında çalışıyor node install.jsve hatayı alıyorum sh: 1: node: not found. Bu onu düzeltir.
Vinayak

26

@ Minerz029 gibi zaten nodepaket ile bir çatışma olduğunu söyledi . Ancak yine de nodekomuta ihtiyacınız varsa (çünkü bir komut dosyası yalnızca nodeörneğin kullanırsa ), nodejs-legacypaketi yüklemenin doğru yolu :

apt-get install nodejs-legacy

ve kendi başınıza bir sembolik bağlantı oluşturmaz (özellikle içinde /usr/bin/). Bu, nodenodejs için bir komut sağlayacaktır .


2
İşe yarıyor. Bunun @ jlouzado'nun cevabından daha iyi olduğunu düşünüyorum.
Shawn Xie,

işletim sistemi kurulumunuzla sık sık "sıfırdan başlamasanız" .... apt in symlinks in bin komutunu yönetmesini sağlamak için ÇOK daha iyi. Teşekkürler!
mike

2

Bunu dene

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -

sudo apt-get install -y nodejs

:)


2
Neden en son sürümü curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
yüklemiyorsun ?

setup_6.x kararlıdır
MUHASIN BABU

Node.js sürüm 8 için LTS politikası şu anda LTS’yi beklemekte, birkaç ay içinde Ekim’de LTS olmaya başlıyor, Nisan 2019’da bakım dönemine başlıyor ve Aralık 2019’da bakımı bitiyor. Daha fazla bilgi için Bu cevap tabloya bakın askubuntu.com/questions/626383/...
Karel


0

nvmKullanıcılar için hızlı bir düzeltme . Kullandığım nvm(düğüm sürüm yöneticisi) ve kullanmak benim için npmhep önce kesmeniz gerekir komutu npmbu komutla nvm use 0.x(yerine 0.xile 0.11veya 0.10örneğin size kullanım istediğiniz sürümü).


0

Minerz029'un daha önce de belirtildiği gibi , nodejspaketin belirli sürümleri, nodedaha önce bu adı kullanan başka bir paket nedeniyle ikili işlevi sağlamaz . Çözüm, Düğümün kendi web sitesinde installatoin adımlarını takip etmek kadar basit:

Node.js'in paket yöneticisi ile kurulması | Debian ve Ubuntu tabanlı Linux dağıtımları

Şu anda, bu adımlar:

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

Ancak, en son sürümü kullandığınızdan emin olmak için kaynak bağlantısını kontrol etmek en iyisidir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.