E: невозможно найти пакет mongodb-org

103

Я пытаюсь загрузить mongodb и следую инструкциям по этой ссылке .

Но когда я перехожу к ступенькам:

sudo apt-get install -y mongodb-org

Я получаю следующую ошибку:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package mongodb-org  //This is the error

Почему это происходит и есть ли обходной путь?

anonn023432
источник

Ответы:

204

Я столкнулся с той же проблемой, но исправил ее, изменив команду раздела файла пакета. Весь мой шаг был следующим:

Сначала попробуйте с помощью этой команды: sudo apt-get install -y mongodb

Это неофициальный пакет mongodb, предоставляемый Ubuntu, он не поддерживается MongoDB и конфликтует с официально поддерживаемыми пакетами MongoDB.

Если указанная выше команда не работает, вы можете исправить проблему с помощью одной из следующих процедур:

#Step 1:  Import the MongoDB public key
#In Ubuntu 18.*+, you may get invalid signatures. --recv value may need to be updated to EA312927. 
#See here for more details on the invalid signature issue: [https://stackoverflow.com/questions/34733340/mongodb-gpg-invalid-signatures][1]

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

#Step 2: Generate a file with the MongoDB repository url
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list

#Step 3: Refresh the local database with the packages
sudo apt-get update

#Step 4: Install the last stable MongoDB version and all the necessary packages on our system
sudo apt-get install mongodb-org

         #Or
# The unofficial mongodb package provided by Ubuntu is not maintained by MongoDB and conflict with MongoDBs offically supported packages. Use the official MongoDB mongodb-org packages, which are kept up-to-date with the most recent major and minor MongoDB releases.
sudo apt-get install -y mongodb 

Надеюсь, это сработает и для вас. Вы можете следить за этим MongoDB

Обновление. Приведенная выше инструкция установит версию mongodb 2.6, если вы хотите установить последнюю версию, Uubuntu 12.04просто замените ее step 2и следуйте приведенной ниже инструкции вместо этого:

#Step 2: Generate a file with the MongoDB repository url
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb.list

Если вы используете, Ubuntu 14.04используйте следующий шаг вместо вышеуказанногоstep 2

#Step 2: Generate a file with the MongoDB repository url
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
Наим Раджив
источник
1
Работал для меня на Ubuntu 14.10 (другие ответы не работали) после того, как я исправил команду на шаге 2.
julien_c
1
Ой, нет, извините, все еще не работает (это устанавливает Mongo 2.6, а не самую последнюю стабильную версию 3.0). Смотрите мой собственный ответ.
julien_c
36
Отстой, что это работает, а официальный путеводитель - нет.
Дэн Пэнтри,
1
В официальных инструкциях MongoDB не упоминалось, что URL-адрес репозитория был для версии 2.6. Мне пришлось выполнить ваш обновленный шаг 2 с правильным URL-адресом, чтобы использовать sudo apt-get install mongodb-org. После этого проблема была устранена.
Дэниел Игл,
2
Я попробовал команду для Ubuntu 14.04, но она все еще не работает!
alexventuraio
59

Настоящая проблема здесь может заключаться в 32-битной системе. MongoDB 3.X никогда не создавался для использования в 32-битной системе, поэтому репосты для 32-битной версии пусты (поэтому он не найден). Лучше всего установить пакет Ubuntu 2.X по умолчанию:

sudo apt-get install -y mongodb 


Другой обходной путь, если вы все же хотите получить последнюю версию Mongo:

Вы можете перейти на https://www.mongodb.org/downloads и использовать раскрывающийся список, чтобы выбрать «32-разрядная версия Linux».

Но у него есть серьезные ограничения ...

Этот 32-разрядный устаревший дистрибутив не включает шифрование SSL и ограничен примерно 2 ГБ данных. В общем, вам следует использовать 64-битные сборки. См. Здесь для получения дополнительной информации.

Джон Д
источник
45

Попробуйте без "-org":

sudo apt-get install -y mongodb

Сработало у меня!

