Отсутствует доступ на запись к / usr / local / lib / node_modules

Я обновлял NPM, Node и Vue (фреймворк javascript). Думаю, где-то я изменил права доступа к каталогу на root root. Я пытаюсь запустить

npm install -g @vue/cli

Я получаю строку

npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/@vue/

Владелец node_modules был root: root, и я изменил его на root: staff. Я также удостоверился, что попал в штатную группу. По какой-то причине я все еще получаю Отсутствует доступ на запись. Я также chmod 775 -R. А затем перезагрузитесь, чтобы убедиться, что новые разрешения загружены, но по-прежнему возникают проблемы с установкой Vue CLI. Что я делаю не так?

0
задан 26 November 2019 в 22:17

1 ответ

Как описано в документации npm вы можете:

  1. Сделать резервную копию вашего компьютера.
  2. В командной строке в вашем домашнем каталоге создайте каталог для глобальных установок: mkdir ~ / .npm-global

  3. Настройте npm для использования нового пути к каталогу: npm config set prefix '~ / .npm-global'

  4. В предпочитаемом текстовом редакторе откройте или создайте файл ~ / .profile и добавьте эту строку: экспорт ПУТЬ = ~ / .npm-global / bin: $ ПУТЬ

  5. В командной строке обновите системные переменные: source ~ / .profile

  6. Чтобы протестировать новую конфигурацию, установите пакет глобально без использования sudo: npm install -g jshint

Вместо шагов 2–4 вы можете использовать соответствующую переменную ENV (например, если вы не хотите изменять ~ / .profile): NPM_CONFIG_PREFIX = ~ / .npm-global

1
ответ дан 3 January 2020 в 16:09

Другие вопросы по тегам:

Похожие вопросы: