GNU/Linux >> Znalost Linux >  >> Linux

Jak spravovat verze Nodejs pomocí n v Linuxu

Tato příručka vám poskytuje stručný úvod do "n" , neoficiální nástroj pro správu verzí uzlů a poté vysvětluje, jak snadno spravovat verze nodejs pomocí n v operačních systémech Linux.

Co je n, správce verzí uzlu?

NodeJS nevyžaduje úvod. Nodejs je běhové prostředí pro JavaScript postavené na enginu V8 společnosti Google. Nodejs přichází s vestavěným správcem balíčků s názvem npm k instalaci a správě verzí uzlů a existuje také mnoho nástrojů třetích stran pro správu verzí uzlů. n je jedním z nástrojů pro správu verzí uzlů třetí strany. Ano, je to jen jedno písmeno - n.

n je interaktivní správce verzí uzlů pro snadnou správu jedné nebo více verzí NodeJS! Žádné dílčí shelly, žádné nastavení profilu, žádné spletité API, žádná křivka učení, je to prostě jednoduché nářadí. Je to pouze shell skript a jeho kód je volně dostupný na GitHubu.

1. Nainstalujte n v Linuxu

Nejjednodušší způsob instalace n je přes npm . Jak již bylo řečeno, Npm je vestavěný správce balíčků pro Nodejs a je dodáván s předinstalovaným Nodejs.

Předpokládám, že na svém linuxovém stroji již máte nejnovější Nodejs. Pokud jste ještě nenainstalovali NodeJS, postupujte podle následujícího průvodce:

  • Jak nainstalovat NodeJS na Linux

Dále spusťte následující příkaz pro instalaci n v Linuxu:

$ npm install -g n

Pokud npm není k dispozici nebo nechcete instalovat n pomocí npm, můžete přímo chytit skript n z GitHubu a nainstalovat jej následovně:

$ curl -L https://raw.githubusercontent.com/tj/n/master/bin/n -o n
$ bash n lts

Tím se nainstalují oba node Verze a npm .

1.2. Vytvořte domovský adresář pro instalaci uzlu

Ve výchozím nastavení n instaluje node pod n/versions podadresář /usr/local/ adresář, který je definován v N_PREFIX proměnná prostředí. Jak již víte, vyžadujeme sudo oprávnění k instalaci uzlu pod /usr/local/n/versions/node/ adresář. Chcete-li se vyhnout použití sudo , můžete vytvořit vyhrazený adresář pro instalaci uzlů v $HOME a přidat je do PATH .

Chcete-li vytvořit domovský adresář pro instalaci uzlu, upravte soubor svého uživatelského profilu, například ~/.bashrc :

$ vi ~/.bashrc

Přidejte následující řádky:

export N_PREFIX=$HOME/.n
export PATH=$N_PREFIX/bin:$PATH

Stiskněte ESC a zadejte :wq pro uložení souboru a ukončení.

1.3. Nainstalujte n pomocí skriptu n-install

Další způsob instalace n je pomocí n-install skript, který nainstaluje n přímo z GitHubu.

$ curl -L https://git.io/n-install | bash

Tento příkaz provede následující sadu úkolů:

  • Nejprve nastaví obě PREFIX a N_PREFIX na $HOME/n;
  • A nainstaluje n do $HOME/n/bin;
  • Dále upraví inicializační soubory podporovaných shellů tak, aby exportovaly N_PREFIX;
  • Potom přidá $HOME/n/bin na PATH;
  • Nakonec nainstaluje nejnovější verzi LTS Node.js.

2. Spravujte verze nodejs pomocí n v Linuxu

Instalace a správa verzí nodejs s n je docela snadná! Podívejme se na několik příkladů.

2.1. Získání nápovědy

Pokud s n začínáte, pravděpodobně bude dobrý nápad vyvolat sekci nápovědy a naučit se používat n.

Chcete-li zobrazit nápovědu k n, jednoduše spusťte:

$ n --help

