为什么我无法在 Ubuntu 14.04 32 位上安装 mongodb 3.0?

为什么我无法在 Ubuntu 14.04 32 位上安装 mongodb 3.0?

我已遵循此处列出的所有官方说明:

官方网站

具体来说,我已经完成了:

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 版本

我曾多次尝试在删除/清除 2.4 版本后安装 3.0,但结果相同:“找不到包 mongodb-org”

我如何安装 3.0 版本?

编辑

apt-cache 搜索 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 

我在 Ubuntu 14.04 LTS 32 位上运行。也许 repo 仅适用于 x64?如果是这样,我如何在 32 位机器上安装 mongodb 3.0?(我在文档中没有看到有关此区别的任何内容)

编辑2

因此,这些存储库中似乎没有 32 个软件包。现在,我在哪里可以找到它们?我认为这很奇怪,因为文档(官方文档) 仅指定此 repo,并且没有提及 32/64 位差异。

答案1

这些存储库中没有 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 位二进制文​​件,可能是由于其局限性

对于生产部署,始终在 64 位系统上运行 MongoDB。

答案2

基于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 加密,并且数据量限制在 2GB 左右。一般来说,您应该使用 64 位版本。”

但最终还是取决于你。

答案3

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

我希望这有帮助。

相关内容