Установка MongoDB завершилась неудачно в Ubuntu 16.04


12

Я следовал инструкциям, приведенным на официальном веб-сайте MongoDB ( https://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/ ), и получаю эту ошибку при попытке установить MongoDB. Как решить эту проблему и что не так? Помните, я использую последнюю версию Ubuntu 16.04

sudo apt-get install -y mongodb-org

Reading package lists... Done

Building dependency tree

Reading state information... Done

You might want to run 'apt-get -f install' to correct these:

The following packages have unmet dependencies:

mongodb-org : 

Depends: mongodb-org-shell but it is not going to be installed

Depends: mongodb-org-server but it is not going to be installed

Depends: mongodb-org-mongos but it is not going to be installed

Depends: mongodb-org-tools but it is not going to be installed

virtualbox-5.0 : Depends: libqt4-opengl (>= 4:4.7.2) but it is not going to be installed

Depends: libsdl1.2debian (>= 1.2.11) but it is not going to be installed

Recommends: libsdl-ttf2.0-0 but it is not going to be installed

E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

Изменить: название. MongDB -> MongoDB.


Я попытался запустить инструкции по установке, опубликованные t9toqwerty / muru. Но все же было получено сообщение о том, что следующие пакеты имеют неудовлетворенные зависимости: для меня сработала ручная установка MongoDB из архива
Джош Б'Гош

Какую версию mongodb вы пытаетесь установить?
Элуан Керилл-Эвен

Ответы:


8

Установите mongodb в Ubuntu 12.04, 14.04, 16.04

  1. Импортировать открытый ключ, используемый системой управления пакетами

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
    
  2. Создайте файл списка для MongoDB.

    В Ubuntu 12.04 (устарело):

    echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
    

    В Ubuntu 14.04:

    echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
    

    В Ubuntu 16.04:

    echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
    
  3. Перезагрузите локальную базу данных пакетов.

    sudo apt-get update
    

    Это бросит предупреждение

    W: http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/Release.gpg: Signature by key 492EAFE8CD016A07919F1D2B9ECBEC467F0CEB10 uses weak digest algorithm (SHA1)
    

    Просто игнорируй это.

  4. Установите пакеты MongoDB.

    sudo apt-get install -y mongodb-org
    

После установки вы можете запустить MongoDB используя

sudo service mongod start

Чтобы остановить MongoDB использовать

sudo service mongod stop

Для перезапуска MongoDB используйте

sudo service mongod restart

Если это не сработало, проверьте здесь, был ли обновлен какой-либо из шагов: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/


3
вы не используете последнюю версию монго 3.4, на которую ссылается ссылка OP mongo
Скотт Стенсланд,

Спасибо за этот ответ!
DuDoff

11

TL; DR;

Попробуйте запустить эту команду,

sudo apt-get install libcurl3 openssl

а потом

sudo apt-get install mongodb-org

Журналы:

Так что я следовал официальным инструкциям по Mongo 4.0 здесь и получил это после запускаsudo apt-get install mongodb-org

The following packages have unmet dependencies:
 mongodb-org : Depends: mongodb-org-server but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Затем я вручную добавил mongodb-org-server в команду установки:

sudo apt-get install mongodb-org mongo-db-server

но потом я получил

mongodb-org-server : Depends: libcurl3 (>= 7.16.2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

После установки вручную:

sudo apt-get install libcurl3 openssl

Я получил это работает с синглом:

sudo apt-get install mongodb-org

команда.


@ Арман рад, что я мог помочь)
naffiq

1

Я попытался запустить инструкции по установке, опубликованные t9toqwerty / muru. Но все же получил сообщение

the following packages have unmet dependencies:

Что мне помогло, так это ручная установка MongoDB из архива. Исходная ссылка: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-linux/

1) Скачать бинарники

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.9.tgz

2) Извлечь файлы

tar -zxvf mongodb-linux-x86_64-3.4.9.tgz

3) Скопировать архив в целевой каталог

mkdir -p mongodb
cp -R -n mongodb-linux-x86_64-3.4.9/ mongodb

4) Поместите местоположение в переменную PATH.

export PATH=<mongodb-install-directory>/bin:$PATH

(Замените <mongodb-install-directory> на путь к извлеченному архиву MongoDB. Для меня это было /home/myusername/mongodb/mongodb-linux-x86_64-3.4.9)

Далее запускается это:

1) Создать каталог данных

mkdir -p /data/db

2) Установить разрешения

Это гарантирует, что у пользователя есть права на чтение и запись для каталога. Найдите каталог в терминале и введите

chmod 777 /data/db

3) Запустите это!

mongod

Если вы не настроили переменную PATH на шаге 4, запустите mongo, введя путь к вашему bin-файлу - вот так

<path to binary>/mongod


0

Ксениал (Ubuntu 16.04); MongoDB v. 3.2.11

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.2.list
apt-get -qq update   (if you are using docker)
apt-get update
apt-get install mongodb-org

Я просто сделал это, и это было хорошо.

Шрифт: https://www.digitalocean.com/community/tutorials/how-to-install-mongodb-on-ubuntu-16-04


Я полагаю, что OP пытается установить mongodb 3.6, так как у меня были те же проблемы при установке этой версии. Поэтому установка версии 3.2 может оказаться неприемлемым решением.
Элуан Керилл-Эвен

0

Я столкнулся с той же парой дней назад. Попробуйте пробежать через способность. Это позаботится об установке всех пакетов зависимостей.

sudo apt-get install aptitude
sudo aptitude install mongodb-org
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.