Ошибка обновления npm

Я действительно пытался установить nodejs вместе с npm на моем Ubuntu 17.04. я загрузил версию Linux из nodejs.org и создал софт-ссылку для узла и nodejs. после проверки версии nodejs он показывает установленную версию, и я в порядке с ней.

теперь я попытался сделать то же самое для npm. Я попытался создать soft link для npm.

sudo ln -sf /mnt/7A46BE1454633621/softwares/programming/frontend/nodejs/lib/node_modules/npm/bin/npm /usr/bin/npm

Я не знаю, какая ссылка я создал правильно или нет. но после запуска команды npm -v я вижу версию 5.0.3, которую я пытаюсь установить. версия показана, но прямо под ней я вижу что-то вроде этого.

5.0.3 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/sagar/.config
10
задан 15 June 2017 в 05:21

6 ответов

То же самое для меня, но не похоже на версию (я использую npm 5.5.1). Фиксация прав на ~/.config сделала трюк для меня:

sudo chown -R $USER:$(id -gn $USER) ~/.config

Я полагаю, это связано с проблемой владельца с ~/.config/configstore/update-notifier-npm.json.

1
ответ дан 18 July 2018 в 11:37

Я изменил владельца

~/configstore

и

~/configstore/update-notifier-npm.json

на $ USER: $ USER.

Я предполагаю, что запуск npm с sudo создал этот файл. В моей системе, по крайней мере, мы находим это:

$ env | grep -e HOME= -e "^USER=" USER=craig HOME=/home/craig $ sudo env | grep -e HOME= -e "^USER=" HOME=/home/craig USER=root

Поэтому, если sudo npm закодирован для создания ~/configstore/update-notifier-npm.json, он сделает это обычным домашним каталогом пользователя. Это создает проблему при последующем запуске npm без sudo, который также хочет читать и, возможно, писать ~/configstore/update-notifier-npm.json. По какой-то причине разрешения равны 600.

Будьте осторожны, когда chown и chmod - все, что находится под ~/.config, там может быть что-то чувствительное.

0
ответ дан 18 July 2018 в 11:37

Моя версия npm 5.0.3, и у меня такая же проблема, когда я использую любую команду npm:

Команда работает нормально, но этот код не отображается очевидная причина. Я обновил с 5.0.3 до 5.2.0 с помощью следующих команд:

sudo chown -R $USER:$(id -gn $USER) /home/sagar/.config

npm install -g npm или npm i -g npm.

Теперь npm работает нормально.

11
ответ дан 18 July 2018 в 11:37

То же самое для меня, но не похоже на версию (я использую npm 5.5.1). Фиксация прав на ~/.config сделала трюк для меня:

sudo chown -R $USER:$(id -gn $USER) ~/.config

Я полагаю, это связано с проблемой владельца с ~/.config/configstore/update-notifier-npm.json.

1
ответ дан 24 July 2018 в 19:49

Я изменил владельца

~/configstore

и

~/configstore/update-notifier-npm.json

на $ USER: $ USER.

Я предполагаю, что запуск npm с sudo создал этот файл. В моей системе, по крайней мере, мы находим это:

$ env | grep -e HOME= -e "^USER=" USER=craig HOME=/home/craig $ sudo env | grep -e HOME= -e "^USER=" HOME=/home/craig USER=root

Поэтому, если sudo npm закодирован для создания ~/configstore/update-notifier-npm.json, он сделает это обычным домашним каталогом пользователя. Это создает проблему при последующем запуске npm без sudo, который также хочет читать и, возможно, писать ~/configstore/update-notifier-npm.json. По какой-то причине разрешения равны 600.

Будьте осторожны, когда chown и chmod - все, что находится под ~/.config, там может быть что-то чувствительное.

0
ответ дан 24 July 2018 в 19:49

Моя версия npm 5.0.3, и у меня такая же проблема, когда я использую любую команду npm:

Команда работает нормально, но этот код не отображается очевидная причина. Я обновил с 5.0.3 до 5.2.0 с помощью следующих команд:

sudo chown -R $USER:$(id -gn $USER) /home/sagar/.config

npm install -g npm или npm i -g npm.

Теперь npm работает нормально.

11
ответ дан 24 July 2018 в 19:49
  • 1
    Работал для меня. Хотя мне пришлось обновить npm с правами root sudo npm i -g npm. Обновлен от npm до 6.0.1 – Denialos 20 May 2018 в 15:35

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

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