在Ubuntu 16.04上MongoDB安装失败


12

我按照MongoDB官方网站(https://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/)上的说明进行操作,尝试安装MongoDB时出现此错误。如何解决此问题以及出了什么问题?记住我正在使用最新的Ubuntu 16.04版本

sudo apt-get install -y mongodb-org

Reading package lists... Done

Building dependency tree

Reading state information... Done

You might want to run 'apt-get -f install' to correct these:

The following packages have unmet dependencies:

mongodb-org : 

Depends: mongodb-org-shell but it is not going to be installed

Depends: mongodb-org-server but it is not going to be installed

Depends: mongodb-org-mongos but it is not going to be installed

Depends: mongodb-org-tools but it is not going to be installed

virtualbox-5.0 : Depends: libqt4-opengl (>= 4:4.7.2) but it is not going to be installed

Depends: libsdl1.2debian (>= 1.2.11) but it is not going to be installed

Recommends: libsdl-ttf2.0-0 but it is not going to be installed

E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

编辑:标题。MongDB-> MongoDB。


我尝试运行t9toqwerty / muru发布的安装说明。但是仍然收到消息,以下软件包具有未满足的依赖性:对我有用的是
Josh B'Gosh

您要安装哪个mongodb版本?
Elouan Keryell-Even

Answers:


8

在Ubuntu 12.04、14.04、16.04中安装mongodb

  1. 导入包管理系统使用的公钥

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
    
  2. 为MongoDB创建一个列表文件。

    在Ubuntu 12.04中(已弃用):

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

    在Ubuntu 14.04中:

    echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
    

    在Ubuntu 16.04中:

    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
    
  3. 重新加载本地软件包数据库。

    sudo apt-get update
    

    会发出警告

    W: http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/Release.gpg: Signature by key 492EAFE8CD016A07919F1D2B9ECBEC467F0CEB10 uses weak digest algorithm (SHA1)
    

    只是忽略它。

  4. 安装MongoDB软件包。

    sudo apt-get install -y mongodb-org
    

安装后,您可以使用以下命令启动MongoDB

sudo service mongod start

停止使用MongoDB

sudo service mongod stop

重新启动MongoDB使用

sudo service mongod restart

如果那不起作用,请检查此处是否已更新任何步骤:https : //docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/


3
您未按照OP mongo链接中的引用使用最新的mongo 3.4
Scott Stensland

感谢您的回答!
DuDoff

11

TL; DR;

尝试运行此命令,

sudo apt-get install libcurl3 openssl

接着

sudo apt-get install mongodb-org

日志:

所以,我就跟着蒙戈4.0官方说明这里并运行后得到了这个sudo apt-get install mongodb-org

The following packages have unmet dependencies:
 mongodb-org : Depends: mongodb-org-server but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

然后,我手动将mongodb-org-server添加到安装命令:

sudo apt-get install mongodb-org mongo-db-server

但后来我得到了

mongodb-org-server : Depends: libcurl3 (>= 7.16.2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

手动安装后:

sudo apt-get install libcurl3 openssl

我让它与单人一起工作:

sudo apt-get install mongodb-org

命令。


@Arman很高兴能为您提供帮助)
naffiq

1

我尝试运行t9toqwerty / muru发布的安装说明。但还是得到消息

the following packages have unmet dependencies:

对我有用的是从tarball手动安装MongoDB。原始链接是:https : //docs.mongodb.com/manual/tutorial/install-mongodb-on-linux/

1)下载二进制文件

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.9.tgz

2)解压缩文件

tar -zxvf mongodb-linux-x86_64-3.4.9.tgz

3)将存档复制到目标目录

mkdir -p mongodb
cp -R -n mongodb-linux-x86_64-3.4.9/ mongodb

4)将位置放置在PATH变量中。

export PATH=<mongodb-install-directory>/bin:$PATH

(将<mongodb-install-directory> 替换为提取的MongoDB存档的路径。对我来说,这是/home/myusername/mongodb/mongodb-linux-x86_64-3.4.9)

接下来运行它:

1)创建数据目录

mkdir -p /data/db

2)设置权限

这可确保用户具有目录的读写权限。在终端中找到目录,然后输入

chmod 777 /data/db

3)运行!

mongod

如果您没有在步骤4中设置PATH变量,请输入bin文件的路径来运行mongo,如下所示:

<path to binary>/mongod


0

Xenial(Ubuntu 16.04); MongoDB v.3.2.11

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.2.list
apt-get -qq update   (if you are using docker)
apt-get update
apt-get install mongodb-org

我只是做到了,很好。

字体:https//www.digitalocean.com/community/tutorials/how-to-install-mongodb-on-ubuntu-16-04


我猜OP正在尝试安装mongodb 3.6,因为在安装该版本时存在相同的问题。因此,安装3.2版可能不是可接受的解决方案。
Elouan Keryell-Even,

0

我几天前也面对过。尝试通过能力来运行。这将负责安装所有依赖项程序包。

sudo apt-get install aptitude
sudo aptitude install mongodb-org
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.