Biegnę npm zainstalować lodash ale wyrzuca błąd: EACCES: permission denied błąd. Wiem, że jest to problem z uprawnieniami, ale o ile wiem, uprawnienia sudo nie są wymagane do lokalnej instalacji modułu węzła. Jeśli uruchomię go z sudo, zostanie zainstalowany w folderze ~ / node_modules. drwxrwxr-x to uprawnienie do pliku istniejącego folderu. Nie wiem, co mogło pójść nie tak.
Poniżej znajduje się komunikat o błędzie.
npm ERR! tar.unpack untar error /home/rupesh/.npm/lodash/4.13.1/package.tgz
npm ERR! Linux 3.13.0-88-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "lodash"
npm ERR! node v4.3.1
npm ERR! npm v2.14.12
npm ERR! path /home/rupesh/node_modules/lodash
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall mkdir
npm ERR! Error: EACCES: permission denied, mkdir '/home/rupesh/node_modules/lodash'
npm ERR! at Error (native)
npm ERR! { [Error: EACCES: permission denied, mkdir '/home/rupesh/node_modules/lodash']
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'mkdir',
npm ERR! path: '/home/rupesh/node_modules/lodash',
npm ERR! fstream_type: 'Directory',
npm ERR! fstream_path: '/home/rupesh/node_modules/lodash',
npm ERR! fstream_class: 'DirWriter',
npm ERR! fstream_stack:
npm ERR! [ '/usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:35:25',
npm ERR! '/usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:47:53',
npm ERR! 'FSReqWrap.oncomplete (fs.js:82:15)' ] }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! Please include the following file with any support request:
npm ERR! /home/rupesh/Desktop/es6/npm-debug.log
node_modules
głównego?ls -l ~/Desktop | grep es6
upewnij się, że jesteś właścicielem katalogu es6Odpowiedzi:
To polecenie rozwiązuje problem. U mnie zadziałało:
sudo npm install -g --unsafe-perm=true --allow-root
źródło
v10.10.0
otrzymałem następujący błąd: "npm ERR! Nie można zainstalować / var / www / project: Brak nazwy pakietu"Mam ten sam problem z instalacją serwera WebPack na całym świecie. Użyj kroków z tego adresu URL Rozwiązałem mój problem, moja praca dla Ciebie.
Kroki wymienione powyżej Tam: Utwórz kopię zapasową komputera przed rozpoczęciem.
Test: pobierz pakiet globalnie bez używania sudo.
Zamiast kroków 2-4 możesz użyć odpowiedniej zmiennej ENV (np. Jeśli nie chcesz modyfikować ~ / .profile):
NPM_CONFIG_PREFIX=~/.npm-global
źródło
Miałem problem z Linuksem. napisałem
w folderze mojego projektu.
źródło
Utworzenie package.json przy użyciu npm init rozwiązało mój problem.
źródło
Z tego, co widzę w opublikowanych przez Ciebie dziennikach:
npm ERR! code: 'EACCES', npm ERR! syscall: 'mkdir', npm ERR! path: '/home/rupesh/node_modules/lodash', npm ERR! fstream_type: 'Directory', npm ERR! fstream_path: '/home/rupesh/node_modules/lodash', npm ERR! fstream_class: 'DirWriter',
katalog
/home/rupesh/node_modules/
nie ma niezbędnych uprawnień do tworzenia katalogu, więc uruchomieniechown -r rupesh:rupesh /home/rupesh/node_modules/
tego powinno rozwiązać problem.źródło
/home/rupesh/node_modules
z jakiegoś powodu. Praca w twoim katalogu domowym i tak powinna być idealnaloadash
moduł?Nie ma uprawnień do zapisu dla
others
(rx). Spróbuj zi powtórz.
źródło
chown
ma-r
opcji, aby zapobiec konieczności używania go w każdym folderze wnode_modules
?To od razu rozwiązało mój problem - mac Mojave 10.14.6 - PhpStorm.
Oryginalny post: https://stackoverflow.com/a/50639828
źródło
Spróbuj nadać wszystkie uprawnienia do folderu swojego projektu za pomocą poniższego polecenia
sudo chmod -R 777 /yourProjectDirectoryName
Biegnij z
źródło
FWIW Miałem te same objawy, ale z innym opakowaniem. Tworzenie
package.json
i prowadzenienpm init
zrobił NIE rozwiązać mój problem.W tym systemie najwyraźniej tworzone były nowe foldery w tej lokalizacji z uprawnieniami roota. Podczas
npm install
tworzone są nowe foldery. To spowodowało, że instalacja npm zakończyła się niepowodzeniem, nawet w przypadku sudo.Rozwiązaniem było uruchomienie
npm install app
w innym miejscu bez umaski korzenia.źródło
Powiązany problem:
Zmarnowane 3 godziny obejmujące kilka dni.
Na maszynie AWS EC2 działało poniżej:
Mam nadzieję, że to pomoże.
źródło
Rozwiązałem ten problem, zmieniając uprawnienia do mojego katalogu npm. Poszedłem do globalnego katalogu npm dla mnie był pod adresem
/home/<user-name>
Poszedłem do tego katalogu, wpisując to polecenie
cd /home/<user-name>
a następnie zmienił uprawnienia do folderu .npm, wprowadzając to polecenie.
sudo chmod -R 777 ".npm"
Dla mnie zadziałało jak urok. Ale jest w tym luka w zabezpieczeniach, tzn. Twój globalny katalog pakietów jest dostępny na wszystkich poziomach.
źródło
Najpierw zainstaluj bez -g (globalne) na root. Po próbie użycia -g (globalne) zadziałało dla mnie.
źródło
LUBUNTU 19.10 / Ten sam problem działa: $
npm start
dump: Błąd: EACCES: odmowa pozwolenia, otwórz „/home/simon/xxx/pagebuilder/resources/scripts/registration/node_modules/.cache/@babel/register/.babel.7.4.0.development.json” w Object. fs.openSync (fs.js: 646: 18) w Object.fs.writeFileSync (fs.js: 1299: 33) w save (/ home / simon / xxx / pagebuilder / resources / scripts / registration / node_modules / @ babel / register / lib / cache.js: 52: 15) w _combinedTickCallback (internal / process / next_tick.js: 132: 7) w process._tickCallback (internal / process / next_tick.js: 181: 9) w Function.Module.runMain (module.js: 696: 11) w Object. (/home/simon/xxxx/pagebuilder/resources/scripts/registration/node_modules/@babel/node/lib/_babel-node.js:234:23) at Module._compile (module.js: 653: 30) at Object .Module._extensions..js (module.js: 664: 10) w Module.load (module.js: 566: 32)
Wygląda na to, że mój domyślny użytkownik (administrator) nie miał uprawnień do katalogów modułów węzłów.
To naprawiło to dla mnie!
$ sudo chmod a+w node_modules -R ## from project root
źródło
Spróbuj tego: W wierszu poleceń, w swoim katalogu domowym, utwórz katalog dla instalacji globalnych:
mkdir ~/.npm-global
Skonfiguruj npm, aby używał nowej ścieżki katalogu:
npm config set prefix '~/.npm-global'
W wybranym edytorze tekstu otwórz lub utwórz plik ~ / .profile i dodaj ten wiersz:
export PATH=~/.npm-global/bin:$PATH
W wierszu poleceń zaktualizuj zmienne systemowe:
Przetestuj instalację pakietu na całym świecie bez używania sudo. Mam nadzieję, że to pomoże
źródło
Oto rozwiązanie dla GNU / Linux (Debian) użytkownicy (Wymień USERNAME z nazwą użytkownika ):
źródło
Usuń folder dist i to rozwiązuje mój problem !!
źródło
W systemie Windows okazało się, że port był już używany przez IIS.
Zatrzymanie usług IIS (kliknięcie prawym przyciskiem myszy, wyjście) rozwiązało problem.
źródło
Po prostu zmień właściciela
node_modules
katalogu globalnego na swojego użytkownika:źródło
Wypróbowałem większość tych sugestii, ale żadna z nich nie zadziałała. Potem pobiegłem
npm clean-install
i to rozwiązało moje problemy.źródło
node zaleca wykonanie następujących czynności:
Jeśli wykonasz
Zobaczysz coś takiego
│ npm update check failed │ │ Try running with sudo or get access │ │ to the local update config store via │ │ sudo chown -R $USER:$(id -gn $USER) /home/venkatesh/.config │
U mnie to zadziałało.
źródło
musimy nadać uprawnienia do zapisu w tym folderze za pomocą:
sudo chmod 777 path-to-directory
ścieżka-do-katalogu w tym projekcie to (/ home / ubuntu / blog / server)
źródło
Jeśli pojawi się błąd jak poniżej
Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/<PackageName>/vendor'
Sugeruję użycie poniższego polecenia, aby zainstalować pakiet globalny
sudo npm install -g <PackageName> --unsafe-perm=true --allow-root
źródło
sudo chmod -R 777 /usr/local/bin sudo chmod -R 777 /usr/local/lib/node_modules
źródło
/usr/local
i wszystkich podkatalogów uprawnienia powinny należećrwxr-xr-x
do użytkownika root. Użytkownicy systemu mogą czytać i wykonywać w ramach tej struktury katalogu, ale nie mogą edytować, tworzyć plików. Biorąc to pod uwagę, Twoja odpowiedź sugeruje udzielenie uprawnień wszystkim. I bez opisywania, w jaki sposób i na co to wpłynie, ani dlaczego problem zostanie rozwiązany.