NPM не работает (не удается найти модуль 'internal/fs' - nodejs)

Ошибка NPM при обновлении. Я недавно обновился до Node версии 7.x. Сейчас npm не работает.

Я не могу найти ошибку, это может быть связано с -
npm ERR! Cannot find module 'internal/fs',

Я получаю следующее, когда я бегу sudo npm update -g -

npm ERR! Linux 3.13.0-101-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "update" "-g"
npm ERR! node v7.1.0
npm ERR! npm  v3.10.8
npm ERR! code MODULE_NOT_FOUND

npm ERR! Cannot find module 'internal/fs'
npm ERR! 
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

мой /etc/profile.d/nodejs.sh имеет следующее содержание:

NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript
export NODE_PATH

4 ответа

Решение

Вы должны быть в состоянии удалить каталог npm (обычно /usr/local/lib/node_modules/npm) и затем переустановить один из официальных tar-архивов узлов, который включает в себя npm (вы можете найти последнюю http://nodejs.org/dist/latest-v7.x/).

Вы обновили более старую версию узла?

Если это так, то это, вероятно, одна из причин, почему у вас возникла эта проблема. Старые версии graceful-fs (зависимость от npm) делал вещи, которые больше не доступны в узле v7.

Согласно этой теме, обновление npm до версии 4 решит вашу проблему, попробуйте:

npm i -g npm@4

Если это не работает, попробуйте:

~/.n/n/versions/node/7.0.0/bin/npm i -g npm@4

Для меня, если бы я столкнулся с ошибкой "не могу найти модуль внутреннюю /fs", это будет означать путь к команде. Лучше найти командный путь:

npm config get prefix

положить в системную среду путь. Это сработало для меня после появления ошибки несколько дней.

Удалите каталог node_modules, а затем введите в консоли "npm install". По причине, которую я не знаю, если вы только обновите npm, это не исправит ошибку, но при переустановке npm все будет хорошо.

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