Não é possível iniciar o mongodb

1

Instalei o MongoDb no Ubuntu e consegui executá-lo usando sudo service mongod start . Então eu tive que reiniciá-lo desde que eu mudei o arquivo de configuração. Agora não posso começar de novo. Quando executo sudo service mongod start , ele simplesmente não diz nada (mas não consigo me conectar usando mongo ). E o log diz: 2018-06-06T18:45:49.279+0000 I STORAGE [initandlisten] exception in initAndListen: IllegalOperation: Attempted to create a lock file on a read-only directory: /var/lib/mongodb, terminating

Aqui estão as permissões: ubuntu@ip-172-31-24-92:~$ stat /var/lib/mongodb Access: (0755/drwxr-xr-x) Uid: ( 1000/ ubuntu) Gid: ( 116/ mongodb)

Então, como faço para executá-lo novamente?

Pergunta bônus: como faço o comando gerar o erro real, para que eu não precise procurar no log toda vez?

P.S. Eu sou um usuário do Windows muito tempo, apenas aprendendo Linux.

    
por ulu 06.06.2018 / 21:09

1 resposta

1

Primeiro de tudo, seja bem-vindo ao Linux!

Segundo, eu estou supondo que neste caso o mongodb seja executado como o usuário mongodb

Se este for o caso, então o usuário mongodb precisa de permissão para gravar no diretório.

Dadas as permissões atuais: o proprietário é ubuntu , que pode rwx ler, escrever e executar, enquanto o grupo é mongodb , que pode apenas r-x ler, executar. Como o usuário mongodb está no grupo mongodb, mas não possui o arquivo, ele não pode escrever.

Access: (0755/drwxr-xr-x)  Uid: ( 1000/  ubuntu)   Gid: (  116/ mongodb)

Para resolver isso, faça do mongodb o proprietário %código% ou deixe o grupo escrever também sudo chown mongodb:mongodb -R /var/lib/mongodb

Supondo que você instalou o servidor mongodb usando um método padrão no sistema linux padrão, você provavelmente precisará reiniciar o serviço usando o comando systemctl (SystemD) ou serviço (upstart).

SystemD: sudo chmod 775 -R /var/lib/mongodb ou sudo systemctl restart mongodb

Upstart: sudo systemctl restart mongod

Se você estiver executando o SystemD, poderá verificar o status do seu serviço com

sudo service mongod restart ou sudo systemctl status mongodb

E você pode ver os registros do seu serviço com

sudo systemctl status mongod ou sudo journalctl -u mongodb

    
por 06.06.2018 / 21:44