何时应使用 pkexec 以及何时应使用 sudo -i?

何时应使用 pkexec 以及何时应使用 sudo -i?

我写了一个答案,建议使用sudo -i nautilus。我知道gksu已弃用,我的印象是sudo -i我们应该以 root 身份运行图形应用程序,而无需杀死小猫,但有人评论说“pkexec是新的gksu”。我的理解是,这pkexec与使用任何形式的sudo

何时使用 pkexec 与 gksu/gksudo?

并且需要设置,特别是与图形应用程序一起使用时:

如何配置 pkexec?

当我这样做时,sudo -i一切总是有效的,那么为什么我要费力地进行配置呢pkexec?我可以看到,要编写一个以 root 身份启动某些东西的脚本,我需要这样做:

我可以在 Python 脚本或 .desktop 文件中使用 pkexec 吗?

但除此之外,使用 我能得到什么好处pkexec?我应该何时使用这些命令?目前以 root 身份打开图形应用程序的最佳做法是什么?

(我已经读过...man页,但我感觉并没有变得更明智。)

答案1

基本用法是相同的 - 所讨论的程序允许您以另一个用户(通常是 root)身份运行其他程序。但是,sudo变体和之间的区别在于,pkexecsudo使程序可以完全控制所有内容,而pkexec通过为每个程序定义策略,您可以进行更细粒度的控制。

如果你信任你运行的程序,sudo 就很好了。如果你想真正锁定一切,并允许程序只执行你允许它们执行的操作,那么请pkexec使用波尔基特

虽然背后的想法很好,但由于需要复杂的设置,pkexec我不会称它为下一个。gksu

参考:Quora 上 sudo 和 pkexec 之间的区别

相关内容