n1ro°
RU

Ошибки и коды · Инструкция

npm EACCES при npm install -g: исправление без sudo

EACCES при глобальной установке означает, что npm пытается писать в каталог, недоступный текущему пользователю. Исправля

Редакция N1RO · Проверено

Короткий ответ

Рекомендуемый путь — использовать менеджер версий Node.js. Альтернатива на Unix-подобных системах — перенести npm global prefix в каталог пользователя; постоянный `sudo npm install -g` не является хорошим исправлением прав.

Что делать

  1. Проверьте prefix: Выполните `npm config get prefix`.
  2. Предпочтительный вариант: Установите Node через version manager и откройте новый shell.
  3. Альтернатива на Unix: Задайте `npm config set prefix ~/.local`.
  4. Добавьте bin в PATH: Добавьте `~/.local/bin` в PATH через профиль shell.
  5. Проверьте без sudo: Установите безопасный тестовый CLI глобально и убедитесь, что команда находится в PATH.

Важно

Не меняйте владельца системных каталогов `/usr` рекурсивно и не используйте sudo как постоянную схему npm.

Что учитывать

Не меняйте владельца системных каталогов `/usr` рекурсивно и не используйте sudo как постоянную схему npm.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. Resolving EACCES permissions errors). Пример и формулировки — редакция N1RO на 2026-09-17.