Подтвердить что ты не робот

Ошибка: EPERM: операция не разрешена, unlink 'D:\Sources\**\node_modules\fsevents\node_modules\abbrev\package.json'

Я только что обновил npm до 5.4.0.
Теперь, когда я хочу установить пакет npm, я получаю следующую ошибку:

D:\Sources\DownloadCms\Md.Download\Web.Angular>npm install [email protected] --save
npm ERR! path D:\Sources\DownloadCms\Md.Download\Web.Angular\node_modules\fsevents\node_modules\abbrev\package.json
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall unlink
npm ERR! Error: EPERM: operation not permitted, unlink 'D:\Sources\DownloadCms\Md.Download\Web.Angular\node_modules\fsevents\node_modules\abbrev\package.json'
npm ERR!     at Error (native)
npm ERR!  { Error: EPERM: operation not permitted, unlink 'D:\Sources\DownloadCms\Md.Download\Web.Angular\node_modules\fsevents\node_modules\abbrev\package.jso
n'
npm ERR!     at Error (native)
npm ERR!   stack: 'Error: EPERM: operation not permitted, unlink \'D:\\Sources\\DownloadCms\\Md.Download\\Web.Angular\\node_modules\\fsevents\\node_modules\\ab
brev\\package.json\'\n    at Error (native)',
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'unlink',
npm ERR!   path: 'D:\\Sources\\DownloadCms\\Md.Download\\Web.Angular\\node_modules\\fsevents\\node_modules\\abbrev\\package.json' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Mohammad\AppData\Roaming\npm-cache\_logs\2017-09-03T03_25_50_432Z-debug.log

Я уверен, запустите CMD как администратор.

Также я проверил D:\Sources\DownloadCms\Md.Download\Web.Angular\node_modules\fsevents\node_modules\abbrev\package.json\, package.json не существует в пути!

Edit: Обновите версию v5.4.1, все равно получите ту же ошибку, даже не можете работать с --no-optional: - (

4b9b3361

Ответ 1

Это проблема npm 5.4.0 https://github.com/npm/npm/issues/18287

Временные решения

  • понижение до 5.3
  • попробуйте запустить с --no-optional, т.е. npm install --no-optional

Ответ 2

Я смог это исправить, запустив командную строку /bash от имени администратора и закрыв VSCode! Похоже, что VSCode блокировал некоторые файлы. Возможно, что-то еще может заблокировать эти файлы для вас.

Ответ 3

Если вы переходите к 5.3 и по-прежнему получаете ту же ошибку в Windows, как я.
После нескольких часов работы с версиями npm я нашел следующее решение:

1. Загрузите последнюю рекомендованную версию nodejs, в наши дни это node-v6.11.3-x64
2. Удалите с ним nodejs.
3. Перейдите в папку C:\Users\{YourUsername}\AppData\Roaming и удалите папки npm и npm-cache
4. Запустите установщик nodejs и установите его
5 Обновить npm до 5.3 с помощью командной строки npm i -g [email protected]

Теперь вы должны использовать npm без каких-либо проблем.

Ответ 4

Я исправлен путем понижения npm с 5.4.0 до версии 5.3

npm i -g [email protected]

Надеюсь, это поможет вам.

Ответ 5

У меня была та же проблема, и все, что мне нужно было сделать, это войти в npm

npm login

или в качестве альтернативы

npm add user//обратитесь к документации по параметрам

Ответ 6

Я попробовал это решение, найденное в блоге Как исправить Node.js

просто используйте

npm cache clean

в окнах, если он отказывается от использования

npm cache clean --force

Ответ 7

У меня была такая же проблема на Windows.

Источник проблемы прост, это разрешение на доступ к папкам и файлам.

В папке вашего проекта вам нужно

  1. После клонирования проекта измените свойства папки и измените права доступа пользователя (предоставьте полный доступ текущему пользователю).
  2. Удалите опцию только для чтения из папки проекта. (Шаги 1 и 2 занимают много времени, потому что они реплицируются на все дерево ниже).
  3. Внутри папки проекта переустановите узел (npm install reinstall -g)
  4. Отключить антивирус. (необязательный)
  5. Отключить брандмауэр. (необязательный)
  6. Перезагрузите компьютер.
  7. Очистить кэш npm (очистить npm)
  8. Установите зависимости вашего проекта (npm install)

После этого ошибка " Ошибка: EPERM: операция не разрешена, отсоединение " больше не будет отображаться.

Не забудьте активировать брандмауэр и антивирус при необходимости.

Ответ 8

Для меня он работал в пакете bash из git попробуйте:

C:\Program Files\Git\bin\bash.exe

то

npm install [email protected]

Ответ 9

Кажется, есть много решений, которые работали с понижением версий npm. Для меня решение было

npm install -force

Я попробовал понизить версию npm, изменив конфигурацию префикса npm в соответствии с каталогом npm и очистив кеш. Ни один из них не работал, но, видимо, они работали для других, поэтому это может стоить того.

Ответ 10

Пожалуйста, закройте все IDE, как визуальный код студии. Запустите команду npm install через командную строку node.js. Наслаждайтесь !

Ответ 11

такая же ошибка возникает, когда я обновляю версию npm до последней версии 5.4 переход на версию 5.3.0 полезен. Ошибка исходит из npm 5.4, вы можете проверить ее в isuses в npm 5.4
npm install [email protected] -g

Ответ 12

Исправлено в NPM 5.6.0

Перейдите на NPM 5.6.0 для решения проблемы.

Ответ 13

Я хотел запустить npm install с моего внешнего жесткого диска, так как именно здесь я сохранил свое рабочее пространство кода. ОС Windows 10.

Но я получал ту же ошибку, что и исходный пост. Ни один из предыдущих ответов не помог мне, я попробовал все из них:

  1. удаление nodejs и повторная установка
  2. удаление nodejs, затем понижение/установка более низкой версии nodejs.
  3. npm install -force
  4. удаление папок из C:\Users {YourUsername}\AppData\Roaming... npm и npm-cache, а затем повторная установка.
  5. очистка кэша npm - -force
  6. очистка кеша npm
  7. Установка npm --g или установка npm --g lobal

То, что работало для меня, было этим:

  1. скопируйте папку из C:\Program Files\nodejs в D:\Program Files\nodejs
  2. Затем перейдите в Панель управления\Система и безопасность\Система
  3. Расширенные системные настройки
  4. Переменные среды
  5. Системные переменные
  6. Двойной щелчок Путь
  7. Добавить новый путь
  8. D:\Program Files\nodejs
  9. Нажмите ок
  10. перезагрузите компьютер.
  11. попробуйте установить npm из D: Drive

Ответ 14

Для меня в Windows проблема заключалась в слишком большой длине пути. Я переместил проект на путь меньшей длины, и он сработал.

Ответ 15

У меня были эти журналы в Windows. Я сделал следующее

  • Закрыть код Visual Studio
  • Запустите командную строку как администратор

Ответ 16

Если все вышеперечисленное не работает для вас, вы можете

  • перезагрузите вашу систему
  • запустить командную строку от имени администратора
  • запустить команду npm

Ответ 17

В моем случае проблема заключалась в том, что я не установил машинопись. Хотя я установил Node и Angular. Чтобы проверить, установлена ли у вас машинопись или нет

Run this command: tsc -v

Если нет, то для установки машинописного текста

Run this command: npm install -g typescript

И, наконец, установить необходимые зависимости

Run this command: npm install

в корневой папке проекта.

---- Надеюсь, это поможет кому-то ----

Ответ 18

Для окон,

  • Загрузите последнюю рекомендованную версию nodejs, в наши дни это node-v6.11.3-x64
  • Удалите с ним узлы.
  • Перейдите в папку C:\Users\{YourUsername}\AppData\Roaming и удалите npm и npm-cache папки
  • Запустите установщик nodejs и установите его
  • По умолчанию npm 3.10.10 должен быть установлен вместе с node-v6.11.3-x64.
  • Он работал у меня с npm 3.10.10, но не работал с 5.3.X. Также он не работал с более высокими версиями node (выше node-v6.11.3-x64)

Ответ 19

npm cache verify решила мою проблему. Я делал: ng new my-app и я столкнулся с подобной ошибкой

У меня есть версия узла: 10.16.0
нпм v 6.9.0

Ответ 20

Моя проблема заключалась в выполнении команды (все исправления аудита npm). Я решил это при закрытии VSCODE и повторно выполнил команду без проблем.

Ответ 21

Закрытие кода Visual Studio помогло мне решить эту проблему.

Ответ 22

Удаление package-lock.json исправило это для меня.

Ответ 23

Я просто полностью выключил, НЕ ОТКЛОНЯЛ свою машину и перезапустил ее. Запустил CMD от имени администратора и использовал команду npm install. Это сработало.