web-dev-qa-db-fra.com

Quand devrais-je utiliser pkexec et quand Sudo -i?

J'ai écrit une réponse conseillant d'utiliser Sudo -i nautilus. Je sais que gksu est obsolète , et j’avais l’impression que Sudo -i est la façon dont nous devrions exécuter les applications graphiques en tant que root sans tuer des chatons , mais quelqu'un a commenté 'pkexec est le nouveau gksu '. D'après ce que je comprends, pkexec n'est pas la même chose que d'utiliser une forme quelconque de Sudo:

Quand utiliser pkexec vs gksu/gksudo?

et nécessite une configuration, en particulier pour une utilisation avec des applications graphiques:

Comment configurer pkexec?

Quand je fais Sudo -i tout fonctionne toujours, alors pourquoi devrais-je m'embarrasser de la configuration de pkexec? Je peux voir que pour écrire un script qui lance quelque chose en tant que root, il me faudrait le faire:

Puis-je utiliser pkexec dans un fichier Python Script ou .desktop?

Mais sinon, qu'est-ce que je gagne à utiliser pkexec? Quand devrais-je utiliser ces commandes? Quelle est actuellement la meilleure pratique pour ouvrir des applications graphiques en tant que root?

(J'ai déjà lu les ... man pages, mais je ne me sens pas plus sage.)

21
Zanna

L'utilisation de base est la même - les programmes en question vous permettent d'exécuter d'autres programmes en tant qu'utilisateur différent, généralement root. Cependant, la différence entre les variantes Sudo et pkexec est que Sudo donne au programme le contrôle total sur tout, alors qu'avec pkexec vous disposez d'un contrôle beaucoup plus détaillé en définissant une stratégie pour chaque programme.

Si vous faites confiance aux programmes que vous exécutez, Sudo convient parfaitement. Si vous voulez vraiment tout verrouiller et permettre aux programmes de ne faire que ce que vous leur permettez, utilisez pkexec fourni avec polkit .

Bien que l'idée derrière pkexec soit Nice, je n'irais pas aussi loin que de l'appeler le prochain gksu, en raison de la complexité de la configuration requise.

Référence: différence entre Sudo et pkexec sur Quora .

2
Brane