Projděte si nápovědu a získejte letmý pohled na použití jednotlivých příkazů.

 Usage: n [options] [COMMAND] [args]
 Commands:
 n                              Display downloaded Node.js versions and install selection
   n latest                       Install the latest Node.js release (downloading if necessary)
   n lts                          Install the latest LTS Node.js release (downloading if necessary)
   n                     Install Node.js  (downloading if necessary)
   n install             Install Node.js  (downloading if necessary)
   n run  [args …]     Execute downloaded Node.js  with [args …]
   n run  [args …]     Execute downloaded node  with [args …]
   n which               Output path for downloaded node 
   n exec   [args…]  Execute command with modified PATH, so downloaded node  and npm first
   n rm              Remove the given downloaded version(s)
   n prune                        Remove all downloaded versions except the installed version
   n --latest                     Output the latest Node.js version available
   n --lts                        Output the latest LTS Node.js version available
   n ls                           Output downloaded versions
   n ls-remote [version]          Output matching versions available for download
   n uninstall                    Remove the installed Node.js
 Options:
 -V, --version         Output version of n
   -h, --help            Display help information
   -p, --preserve        Preserve npm and npx during install of Node.js
   -q, --quiet           Disable curl output (if available)
   -d, --download        Download only
   -a, --arch            Override system architecture
   --all                 ls-remote displays all matches instead of last 20
   --insecure            Turn off certificate checking for https requests (may be needed from behind a proxy server)
   --use-xz/--no-use-xz  Override automatic detection of xz support and enable/disable use of xz compressed node downloads.
 Aliases:
 install: i
   latest: current
   ls: list
   lsr: ls-remote
   lts: stable
   rm: -
   run: use, as
   which: bin
 Versions:
 Numeric version numbers can be complete or incomplete, with an optional leading 'v'.
   Versions can also be specified by label, or codename,
   and other downloadable releases by /
 4.9.1, 8, v6.1    Numeric versions lts               Newest Long Term Support official release latest, current   Newest official release auto              Read version from file: .n-node-version, .node-version, .nvmrc, or package.json engine            Read version from package.json boron, carbon     Codenames for release streams lts_latest        Node.js support aliases and nightly, rc/10 et al

2.2. Nainstalujte verze Nodejs pomocí n

Chcete-li nainstalovat nejnovější verzi nodejs pomocí n , jednoduše spusťte:

$ n latest

Ukázkový výstup:

 installing : node-v16.2.0
        mkdir : /home/ostechnix/.n/n/versions/node/16.2.0
        fetch : https://nodejs.org/dist/v16.2.0/node-v16.2.0-linux-x64.tar.xz
    installed : v16.2.0 (with npm 7.13.0)
 Note: the node command changed location and the old location may be remembered in your current shell.
          old : /home/ostechnix/.nvm/versions/node/v16.1.0/bin/node
          new : /home/ostechnix/.n/bin/node
 To reset the command location hash either start a new shell, or execute PATH="$PATH"

Stará verze uzlu bude přesunuta do nového umístění, tj. /home/ostechnix/.n/bin/node v mém případě. Otevřete novou relaci prostředí nebo restartujte relaci terminálu, abyste mohli použít verzi uzlu z nového umístění.

Zkontrolujte nainstalovanou verzi uzlu:

$ node --version
v16.2.0

Zkontrolujte verzi npm:

$ npm -v
7.13.0

Podobně můžete nainstalovat verzi uzlu LTS pomocí n jako níže:

$ n lts

Ukázkový výstup:

    installing : node-v14.17.0
        mkdir : /home/ostechnix/.n/n/versions/node/14.17.0
        fetch : https://nodejs.org/dist/v14.17.0/node-v14.17.0-linux-x64.tar.xz
    installed : v14.17.0 (with npm 6.14.13)

Můžete také nainstalovat konkrétní verzi Nodejs, například 16.0.0 pomocí příkazu:

$ n 16.0.0

Jak jste si možná všimli, n vytváří samostatné adresáře pro každou verzi uzlu. Například vytvoří /home/ostechnix/.n/n/versions/node/16.2.0 adresář pro nejnovější verzi uzlu, n/versions/node/14.17.0 pro verzi uzlu LTS a n/versions/node/16.0.0 pro uzel verze 16.0.0. Tímto způsobem zachovává, že se jednotlivé verze vzájemně nemíchají a my můžeme kdykoli přejít na jakoukoli verzi.

2.3. Stáhněte si verze Nodejs, ale neinstalujte

Pokud nechcete instalovat verzi Nodejs, ale chcete si ji pouze stáhnout, použijte -d , --download možnost:

$ n -d 15.8.0

Tento příkaz pouze stáhne verzi uzlu 15.8.0, ale nenainstaluje ji.

Ukázkový výstup:

 installing : node-v15.8.0
        mkdir : /home/ostechnix/.n/n/versions/node/15.8.0
        fetch : https://nodejs.org/dist/v15.8.0/node-v15.8.0-linux-x64.tar.xz

2.4. Seznam místně stažených verzí Nodejs

Chcete-li zobrazit všechny stažené verze Nodejs v místní mezipaměti, jednoduše spusťte:

$ n ls

Nebo,

$ n list

Ukázkový výstup:

 node/14.17.0
 node/15.8.0
 node/16.0.0
 node/16.2.0

2.5. Seznam dostupných verzí Nodejs ze vzdáleného úložiště

Můžeme použít ls-remote možnost zobrazit posledních 20 verzí Nodejs z registru npm .

$ n ls-remote

Nebo,

$ n lsr

Ukázkový výstup:

 Listing remote… Displaying 20 matches (use --all to see all).
 16.2.0
 16.1.0
 16.0.0
 15.14.0
 15.13.0
 15.12.0
 15.11.0
 15.10.0
 15.9.0
 15.8.0
 15.7.0
 15.6.0
 15.5.1
 15.5.0
 15.4.0
 15.3.0
 15.2.1
 15.2.0
 15.1.0
 15.0.1

