我已遵循此处列出的所有官方说明:
具体来说,我已经完成了:
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 安装。即(摘自文档):
- 下载二进制文件这里或使用
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-i686-3.0.6.tgz
- 提取文件
tar -zxvf mongodb-linux-i686-3.0.6.tgz
复制解压的文件
mkdir -p mongodb cp -R -n mongodb-linux-i686-3.0.6/ mongodb
将其添加到 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
我希望这有帮助。