Установить узел на виртуальный сервер Ubuntu 14.04 1 и 1

У меня есть виртуальный сервер от 1and1 под управлением Ubuntu 14.04. После исправления /etc/apt/sources.list к официальным я попытался установить nodejs и npm (позже установить bower). Я следовал руководству, доступному на https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-an-ubuntu-14-04-server.

Все работало нормально, пока я не захотел установить npm. Последняя версия nodejs уже установлена:

root@somewhere:~# node --version
v0.10.30

Когда я пытаюсь установить npm, я получаю следующую ошибку:

root@somewhere:~# apt-get install npm
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 npm : Depends: nodejs but it is not going to be installed
       Depends: node-abbrev (>= 1.0.4) but it is not going to be installed
       Depends: node-ansi but it is not going to be installed
       Depends: node-archy but it is not going to be installed
       Depends: node-block-stream but it is not going to be installed
       Depends: node-fstream (>= 0.1.22) but it is not going to be installed
       Depends: node-fstream-ignore but it is not going to be installed
       Depends: node-github-url-from-git but it is not going to be installed
       Depends: node-glob (>= 3.1.21) but it is not going to be installed
       Depends: node-graceful-fs (>= 2.0.0) but it is not going to be installed
       Depends: node-inherits but it is not going to be installed
       Depends: node-ini (>= 1.1.0) but it is not going to be installed
       Depends: node-lockfile but it is not going to be installed
       Depends: node-lru-cache (>= 2.3.0) but it is not going to be installed
       Depends: node-minimatch (>= 0.2.11) but it is not going to be installed
       Depends: node-mkdirp (>= 0.3.3) but it is not going to be installed
       Depends: node-gyp (>= 0.10.9) but it is not going to be installed
       Depends: node-nopt (>= 2.1.1) but it is not going to be installed
       Depends: node-npmlog but it is not going to be installed
       Depends: node-once but it is not going to be installed
       Depends: node-osenv but it is not going to be installed
       Depends: node-read but it is not going to be installed
       Depends: node-read-package-json (>= 1.1.0) but it is not going to be installed
       Depends: node-request (>= 2.25.0) but it is not going to be installed
       Depends: node-retry but it is not going to be installed
       Depends: node-rimraf (>= 2.2.2) but it is not going to be installed
       Depends: node-semver (>= 2.1.0) but it is not going to be installed
       Depends: node-sha but it is not going to be installed
       Depends: node-slide but it is not going to be installed
       Depends: node-tar (>= 0.1.18) but it is not going to be installed
       Depends: node-which but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Да, я запускал apt-get update несколько раз. Кто-нибудь знает, как это исправить?

root@somewhere:~# lsb_release -rc
Release:    14.04
Codename:   trusty

2 ответа

Ссылаясь на https://askubuntu.com/questions/626383/node-package-manager-got-corrupted-in-some-way-now-it-cannot-be-installed

sudo apt-get remove nodejs npm ## remove existing nodejs and npm packages
sudo apt-get install curl  
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs

Вы должны получить правильный пакет установлен. Я попробовал это на Ubuntu 16.04.

Быстрый поиск дает этот высоко оцененный ответ. Итак, сначала попробуйте:

sudo apt-get clean

Это очистит локальный кеш файлов.deb. Если это не работает, попробуйте запустить:

sudo apt-get -f install

-f означает "исправить неисправность", а не форсировать, как в некоторых других командах. Это то, что сработало для меня, когда у меня возникла проблема с другим пакетом, но если ни одна из этих команд не сработала, в этом ответе достаточно подробностей. Даже если это поможет вам, это довольно интересное чтение.

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