Quelle est la signification de sudo sudo?

8

J'utilise Cloud9 pour le développement de Rails et il utilise un environnement Ubuntu. Dans la documentation sur l'utilisation de la base de données PostgreSQL, il est dit:

Connectez-vous au service:

$ sudo sudo -u postgres psql 

Que signifie taper sudo deux fois?

https://docs.c9.io/setting_up_postgresql.html

Andy Singh
la source
1
L'utilisateur est peut-être autorisé à exécuter la sudocommande en tant que root, mais pas la psqlcommande en tant que postgres.
Stéphane Chazelas
@WarrenYoung En regardant le document, il semble intentionnel que l'utilisateur puisse se rooter sans se battre. L'utilisateur d'origine est probablement considéré comme un compte administratif et il a donc probablement été attribuéuser ALL=(ALL) NOPASSWD: ALL
Bratchley
Bien sûr, ne pas demander le mot de passe root pour un compte disposant des droits ssh est probablement un problème.
Bratchley
J'ai ouvert un problème (et fait un hachage de la demande de tirage). Voyons voir s'ils le réparent.
muru
Et cela a été corrigé.
muru

Réponses:

9

sudo -u postgres vous permet d'emprunter l'identité de l'utilisateur postgres lors de l'exécution de la commande. Votre utilisateur n'a probablement pas ce privilège, mais root en a un.

Ainsi, le premier sudo vous donne les privilèges root et le second sudo vous permet (en tant que root) de sudo -u à ​​postgres permettant à la commande d'être exécutée en tant qu'utilisateur postgres.

Jeremy Driscoll
la source
+1: Cela pourrait bien expliquer la seconde sudo.
Warren Young
0

Ils n'ont probablement accordé à votre compte sudo que des droits sur le compte root et ils pensent qu'ils en ont besoin sudopour l'utilisateur postgres pour y arriver.

Compte tenu du nombre de personnes qui corrigent leurs règles, vous pouvez exécuter en sudo -ltant qu'utilisateur normal pour voir si elles vous ont donné accès à tous les utilisateurs ou vous ont bloqué pour rooter pour une raison quelconque. Je suis prêt à être le premier, auquel cas vous pouvez laisser le premier sudo.

Bratchley
la source