The error message says that installer tries to delete file /var/www/msgapp/backend/lib/python2.7/site-packages/bson/json_util.py but it fails because you don't have permissions.
There are two possible reasons:
You are trying to install mongoengine as a different user from the one who own the virtualenv.
Let's assume that you are logged in as userholms
so your bash prompt looks like: [holms@localhost ~]$
Now check ownership of virtualenv with:
ls -la /var/www/msgapp/ | grep backend
If the output should look like:
drwxr-xr-x. 9 holms holms 4096 05-06 15:49 backend
If instead of holms you get for example bruce then virtualenv is owned by this user and you should perform installation as bruce:
sudo su - bruce
source /var/www/msgapp/backend/bin/activate
pip install mongoengine
You are logged in as the correct user but /var/www/msgapp/backend/lib/python2.7/site-packages/bson/json_util.py is owned by someone else. Again I'm assuming that your username is holms.
Check permissions:
ls -la /var/www/msgapp/backend/lib/python2.7/site-packages/bson/ | grep json_util.py
If you see that someone else e.g. bruce owns this specific file then change the ownerschip:
sudo chown holms:holms /var/www/msgapp/backend/lib/python2.7/site-packages/bson/
Now you should be able to install mongoengine.