Właśnie zainstalowałem NodeJS i NPM na Debian Jessie, stosując zalecane podejście:
apt-get install curl
curl -sL https://deb.nodesource.com/setup | bash -
apt-get install -y nodejs
Jest to jednak dość stara wersja (węzeł v0.10.38 i npm 1.4.28).
Wszelkie sugestie dotyczące najprostszego sposobu instalowania nowszych wersji, np. Obecnie węzłem jest v0.12.4, a npm to 2.7.4? Czy instalowanie ze źródła jest moim jedynym podejściem?
setup_4.x
... przerobić curl i apt-get ok?Możesz pobrać najnowszą wersję Node (
4.2.2
) z ich strony internetowej , zamiast używać pakietu, który zapewnia Debian (0.12
). Oznacza to również, że masz zaktualizowaną wersję npm. Nie miałem żadnych problemów z zrobieniem tego na Jessie.Pobierz
.tar.gz
z ich strony internetowej icd
do tego katalogu (nazwa pliku jest oczywiście specyficzna dla mojego pobierania):Jeśli zajrzysz do folderu bin, zobaczysz pliki binarne potrzebne dla węzła i npm:
Teraz zmieniłem nazwę folderu na coś łatwiejszego do śledzenia
Jeśli nie chcesz aktualizować węzła, po prostu przenieś ten folder do jednej z lokalizacji bin (używam
~/bin
) i pomiń następny krok.Jeśli chcesz mieć możliwość łatwej aktualizacji wersji swojego węzła, przenieś
nodejs
folder gdzieś, gdzie możesz go śledzić (~/nodejs
być może?). Następnie chcesz utworzyć dowiązanie symboliczne do jednej z lokalizacji bin, aby pliki binarne mogły być używane z powłoki bez zapisywania pełnej ścieżki.Zakładając, że umieścisz folder nodejs w katalogu domowym, możesz teraz:
Oczywiście może to być dowolne miejsce w pojemniku. Użyłem mojego katalogu domowego, więc jest on dostępny tylko dla mnie, ale możesz również łatwo:
Spowoduje to utworzenie dowiązania symbolicznego z folderu nodejs w katalogu domowym do katalogu bin (co oznacza, że wszelkie aktualizacje katalogu w folderze domowym są odzwierciedlane w folderze w innym miejscu za pośrednictwem łącza symbolicznego ). Teraz chcesz się upewnić, że folder bin zawierający katalog nodejs znajduje się w
$PATH
zmiennej środowiskowej , więc otwórz~/.profile
plik w katalogu domowym. Chcesz dodać to na dole tego pliku (zmieniając ścieżkę, jeśli nie używałeś~/bin/
):Spowoduje to sprawdzenie, czy katalog istnieje, a jeśli tak, to dodaj go do ŚCIEŻKI. Używam,
zsh
więc właśnie zaktualizowałem wiersz w~/.zshrc
:Zamknij terminal i ponownie otwórz, a następnie wpisz następujące polecenie, aby sprawdzić:
Utworzenie łącza sym oznacza teraz, że w przyszłości możesz pobrać nowy
.tar.gz
ze strony internetowej Nodejs, wyodrębnić go~/nodejs
, a pliki binarne dostępne dla twojej$PATH
zmiennej środowiskowej są automatycznie aktualizowane.źródło
w moim przypadku wykonałem zalecane polecenia powłoki:
problem polegał na tym, że skrypt bash nie zaktualizował mojego przypinania APT, więc apt-get zainstalował domyślny, stary pakiet Debiana ze źródła debian.org, a nie z nodesource.com
sprawdź, czy to jest problem z
apt-cache policy nodejs
. powinieneś zobaczyć coś takiegoCandidate: 6.10.2-1nodesource1~jessie1
a nieCandidate: 0.10.29~dfsg-2
aby ustawić priorytet pin dla źródła węzłów, dodaj plik o
/etc/apt/preferences.d/
nazwienode
lub cokolwiek z tą zawartością:zapisz i biegnij
apt-get cache update
. następnie spróbujapt-cache policy nodejs
ponownie. jeśli kandydat wygląda poprawnie, zainstaluj jak zwykleapt-get install nodejs
źródło
apt-get cache update
wróciłemE: Invalid operation cache
więc pobiegłemsudo aptitude update
.Możesz postępować zgodnie z oficjalną dokumentacją node.js, aby zainstalować najnowszą wersję za pomocą menedżera pakietów.
Node.js v6:
Node.js v7:
Działając na tym ostatnim, w moim systemie zainstalowano węzeł v7.5.0 i npm v4.1.2. Zarówno
node
inodejs
aliasy zostały włączone dla Węzła automatycznie.źródło
Możesz pobrać najnowsze pliki binarne systemu Linux (.tar.gz) z oficjalnej strony i użyć go https://stackoverflow.com/a/23084499/1197421
źródło