我什么时候应该使用pkexec和sudo -i?


21

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

什么时候使用pkexec vs gksu / gksudo?

并需要进行设置,尤其是与图形应用程序一起使用时:

如何配置pkexec?

当我完成sudo -i所有工作后,为什么还要麻烦进行配置pkexec呢?我可以看到,编写脚本以root身份启动某些程序时,我需要这样做:

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

但是,否则,我将从中获得什么pkexec?我什么时候应该使用这些命令?当前以root用户打开图形应用程序的最佳实践是什么?

(我已经读过... man页,但是我觉得没有什么明智的。)


5
我个人不赞成弃用,并始终安装gksu在每个系统上以gksudo在需要时运行GUI应用程序。没有其他的。
字节指挥官

1
相关:这个关于meta的旧帖子进行了相关讨论,建议的最高建议答案sudo -i是安全的解决方案;但没有太多的解释pkexec
clearkimura

1
如果使用GUI文本编辑器以root用户身份编辑文件,那么使用sudoedit(AKA sudo -e)怎么办?
edwinksl

1
@edwinksl表示您可以将图形编辑器设置为默认值sudoedit?有趣的想法
Zanna

1
@Zanna是的,例如,请参见unix.stackexchange.com/a/356443/6949
edwinksl

Answers:


2

基本用法是相同的-有问题的程序允许您以其他用户(通常是root)的身份运行其他程序。但是,sudo变体之间的区别pkexec在于,它sudo赋予了程序对所有内容的完全控制权,而pkexec通过为每个程序定义策略,您可以得到更精细的控制。

如果您信任所运行的程序,那么sudo非常好。如果您想真正锁定所有内容并允许程序仅执行允许的操作,请使用polkitpkexec附带的功能

尽管背后的想法pkexec很好,但gksu由于设置复杂,我不会说下一个。

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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.