Чому я не можу встановити mongodb 3.0 на Ubuntu 14.04 32bit?


9

Я дотримувався всіх офіційних інструкцій, перелічених тут:

Офіційна сторінка

Докладно я зробив:

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

(здається нормально)

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

(здається нормальним, оскільки файл /etc/apt/sources.list.d/mongodb-org-3.0.list створюється з правильним записом)

sudo apt-get update

(здається нормальним, як я бачу репости у списку)

але коли я це роблю:

sudo apt-get install -y mongodb-org

завжди написано "Неможливо знайти пакет mongodb-org".

Якщо я роблю:

sudo apt-get install -y mongodb

Він працює, але не встановлює версію 3.0, а версію 2.4

Я кілька разів намагався встановити 3.0 після видалення / очищення версії 2.4, але з тим же результатом: "Неможливо знайти пакет mongodb-org"

Як я можу встановити версію 3.0?

EDIT

apt-кеш-пошук mongodb не знаходить нічого щодо mongodb-org

Це вміст /etc/apt/sources.list.d/mongodb-org-3.0.list :

deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse

це рядки, що є результатом оновлення apt-get щодо mondodb:

Ign http://repo.mongodb.org trusty/mongodb-org/3.0 InRelease
Trovato http://repo.mongodb.org trusty/mongodb-org/3.0 Release.gpg
Trovato http://repo.mongodb.org trusty/mongodb-org/3.0 Release
Trovato http://repo.mongodb.org trusty/mongodb-org/3.0/multiverse i386 Packages
Ign http://repo.mongodb.org trusty/mongodb-org/3.0/multiverse Translation-it_IT
Ign http://repo.mongodb.org trusty/mongodb-org/3.0/multiverse Translation-it
Ign http://repo.mongodb.org trusty/mongodb-org/3.0/multiverse Translation-en 

Я працюю на 32-розрядному Ubuntu 14.04 LTS. Може бути, репо лише для x64? Якщо це так, як я можу встановити mongodb 3.0 на 32-бітну машину? (я нічого не бачив у цьому документі в документах)

EDIT 2

Отже, здається, що в цих репортах немає 32 пакунків. Тепер, де я можу їх знайти? Я думаю, що це так, оскільки документи ( офіційні документи ) задають лише це репо, і нічого не сказано про 32/64 бітові відмінності.


1
Чи apt-cache search mongodbзнайде ваш пакет? Може, воно має іншу назву?
Еса Йокінен

Будь ласка, опублікуйте вміст файла /etc/apt/sources.list.d/mongodb-org-3.0.list, а також рядок із apt-get updateвідображенням цього репо, що перевіряється? РЕПО містить метапакет mongodb-org для x64 Trusty, як видно тут: repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/…
Hyppy

Відповіді:


8

У цих сховищах немає 32-бітових пакетів:

Перевірте себе, amd64:

wget -O - \
  http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.1/multiverse/binary-amd64/Packages.gz \
  2>/dev/null | zless | grep ^Package
Package: mongodb-org-unstable
Package: mongodb-org-unstable-mongos
Package: mongodb-org-unstable-server
Package: mongodb-org-unstable-shell
Package: mongodb-org-unstable-tools

Тоді як для i686 жодні пакунки не повертаються.

wget -O - \
  http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.1/multiverse/binary-i386/Packages.gz 2>/dev/null

Або якщо ви віддаєте перевагу кліки, відкрийте веб-переглядач у цьому місці:

xdg-open http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.1/multiverse/binary-i386/

Також перевірте це .

Більше того, постачальник перешкоджає використанню 32-бітових бінарних файлів для виробничого використання , ймовірно, через його обмеження :

Для виробничих розгортань завжди запускайте MongoDB на 64-бітних системах.


Я знаю обмеження: адже у виробництві та тесті у нас є 64-бітна машина. Мені потрібно встановити mongo 3.0 на моїй 32-розрядної версії машини (я не можу встановити 64-бітний SO як гість у моїй віртуальній машині через обмеження обладнання)
Moppo

Що ж, якщо ви змушені користуватися машиною, не здатною запустити 64-бітовий VM, необхідний для належної роботи, ви повинні викликати це питання з вашим менеджером. То чи ...
dawud

Ні, це моя особиста машина для розвитку. У мене немає менеджера :) Справа в тому, що я хотів би знати, чи можна або не встановити mongo 3.x на 32-бітній машині. Якщо це можливо (як це здається в документах), я хотів би знати, чи є репо для отримання пакетів. Якщо це неможливо, я буду оцінювати, що робити
Moppo

Тоді ви ваш менеджер. Аргумент досі зберігається.
dawud

Я невдало шукав 32-бітні репости, тому приймаю вашу відповідь як найбільш корисну. Дякую.
Moppo

1

на основі документів mongdodb ви можете спробувати встановити програму tarball. Це (взяті з документів):

  1. завантажити бінарні файли сюди або за допомогоюcurl -O https://fastdl.mongodb.org/linux/mongodb-linux-i686-3.0.6.tgz
  2. витягнути файли tar -zxvf mongodb-linux-i686-3.0.6.tgz
  3. копіювати витягнуті файли

    mkdir -p mongodb
    cp -R -n mongodb-linux-i686-3.0.6/ mongodb
    
  4. додайте його до PATH

    #example in ~/.bashrc
    export PATH=<mongodb-install-directory>/bin:$PATH
    

Зауважте, як зазначено в mongodb, використовуючи цей метод, буде мати деяке обмеження

"Цей 32-розрядний застарілий дистрибутив не включає шифрування SSL і обмежений приблизно 2 ГБ даних. Загалом, ви повинні використовувати 64-бітні збірки."

але врешті-решт це залежить від вас.


Це найточніша відповідь, оскільки вона насправді відповідає на питання ОП.
Прахлад Ери

-1
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

Додайте сховище за допомогою наведеного вище коду. Потім запустіть команду оновлення

sudo apt-get update

А потім дайте команду встановити mongodb, даючи всі параметри насильно так, використовуючи

sudo apt-get install --force-yes mongodb

Я сподіваюся, що це допомагає.


Якщо ви прочитаєте запитання, то побачите, що він уже це намагався.
Майкл Хемптон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.