Falha na instalação do MongoDB no Ubuntu 16.04

12

Segui as instruções fornecidas no site oficial do MongoDB ( https://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/ ) e recebo esse erro ao tentar instalar o MongoDB. Como corrigir esse problema e o que está errado? Lembre-se de que estou usando a versão mais recente do 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).

Editar: Título. MongDB -> MongoDB.

ssudaraka
fonte
Tentei executar as instruções de instalação publicadas por t9toqwerty / muru. Mas ainda recebi a mensagem de que os seguintes pacotes têm dependências não atendidas: O que funcionou para mim foi instalar manualmente o MongoDB a partir do tarball: docs.mongodb.com/manual/tutorial/install-mongodb-on-linux
Josh B'Gosh
Qual versão do mongodb você está tentando instalar?
Elouan Keryell-Even

Respostas:

8

Instale o mongodb no Ubuntu 12.04, 14.04, 16.04

  1. Importar a chave pública usada pelo sistema de gerenciamento de pacotes

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
    
  2. Crie um arquivo de lista para o MongoDB.

    No Ubuntu 12.04 (descontinuado):

    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
    

    No 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
    

    No 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. Recarregue o banco de dados do pacote local.

    sudo apt-get update
    

    Vai lançar um aviso

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

    Ignore isso.

  4. Instale os pacotes do MongoDB.

    sudo apt-get install -y mongodb-org
    

Após a instalação, você pode iniciar o MongoDB usando

sudo service mongod start

Para parar o MongoDB, use

sudo service mongod stop

Para reiniciar o MongoDB, use

sudo service mongod restart

Se isso não funcionar, verifique aqui se alguma das etapas foi atualizada: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/

Rahul K Jha
fonte
3
você não está usando mais recente mongo 3.4 como referenciado no OP mongo ligação
Scott Stensland
Obrigado por esta resposta!
DuDoff 04/12/19
11

TL; DR;

Tente executar este comando,

sudo apt-get install libcurl3 openssl

e depois

sudo apt-get install mongodb-org

Histórico:

Então, eu segui as instruções oficiais do Mongo 4.0 aqui e consegui isso depois de executarsudo 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.

Em seguida, adicionei manualmente o mongodb-org-server ao comando de instalação:

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

mas então eu cheguei

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.

Depois de instalar manualmente estes:

sudo apt-get install libcurl3 openssl

Eu consegui trabalhar com single:

sudo apt-get install mongodb-org

comando.

naffiq
fonte
@Arman feliz que eu poderia ajudar)
naffiq
1

Tentei executar as instruções de instalação publicadas por t9toqwerty / muru. Mas ainda recebi a mensagem

the following packages have unmet dependencies:

O que funcionou para mim foi instalar manualmente o MongoDB a partir do tarball. O link original é: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-linux/

1) Baixar binários

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

2) Extrair arquivos

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

3) Copiar arquivo morto para o diretório de destino

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

4) Coloque a localização na variável PATH.

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

(Substitua <mongodb-install-directory> pelo caminho para o arquivo MongoDB extraído. Para mim, era /home/myusername/mongodb/mongodb-linux-x86_64-3.4.9)

Em seguida, vem executando:

1) Criar diretório de dados

mkdir -p /data/db

2) Definir permissões

Isso garante que o usuário tenha permissões de leitura e gravação para o diretório. Encontre o diretório no terminal e digite

chmod 777 /data/db

3) Corra!

mongod

Se você não configurou a variável PATH na etapa 4, execute o mongo digitando o caminho para o seu arquivo bin - assim

<path to binary>/mongod
Josh B'Gosh
fonte
1

Primeiro, remova todos os pacotes mongo.

  1. Listar todos os pacotes mongo.

sudo apt list --installed | grep 'mongo'

  1. Retire a embalagem.

sudo apt-get purge --auto-remove packagename

  1. Em seguida, siga a documentação de instalação do mongo.

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-linux/

Girish Sharma
fonte
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

Acabei de fazer e estava tudo bem.

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

Marcos
fonte
Eu acho que o OP está tentando instalar o mongodb 3.6, já que eu tive os mesmos problemas ao instalar essa versão. Portanto, a instalação da versão 3.2 pode não ser uma solução aceitável.
Elouan Keryell-Even
0

Eu enfrentei o mesmo par de dias atrás. Tente executar o aptitude. Isso cuidará da instalação de todos os pacotes de dependência.

sudo apt-get install aptitude
sudo aptitude install mongodb-org
Mythili
fonte