Case with me
Worked fine after the install; this problem occurred after I rebooted.
What worked for me is
sudo mkdir /var/lib/mongodb
sudo mkdir /var/log/mongodb
sudo chown -R mongodb:mongodb /var/lib/mongodb
sudo chown -R mongodb:mongodb /var/log/mongodb
After running the above commands open a new terminal and run:
sudo systemctl restart mongod
and run the mongo shell to check:
mongo
Note
If this problem occurs again (as with me every time I reboot), make it as a shell script to be run at startup.
Permanent solution (shell script at startup)
Step 1:
Make a file in the /etc/init.d
directory
sudo gedit /etc/init.d/custom-mongo-fix.sh
Step 2:
Put below code in the file you just opened in Step 1
#!/bin/bash
# mongodb fix
sudo mkdir /var/lib/mongodb
sudo mkdir /var/log/mongodb
sudo chown -R mongodb:mongodb /var/lib/mongodb
sudo chown -R mongodb:mongodb /var/log/mongodb
Step 3:
After the next boot you can normally start the mongod
server by:
sudo systemctl start mongod
Explanation: mongodb
requires the above two folders with owner
as mongodb
. When we shutdown/reboot, one or both of them gets removed. So, we need to create them and change their ownership.
Edit: I was using Stacer's cleaning tool before every shutdown. This also removes log files and folders. And hence, the error at every startup. Now I unselect the mongodb option and then clean.
Namaste. 🙏