GNU/Linux >> Linux Esercitazione >  >> Ubuntu

I moduli del nodo hanno 755 autorizzazioni, quali autorizzazioni dovrei impostare in modo che Npm non richieda Sudo?

Sto usando un framework che esegue npm e webpack automaticamente, la directory /usr/lib/node_modules dispone di 755 autorizzazioni che richiedono l'esecuzione di npm tramite sudo . Il framework che utilizzo non consente di aggiungere sudo al comando.

Ora ho bisogno di installare i pacchetti npm in forma globale (ad esempio, npm install webpack -g ) senza usare sudo .

Quali permessi andranno bene per /usr/lib/node_modules ? Se imposto i permessi 777 sarà OK e sicuro?

Grazie!

Risposta accettata:

Non è necessario modificare l'autorizzazione di npm per poterlo usare senza sudo . PER impostare npm da eseguire senza sudo segui questi passaggi:

Opzione 1:

  1. Ottieni il percorso della directory npm:

    npm config get prefix
    
  2. Se hai /usr vai all'opzione 2 altrimenti cambia il proprietario delle directory npm nella tua:

     sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
    

Opzione 2:

  1. Crea directory per installazioni globali:

    mkdir ~/.npm-global
    
  2. Configura per utilizzare quella directory:

    npm config set prefix '~/.npm-global'
    
  3. Apri o crea ~/.profile e aggiungi questo:

    export PATH=~/.npm-global/bin:$PATH
    
  4. Aggiungi questo anche al tuo ~/.bashrc file (facoltativo) :

    export PATH=/home/username/.npm-global/bin:$PATH
    export NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript:/home/username/.npm-global/lib/node_modules
    
  5. Aggiorna i file:

    source ~/.bashrc
    
  6. Prova eseguendo:

    npm install -g jshint
    

fonte:

https://docs.npmjs.com/getting-started/fixing-npm-permissions

http://www.competa.com/blog/how-to-run-npm-without-sudo/


Ubuntu
  1. Sudo:/var/lib/sudo/navneet scrivibile da non proprietario (040777), dovrebbe essere la modalità 0700?

  2. Come far funzionare Jshint?

  3. Node.js Conflitti:/sbin/node Vs /usr/bin/node?

  4. Quali dovrebbero essere i permessi ideali della home directory in Linux

  5. Con quale utente devono essere eseguiti apache e PHP? Quali autorizzazioni devono avere i file /var/www?

Come installare Node.js e NPM su Ubuntu 18.04

Come installare Node.js e Npm in Ubuntu?

Cosa fa sudo apt-get update

Installa Node.js 17 e NPM su Debian 11 Bullseye

Come configurare un server Apt-cacher?

Che cos'è un Homelab e perché dovresti averne uno?