Maison > Questions et réponses > le corps du texte
Environnement : Ubuntu 16.04
Par exemple, si php-fpm
和 nginx
使用的是 www
用户运行的,redis
使用的 redis
用户运行,到了mongodb
这好像不能指定用户,默认用 root
l'utilisateur l'exécute, un avertissement sera donné à chaque fois qu'il entrera dans mongo
[initandlisten] ** AVERTISSEMENT : vous exécutez ce processus en tant qu'utilisateur root, ce qui n'est pas recommandé.
Vous trouverez ci-joint le script de démarrage de mongodb. Ce script peut-il être modifié pour spécifier un utilisateur pour exécuter mongodb ?
#!/bin/sh
### BEGIN INIT INFO
# Provides: mongodb
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: mongodb
# Description: mongo db server
### END INIT INFO
. /lib/lsb/init-functions
PROGRAM=/usr/local/mongodb/bin/mongod
MONGOPID=`ps -ef | grep 'mongod' | grep -v grep | awk '{print }'`
test -x $PROGRAM || exit 0
case "" in
start)
ulimit -n 3000
log_begin_msg "Starting MongoDB server"
$PROGRAM -f /usr/local/mongodb/mongo.conf
log_end_msg 0
;;
stop)
log_begin_msg "Stopping MongoDB server"
if [ ! -z "$MONGOPID" ]; then
kill -15 $MONGOPID
fi
log_end_msg 0
;;
status)
;;
*)
log_success_msg "Usage: /etc/init.d/mongodb {start|stop|status}"
exit 1
esac
exit 0
迷茫2017-05-27 17:45:26
Ce n'est en fait pas un problème avec mongodb, il devrait être considéré comme plus adapté à Linux. Au moins, vous pouvez utiliser le script sudo
来指定用户:sudo -u mongo $PROGRAM -f /usr/local/mongodb/mongo.conf
如果是用RPM安装,本身就带了init.d
et vous pouvez vous y référer pour référence. Surtout s'il a été configuré pour désactiver NUMA, vous devez y prêter attention.
我想大声告诉你2017-05-27 17:45:26
Je ne sais pas si je comprends ce que vous voulez dire. Si vous souhaitez autoriser les utilisateurs à se connecter, il vous suffit d'ajouter des utilisateurs et d'ajouter le paramètre --auth lors du démarrage de mongod pour activer l'autorisation de connexion. À ce stade, connectez-vous de la manière par défaut, c'est-à-dire connectez-vous en tant qu'utilisateur non authentifié, et vous serez invité à indiquer que vous n'avez aucune autorisation lors de l'exécution de requêtes et d'autres opérations.
Thu May 25 06:01:27.522 listDatabases failed:{ "ok" : 0, "errmsg" : "unauthorized" } at src/mongo/shell/mongo.js:46
我想大声告诉你2017-05-27 17:45:26
Considérant la sécurité, toutes sont attribuées en fonction des droits. Autant d'autorisations que nécessaire sont allouées. C'est le principe de base de la sécurité Linux.