Я хочу установить mongodb 3.4 на Debian Stretch. К сожалению, пакеты растяжения для Debian являются только mongodb 3.2 ( https://packages.debian.org/stretch/mongodb ).
В документации mongodb упоминаются только Debian 7 и 8 ( https://docs.mongodb.com/manual/tutorial/install-mongodb-on-debian/ ). При использовании команд debian 8 я не могу установить пакеты mongodb, потому что они имеют неудовлетворенные зависимости.
При разрешении jessie-backports ошибка неудовлетворенных зависимостей исчезла, но я не уверен, стоит ли мне это делать и устанавливать пакеты jessie-backports в растяжку.
Как бы вы установили mongodb 3.4 на Debian Stretch?
Спасибо за любой совет.
Ответы:
Ошибка при попытке использовать инструкции Debian 8 предполагает множество отсутствующих зависимостей, но на самом деле будет работать, если вы установите единственную фактическую отсутствующую зависимость (
libssl1.0.0
). Для справки, чтобы выяснить, чего не хватало, я скачалmongod
бинарный файл и взглянул наldd
:Если вы посмотрите, что установлено в Debian 9, у нас просто есть версии
libssl
, которые слишком новы.libssl
Иlibcrypto
библиотеки одновременно установлены наlibssl
корпусе , и это в значительной степени автономным. Следовательно, мы можем просто взятьlibssl1.0.0
пакет Debian 8 и установить его.Версия пакета amd64 может быть найдена здесь (только Google для libssl1.0.0 Джесси и ваша арка для другой версии).
Чтобы установить этот пакет, загрузите файл (в моем случае это был «Загрузки»), а затем установите его с помощью
dpkg
:После этого мы быстро перепроверим
ldd
:Успех! Теперь давайте попробуем установить пакет
mongodb-org
:Наконец, давайте удостоверимся, что служба запускается и мы можем соединиться с оболочкой:
И вот у вас это есть - пакеты Джесси, работающие над Stretch. Я уверен, что скоро будет официальный релиз, который сделает это устаревшим, но пока что это относительно безболезненный обходной путь.
источник
package not found
заmongodb-org
когда осенило меня был неправильный bitiness в Linux. Получил 32-битную виртуальную машину вместо 64-битной ... упс! MongoDB инструкции и двоичные файлы предназначены только для 64-разрядных!sudo systemctl start mongod
поскольку SystemD является системой инициализации по умолчанию для Debian, начиная с Jessie, иservice
стала просто сценарием совместимости.Похоже, что у mongodb 3.4 еще нет бинарных файлов для debian stretch в их официальном хранилище apt Ваш лучший подход может быть построен из источника для вашей системы.
На этой странице есть конкретные инструкции: https://github.com/mongodb/mongo/wiki/Build-Mongodb-From-Source
Вы также можете попытаться использовать пакеты Ubuntu для Xenial, но нет гарантии, что это будет работать должным образом, и я думаю, что сборка из исходного кода была бы лучшей идеей.
источник
У меня была эта проблема (хотя я использовал debain 9).
Небольшое копание показало, что это произошло из-за того, что более ранняя версия в пакете debian не могла быть удалена установщиком (я пытался обновить неофициальный пакет mongodb, предоставленный Debian, до официальных пакетов mongodb-org).
Решение было следующим:
Надеюсь, это сэкономит кому-то время!
источник
Я создал Github-репозиторий, чтобы было проще создавать последнюю версию MongoDB. Он будет строить все внутри, а не в зависимости от apt, включая службу systemd.
источник
На данный момент пакет доступен в Debian -
https://packages.debian.org/stretch/mongodb-server
Просто установите его, запустив
# sudo apt install mongodb-server
источник
Я использую Debian 9 Stretch
Я скачал эту версию MongoDB: Linux 64-bit legacy 64x
Я скачал в папку на рабочем столе и переименовал в
mongodb
После этого вам «нужно» переместить вашу недавно переименованную папку в
/opt/
mv mongodb /opt/
Теперь вы можете получить доступ
/opt/mongodb/bin
и выполнить команду, подобную этой:./mongod --dbpath ./db/
Для того, чтобы сделать вещи весело, вы можете создать символическую ссылку, например,
mongod
чтобы/usr/local/bin/
, как это:ln -s /opt/mongodb/bin/mongod /usr/local/bin/mongod
Теперь в вашем терминале введите команду из любого места:
mongod --dbpath /homer/user/Desktop/db
Вам нужно указать --dbpath для правильной работы mongod.
источник