Я запускаю npm install lodash, но выдает ошибку: EACCES: разрешение отказано . Я знаю, что это проблема с разрешением, но, насколько мне известно, разрешение sudo не требуется для локальной установки модуля узла. Если я запустил его с помощью sudo, он будет установлен внутри папки ~ / node_modules. drwxrwxr-x - это права доступа к файлу существующей папки. Я не могу понять, что могло пойти не так.
Ниже сообщение об ошибке.
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
root?ls -l ~/Desktop | grep es6
убедитесь, что вы являетесь владельцем каталога es6Ответы:
Эта команда устраняет проблему. У меня сработало:
sudo npm install -g --unsafe-perm=true --allow-root
источник
v10.10.0
я получил следующую ошибку: «npm ERR! Не могу установить / var / www / project: отсутствует имя пакета»У меня такая же проблема с установкой сервера webpack по всему миру. Используйте шаги из этого URL- адреса. Моя проблема решена, я буду работать на вас.
Шаги, упомянутые выше. Здесь: сделайте резервную копию вашего компьютера перед запуском.
Тест: загрузить пакет глобально без использования sudo.
Вместо шагов 2-4 вы можете использовать соответствующую переменную ENV (например, если вы не хотите изменять ~ / .profile):
NPM_CONFIG_PREFIX=~/.npm-global
источник
У меня была проблема с Linux. я написал
в папке моего проекта.
источник
Создание package.json с помощью npm init решило мою проблему.
источник
Из того, что я вижу в ваших журналах, вы опубликовали:
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',
каталог
/home/rupesh/node_modules/
не имеет необходимых разрешений для создания каталога, поэтому запуститеchown -r rupesh:rupesh /home/rupesh/node_modules/
это должно решить эту проблему.источник
/home/rupesh/node_modules
. В любом случае работа в домашнем каталоге должна быть идеальнойloadash
модуль?У него нет прав на запись для
others
(rx). Попробуйте си повторить.
источник
chown
вас нет-r
возможности предотвратить использование его для каждой папки вnode_modules
?Это сразу решило мою проблему - mac Mojave 10.14.6 - PhpStorm.
Исходное сообщение: https://stackoverflow.com/a/50639828
источник
Попробуйте предоставить все разрешения для папки вашего проекта с помощью команды ниже
sudo chmod -R 777 /yourProjectDirectoryName
бежать с
источник
FWIW У меня были те же симптомы, но с другим пакетом. Создание
package.json
и запускnpm init
сделал НЕ решить мою проблему.В этой системе, очевидно, новые папки в этом месте создавались с правами root. В процессе
npm install
создаются новые папки. Это привело к частичному сбою npm install, даже с sudo.Решением было запустить
npm install app
в другом месте без корневой umask.источник
Связанная проблема:
Потратил 3 часа на несколько дней.
На машине AWS EC2 работало следующее:
Надеюсь, это поможет.
источник
Я решил эту проблему, изменив разрешение моего каталога npm. Я пошел в глобальный каталог npm, для меня это было в
/home/<user-name>
Я зашел в этот каталог, введя эту команду
cd /home/<user-name>
а затем изменил разрешение папки .npm, введя эту команду.
sudo chmod -R 777 ".npm"
На меня это подействовало как чары. Но здесь есть недостаток безопасности, то есть ваш глобальный каталог пакетов доступен для всех уровней.
источник
Сначала установите без -g (global) на root. После попытки использовать -g (global) у меня это сработало.
источник
LUBUNTU 19.10 / Выполняется та же проблема: $
npm start
дамп: Ошибка: EACCES: в разрешении отказано, откройте '/home/simon/xxx/pagebuilder/resources/scripts/registration/node_modules/.cache/@babel/register/.babel.7.4.0.development.json' в Object. fs.openSync (fs.js: 646: 18) в Object.fs.writeFileSync (fs.js: 1299: 33) при сохранении (/ home / simon / xxx / pagebuilder / resources / scripts / registration / node_modules / @ babel / register / lib / cache.js: 52: 15) в _combinedTickCallback (internal / process / next_tick.js: 132: 7) в process._tickCallback (internal / process / next_tick.js: 181: 9) в Function.Module.runMain (module.js: 696: 11) в Object. (/home/simon/xxxx/pagebuilder/resources/scripts/registration/node_modules/@babel/node/lib/_babel-node.js:234:23) в Module._compile (module.js: 653: 30) в Object .Module._extensions..js (module.js: 664: 10) в Module.load (module.js: 566: 32)
Похоже, у моего пользователя по умолчанию (администратора) не было прав на каталоги узлов и модулей.
Это исправило это для меня!
$ sudo chmod a+w node_modules -R ## from project root
источник
Попробуйте использовать это: в командной строке в вашем домашнем каталоге создайте каталог для глобальных установок:
mkdir ~/.npm-global
Настройте npm для использования нового пути к каталогу:
npm config set prefix '~/.npm-global'
В предпочитаемом текстовом редакторе откройте или создайте файл ~ / .profile и добавьте эту строку:
export PATH=~/.npm-global/bin:$PATH
В командной строке обновите системные переменные:
Протестируйте установку пакета по всему миру без использования sudo, надеюсь, это поможет
источник
Вот решение для GNU / Linux (Debian) пользователей (Заменить USERNAME с Вашим именем пользователя ):
источник
Удалите папку dist, и это решит мою проблему !!
источник
В Windows оказалось, что порт уже использовался IIS.
Остановка IIS (щелкните правой кнопкой мыши, выйти), решила проблему.
источник
Просто измените владельца глобального
node_modules
каталога на своего пользователя:источник
Я попробовал большинство из этих предложений, но ни одно из них не помогло. Затем я побежал,
npm clean-install
и это решило мои проблемы.источник
node рекомендует выполнить следующее:
Если вы выполните
Вы увидите что-то вроде этого
│ 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 │
У меня это сработало.
источник
нам нужно предоставить права на запись в эту папку, используя:
sudo chmod 777 path-to-directory
путь к каталогу в этом проекте был (/ home / ubuntu / blog / server)
источник
Если вы получаете сообщение об ошибке, как показано ниже
Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/<PackageName>/vendor'
Я предлагаю использовать следующую команду для установки вашего глобального пакета
sudo npm install -g <PackageName> --unsafe-perm=true --allow-root
источник
sudo chmod -R 777 /usr/local/bin sudo chmod -R 777 /usr/local/lib/node_modules
источник
/usr/local
всех подкаталогов права должныrwxr-xr-x
принадлежать пользователю root. Пользователи системы могут читать и выполнять в этой структуре каталога, но не могут редактировать и создавать файлы. При этом ваш ответ предлагает дать разрешения всем. Причем без описания того, как и что будет затронуто, или почему проблема будет решена.