“N'utilisez pas le système de regroupement en tant que root” - quelle est la différence exacte faite par l'aide de la racine?

Si vous exécutez ruby bundler à partir de la ligne de commande en étant connecté en tant que root, vous obtenez le message d'avertissement suivant:

Ne pas exécuter de Bundler en tant que root. Bundler peut demander sudo si elle est nécessaire,
et l'installation de votre bundle comme racine de briser cette application pour tous les
les utilisateurs non-root sur cette machine.

Qu'est-ce que c'est exactement la différence que l'exécution de bundler en tant que root rend les joyaux qu'il installe?

Est-il à voir avec les autorisations des fichiers qu'il installe pour chaque bijou? Va Ruby essayez d'accéder à la gemme de fichiers qu'un utilisateur non-root (et si oui, quel utilisateur /groupe Rubis utiliser et comment pourrais-je le trouver)?

Quels seraient les symptômes d'une application qui est cassé à cause d'un système de regroupement être utilisé en tant que root?


Ma raison spécifique pour demander c'est parce que je suis en train de bundler sur une base VPS Centos où je n'ai pas besoin de configurer les utilisateurs non-root. Je suis avoir d'autres problèmes avec des gemmes installé via bundler (Error: file to import not found or unreadable: gemname malgré le joyau en question étant présent dans gem list), et je me demande si l'installation de l'gemmes via bundler en tant que root peut avoir fait les fichiers illisibles de Ruby.

Je veux savoir si j'ai besoin de configurer un utilisateur non-root compte purement pour l'exécution de bundler, et si je le fais, ce que les groupes et les privilèges de cet utilisateur devra permettre Ruby pour exécuter les gemmes bundler installe.

Ou puis-je chown ou chgrp le joyau des dossiers? Si oui, cela dépend-il quelque chose à voir avec la façon dont Ruby est installé? (J'ai utilisé RVM et mes gemmes fin dans /usr/local/rvm/gems/ qui est la propriété de la racine dans le groupe rvm) Cette faiblement liés à la question de la réponse, cela implique que non spécifiée aspects de la façon dont Ruby est installé influence bundler les autorisations d'exigences.

Des recherches sur le "Ne pas courir bundler en tant que root" message arrive seulement avec une question sans réponse et les plaintes que cet avertissement est apparemment "comme il disent d'aller dormir à 8 heures du soir" (lien NSFW langue).

OriginalL'auteur user568458 | 2014-08-22