mongod: error while loading shared libraries: libssl.so.10 libcrypto.so.10

Hadi picture Hadi · Nov 13, 2015 · Viewed 32.5k times · Source

Problem

I downloaded the mongodb 3.0.7 tar files. Then I added the bin directory to my path:

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

Then when I run the mongodb server:

mongod --fork --logpath "/home/me/mongolog" --dbpath "/home/me/data"

I get this error:

mongod: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file or directory

What I did

I tried this solution. In brief I updated my openssl:

sudo apt-get update
sudo apt-get install libssl1.0.0 libssl-dev

and then:

cd /lib/x86_64-linux-gnu
sudo ln -s libssl.so.1.0.0 libssl.so.10
sudo ln -s libcrypto.so.1.0.0 libcrypto.so.10

but it says that it cannot find libssl.so.10 and libcrypto.so.10. I don't know what to do!

Answer

user2607479 picture user2607479 · Dec 11, 2015
sudo apt-get purge mongodb-org*

Just start over from here.

If you don't want 3.2, do not

sudo apt-get install -y mongodb-org

Specify the version for all the individual components in the next step.

OR you can copy the correct version link from mongodb.

You will need to

cd /Downloads 
wget wget https://fastdl.mongodb.org/linux/mongodb-correct-version.tgz
tar -zxvf mongodb-correct-version.tgz 

You should see all the executables. Make sure /usr/local/bin is in your PATH

echo $PATH

Create a symbolic link for the mongod server and check the version.

sudo ln -s ~/Downloads/mongodb-correct-version/bin/mongod /usr/local/sbin/bin/mongod
mongod --version

Now create a symbolic link for the shell and check the version.

sudo ln -s ~/Downloads/mongodb-correct-version/bin/mongo /usr/local/bin/mongo
mongo --version

Create a directory path for the server.

mkdir ~/data
mkdir ~/data/db 

Start the server and let it run from a separate terminal than the shell.

mongod --dbpath ~/data/db/

It should be listening on port 27017. In a new terminal, start mongo.

mongo