Джон Д
источник
7
Вероятно, это пакет Ubuntu по умолчанию. Бесполезно, если вам нужна последняя версия монго.
аккумулятор
1
Это действительно может быть пакет Ubuntu по умолчанию. Хорошо для быстрого старта, но если вам особенно нужен последний пакет с mongo.org, то потребуются дополнительные шаги.
Джон Д.
2
Настоящая проблема здесь может заключаться в 32-битной системе. MongoDB 3.X никогда не создавался для использования в 32-битной системе, поэтому репосты для 32-битной версии пусты (поэтому он не найден).
Джон Д.
2
В этом и заключается проблема, и это настоящий ответ :-) Это то, о чем сайт Mongo четко не говорит. В одном месте говорится, что вы должны запускать MongoDB на 64-разрядной версии для производства, в другом - что они предоставляют пакеты как для 32-разрядной, так и для 64-разрядной среды для тестовых сред.
аккумулятор
Ниже я добавил более подробный ответ, который резюмирует проблему (на основе всех полезных комментариев, спасибо!) И предлагает некоторые обходные пути. Не могли бы вы проголосовать за этот ответ вместо этого?
Джон Д.
7

Я использую Ubuntu 14.04; и apt по-прежнему не может найти пакет; Я попробовал все ответы выше и многое другое. У меня сработал такой URL:

echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list

Источник: http://www.liquidweb.com/kb/how-to-install-mongodb-on-ubuntu-14-04/

бмвакили
источник
6

Все шаги верны, просто измените шаг 4, как показано ниже.

  • Шаг 4: Установите последнюю стабильную версию MongoDB и все необходимые пакеты в нашей системе.

Команда: sudo apt-get install mongodb

У меня это сработало.

Амит Шарма
источник
Это устанавливает неофициальный пакет mongo Ubuntu по умолчанию, который уже упоминается в верхнем ответе Naim. Для этого не нужно выполнять предыдущие шаги.
Shaahiin
4

Если вы в настоящее время используете репозиторий MongoDB 3.3 (как официально в настоящее время предлагает веб-сайт MongoDB), вы должны принять во внимание, что имя пакета, используемое для версии 3.3:

mongodb-org-нестабильный

Тогда правильная команда установки для этой версии будет:

sudo apt-get install -y mongodb-org-unstable

Учитывая это, я рекомендую использовать текущую последнюю стабильную версию (v3.2), пока версия v3.3 не станет стабильной, команды для ее установки перечислены ниже:

Загрузите ключ репозитория v3.2:

wget -qO - https://www.mongodb.org/static/pgp/server-3.2.asc | sudo apt-key add -

Если вы работаете с Ubuntu 12.04 или Mint 13, добавьте следующий репозиторий:

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

Если вы работаете с Ubuntu 14.04 или Mint 17, добавьте следующий репозиторий:

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

Если вы работаете с Ubuntu 16.04 или Mint 18, добавьте следующий репозиторий:

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

Обновите список пакетов и установите mongo:

sudo apt-get update
sudo apt-get install -y mongodb-org
Хоникс
источник
3

Принятый в настоящее время ответ работает, но установит устаревшую версию Mongo.

В документации Mongo указано, что: MongoDB предоставляет пакеты только для Ubuntu 12.04 LTS (Precise Pangolin) и 14.04 LTS (Trusty Tahr). Однако эти пакеты могут работать с другими выпусками Ubuntu.

Итак, чтобы получить самую последнюю стабильную Mongo ( 3.0), используйте это (другой шаг - второй):

    apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
    echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb.list
    apt-get update
    apt-get install mongodb-org

Надеюсь это поможет.


Я хотел бы добавить, что в качестве предыдущего шага вы должны проверить свой выпуск дистрибутива GNU / Linux, который будет создавать URL-адрес списка репо. Для меня, поскольку я использую это:

DISTRIB_CODENAME=rafaela
DISTRIB_DESCRIPTION="Linux Mint 17.2 Rafaela"
NAME="Ubuntu"
VERSION="14.04.2 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.2 LTS"