Nejnovější verze se zobrazí nahoře.

Ve výchozím nastavení uvádí 20 verzí. Můžete také zobrazit určitý počet verzí uzlů.

$ n lsr 10

Chcete-li zobrazit všechny dostupné verze nodejs, použijte --all možnost.

$ n ls-remote --all

2.6. Zobrazte cestu ke stažené verzi Nodejs

Chcete-li vytisknout úplnou cestu ke konkrétní stažené verzi uzlu, spusťte:

$ n which node/16.2.0

Ukázkový výstup:

/home/ostechnix/.n/n/versions/node/16.2.0/bin/node

2.7. Přepnout verze Nodejs

Poslední nainstalovaná verze bude výchozí verzí uzlu. Pokud chcete přejít na jinou verzi, napište n a vyberte verzi ze seznamu stažených verzí uzlů.

$ n

Tento příkaz zobrazí všechny stažené verze nodejs. Můžete si vybrat požadovanou verzi pomocí šipek nahoru/dolů a stisknutím klávesy ENTER ji nainstalovat.

    node/14.17.0
    node/15.8.0
  ο node/16.0.0
    node/16.2.0

 Use up/down arrow keys to select a version, return key to install, d to delete, q to quit

Výchozí verze je označena malým kroužkem před ní.

Pokud nechcete konkrétní staženou verzi nodejs, jednoduše ji vyberte a stiskněte d smazat to. Pro ukončení stiskněte q .

2.8. Spusťte staženou verzi Nodejs

Jak již bylo uvedeno, poslední nainstalovaná verze je výchozí verzí uzlu. Pokud chcete spustit jinou verzi, aniž byste ji nastavili jako výchozí, můžete použít tento příkaz:

$ n run 15.8.0

Ukázkový výstup:

Welcome to Node.js v15.8.0.
 Type ".help" for more information.
  >  

Stiskněte Ctrl+D nebo zadejte .exit pro ukončení výzvy uzlu.

2.9. Odebrat stažené verze Nodejs

Vypište, kolik verzí uzlů je staženo pomocí příkazu:

$ n ls

Chcete-li odebrat konkrétní verzi, stačí uvést její číslo verze, jak je uvedeno níže:

$ n rm node/16.0.0

Případně zadejte n k zobrazení dostupných verzí uzlů:

$ n

Pomocí šipek nahoru/dolů vyberte verzi, kterou chcete odstranit, a stiskněte d smazat to. Při odstraňování verze uzlu musíte být opatrní. Protože nebudete vyzváni k potvrzení smazání. Jakmile stisknete d tlačítkem vybraná verze zmizí.

Chcete-li odebrat všechny stažené verze kromě nainstalované verze, spusťte:

$ n prune

Chcete-li zcela odebrat nainstalovanou verzi Nodejs, spusťte:

$ n uninstall

Budete dotázáni, zda chcete ze systému odstranit Node i Npm. Zadejte y a stiskněte ENTER klíč pro úplné odstranění node a npm nainstalován n z vašeho systému.

 Do you wish to delete node and npm from /home/ostechnix/.n? y
 Uninstalling node and npm
 /home/ostechnix/.n/bin/node
 /home/ostechnix/.n/bin/npm
 /home/ostechnix/.n/bin/npx
 /home/ostechnix/.n/include/node
 /home/ostechnix/.n/lib/node_modules/npm
 /home/ostechnix/.n/share/doc/node
 /home/ostechnix/.n/share/man/man1/node.1
 /home/ostechnix/.n/share/systemtap/tapset/node.stp

To však neodstraní verzi uzlu nainstalovanou pomocí NVM nebo vašeho správce distribučních balíčků. Odebere pouze verze uzlů, které jsou nainstalovány s n.

Závěr

Skript n bude užitečný, když chcete použít jinou verzi Nodejs pro jiný projekt. Pro každý projekt nemusíte odstraňovat jednu verzi Nodejs a instalovat jinou. Můžete nainstalovat více verzí Nodejs a okamžitě přejít z jedné verze Nodejs na druhou.


Linux
  1. Jak spravovat možnosti souborů Linux

  2. Jak spravovat heslo účtu v Linuxu

  3. Jak spravovat verze NodeJS s n v Ubuntu 20.04

  1. Jak spravovat služby Systemd pomocí Systemctl v systému Linux

  2. Jak spravovat více verzí Pythonu pomocí Pyenv v systému Linux

  3. Jak spravovat swapovací oddíl v Linuxu

  1. Jak nainstalovat NodeJS na Linux

  2. Jak spravovat uživatele pomocí useradd v linuxu

  3. Jak nainstalovat a spravovat verze Java na Rocky Linux 8