Как исправить установку npm в Linux? - PullRequest
0 голосов
/ 24 сентября 2019

Я пытаюсь использовать npm install для установки пакета, но я получаю сообщение об ошибке ниже.

Я попытался обновить и загрузить снова из root, но, похоже, ничего не работает.

hackathonday1-2 git:(save-button) ✗ npm install file-saver --save

npm WARN checkPermissions Отсутствует доступ на запись к / home / salman / node_modules / axios npm WARN checkPermissions Отсутствует доступ на запись к / home / salman / node_modules / coffeescript npm WARN checkPermissions Отсутствует доступ на запись к /home / salman / node_modules / coffee-script npm ПРЕДУПРЕЖДЕНИЕ checkPermissions Отсутствует доступ на запись к / home / salman / node_modules / file-saver npm WARN checkPermissions Отсутствует доступ на запись к / home / salman / node_modules / materialize-css npm ПРЕДУПРЕЖДАЕТ ENOENT ENOENT: нет такихфайл или каталог, откройте '/home/salman/package.json' npm WARN salman Нет описания npm WARN salman Нет поля репозитория.npm WARN salman Нет README данных npm WARN salman Нет поля лицензии.

npm ERR!код EACCES npm ERR!доступ к системному вызову npm ERR!путь / home / salman / node_modules / axios npm ERR!errno -13 npm ERR!Ошибка: EACCES: в доступе отказано, доступ '/ home / salman / node_modules / axios' npm ERR![Ошибка: EACCES: доступ запрещен, доступ '/ home / salman / node_modules / axios'] {npm ERR!стек: «Ошибка: EACCES: разрешение запрещено, доступ '/ home / salman / node_modules / axios'», npm ERR!errno: -13, npm ERR!код: 'EACCES', npm ERR!системный вызов: «доступ», npm ERR!путь: '/ home / salman / node_modules / axios' npm ERR!} npm ERR!нпм ERR!Операция была отклонена вашей операционной системой.нпм ERR!Скорее всего, у вас нет прав доступа к этому файлу, поскольку текущий пользователь npm ERR!нпм ERR!Если вы считаете, что это может быть проблема с разрешениями, пожалуйста, проверьте nrr ERR!права доступа к файлу и содержащим его каталогам, или попробуйте запустить npm ERR!введите команду снова как root / Administrator.

npm ERR!Полный журнал этого прогона можно найти в: npm ERR!
/home/salman/.npm/_logs/2019-09-24T03_37_30_909Z-debug.log

Ответы [ 3 ]

2 голосов
/ 24 сентября 2019

Если в Linux есть ошибка разрешения для установки npm, вы можете попробовать включить sudo в начале команды.sudo npm install.Также убедитесь, что на вашем компьютере глобально установлен node.js.Также убедитесь, что у вас есть папка package.json.

1 голос
/ 24 сентября 2019

Это просто жалоба на то, что у вас нет папок /home/salman/node_modules/axios, /home/salman/node_modules/file-saver и т. Д. Поскольку это ваш домашний каталог, на самом деле не должно быть никаких каталогов или файлов, в которых вы не владеете/home/salman.Я предполагаю, что это произошло потому, что вы запустили npm с sudo, заставив его создать в вашей домашней папке некоторые файлы, принадлежащие root вместо salman.

.просто верните себе право владения папкой node_modules:

cd /home/salman
sudo chown -R salman:salman node_modules

Флаг -R заставляет chown рекурсивно устанавливать вас как владельца для всех файлов и подпапок в каталоге.

Примечание: вы не должны использовать свой домашний каталог в качестве каталога проекта npm.Устанавливаем npm в отдельных каталогах проекта.Да, это растрачивает место на диске, но дисковое пространство дешево и может быть потрачено впустуюДаже если у вас есть 10 проектов node.js, вы вряд ли будете использовать более 5 ГБ дискового пространства, даже если есть много файлов с дублирующимся кодом.Один фильм HD иногда больше, чем это.Типичное использование дискового пространства для кода составляет около 2 ГБ.

0 голосов
/ 24 сентября 2019
sudo chown -R $USER /home/salman/node_modules

Эта команда полезна .. Запустите ее в своей системе ..

...