Исходный 2-й шаг:

"Create a list file for MongoDB": "echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list"

Не сработало так, как предполагалось, поскольку сгенерировал неверный URL-адрес репо. По сути, он помещает кодовое имя распространения «rafaela» в репозиторий URL, которого не существует. Вы можете проверить URL-адрес репо в диспетчере пакетов в разделе «Источники программного обеспечения», «Дополнительные репозитории».

Что я сделал, так это просмотрел сайт:

http://repo.mongodb.org/apt/ubuntu/dists/

И я обнаружил, что для Ubuntu доступны только «надежные» и «точные» папки, а не «rafaela».

Решение : откройте как root файл 'mongodb-org-3.1.list' или 'mongodb.list' и замените «rafaela» или свою версию выпуска на соответствующую версию (для меня это было: «trusty»), сохраните изменения и переходите к следующим шагам. Кроме того, ваш диспетчер пакетов может позволить вам легко изменить URL-адрес репо.

Надеюсь, это сработает для вас! ---

julien_c
источник
2
sudo apt-get install -y mongodb 

он работает для 32-битной ubuntu, попробуйте. удачи.

Мухаммед Усман Али Белудж
источник
это версия mongo для ubuntu, конфликтует с mongodb-org
toing_toing
1

Сначала вам нужно добавить базу данных пакетов и добавить ключ PGP.

Выполните следующее.

#add pgp key
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

#add package file
echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list

#update package list
sudo apt-get update

#install mongo
sudo apt-get install -y mongodb-org
Джефф Слойер
источник
2
У меня уже есть, он отлично работал до третьего шага, но затем я получил указанную выше ошибку.
anonn023432 09
Это произойдет, если обновление apt-get не было запущено и / или список источников пуст. Вы умеете бежать cat /etc/apt/sources.list.d/mongodb-org-3.0.list?
Джефф Слойер,
2
Сделал это, вот что у меня естьdeb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.0 multiverse
anonn023432 09
1

У меня была такая же проблема в 14.04, но я исправил ее, выполнив следующие действия:

  1. sudo apt-key adv --keyserver hkp: //keyserver.ubuntu.com: 80 --recv 7F0CEB10
  2. echo "deb http://repo.mongodb.org/apt/ubuntu " $ (lsb_release -sc) "/ mongodb- org / 3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
  3. sudo apt-get update
  4. sudo apt-get install -y mongodb

Это сработало как шарм :)

YLS
источник
Это установит пакет Ubuntu 2.X по умолчанию, а не последнюю версию 3.X с mongo.org (см. Комментарии к другим ответам выше и ниже)
Джон Д.
Я хотел бы, чтобы вы взглянули на официальный сайт docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu на официальном сайте, в этой строке есть ошибка 4. sudo apt-get install -y mongodb
YLS
1

Это работало на Ubuntu 17.04

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5

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

sudo apt-get update

sudo apt-get install -y mongodb-org

Если вы видите ошибку, например:

dpkg: error processing archive /var/cache/apt/archives/mongodb-org-tools_3.6.2_amd64.deb (--unpack):
trying to overwrite '/usr/bin/bsondump', which is also in package mongo-tools 3.2.11-1
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)

Затем запустите эту команду:

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" |

sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list

и

sudo apt update
sudo apt install mongodb-org

Ссылки:

Сурен Конатала
источник
0

У меня были те же проблемы с Ubuntu 16.04, когда я выполнил шаги, опубликованные в официальном документе .
Затем я удаляю текст «[arch = amd64, arm64]» на шаге 2, и у меня это работает.

echo "deb https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list   
apt-get install -y mongodb-org  
зай
источник
0

Для тех, кто пользуется, Ubuntu 18.04можно запустить эту команду:

Создайте /etc/apt/sources.list.d/mongodb-org-4.2.listфайл для Ubuntu 18.04 (Bionic) :

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
Пенни Лю
источник