例如,我一直建议按ALT+F2和打字,gksu nautilus或者gksudo nautilus两者都是等价的;以root权限运行图形程序。但是,我刚刚在测试系统上安装了 raring,这不再有效。
gksu并且gksudo不作为默认安装的一部分安装;尽管它们在存储库中。至少在 12.04 中gksudo只是一个符号链接到gksu
我一直这样做的原因是,虽然sudo在某些情况下使用它通常是安全的,但它可能会导致图形应用程序出现问题,因为gksu您是否以root身份运行程序,而sudo您以自己的身份运行但具有提升的权限。
这可能意味着您无意中更改了关键系统文件的所有者。这可能会导致问题。
这个推理在这里得到了更好的解释:
为什么从全新安装中删除了命令,我们应该改用什么?
我一直在使用gksudo nautilus和sudo nautilus通过Alt+ F2。
有什么不同?他们看起来非常相似!
阅读这些问题和答案:
给我带来了另一个会给该命令的新用户带来问题的问题:
pkexec方便使用?例如,在执行以下操作时:
(在终端中打开文件)
pkexec nano /etc/mysql/my.cnf
Run Code Online (Sandbox Code Playgroud)
(在 GUI 中打开文件)
pkexec gedit /etc/mysql/my.cnf
Run Code Online (Sandbox Code Playgroud)
最后一个得到以下错误:
pkexec must be setuid root
Run Code Online (Sandbox Code Playgroud)
现在这给我带来了以下问题:
如何配置pkexec以避免得到这个?类似于如何sudo/gksu做同样的事情时的行为(他们只要求输入密码)。
如果适用,如何告诉它在第一次将其应用于命令(或如果可配置的情况下包括第一个命令)后不要求输入密码?
如果配置文件不存在,在哪里保存?
是否有用于配置pkexec使用情况的 GUI 应用程序(策略工具包)?
从以下问题
我们看到 gksu 将不再受长期支持,并且从 >= 13.04 开始默认不会安装。相反,我们应该使用 pkexec ,它可以很好地用于非图形应用程序,但不适用于 GUI 上的应用程序:
pkexec gedit
Run Code Online (Sandbox Code Playgroud)
在 .desktop 文件中替换 gksu 时
EXEC=pkexec /usr/bin/gedit
Run Code Online (Sandbox Code Playgroud)
或者当我运行 python 脚本以运行具有 root 权限的图形应用程序时,我收到以下错误:
>>>subprocess.Popen(['pkexec','gedit'])
** (gedit:3203): WARNING **: Could not open X display
Run Code Online (Sandbox Code Playgroud)
如果我不应该让它依赖于 gksu,我将如何重写我的脚本或我的 .desktop 文件以支持身份验证对话框并以 root 身份运行应用程序?
我正在运行 Ubuntu 16.04 LTS。
我正在尝试使用存档管理器提取 tar.gz 文件。
当我尝试解压到/opt它时说“您没有解压到此文件夹的权限”。
我怎样才能克服这个问题?
Delete我在 Mac 上使用 Ubuntu 19.10,因此键盘上没有按键。
要模拟该键,我可以执行Fn+Backspace但我想选择其他键组合,例如Super+ Backspace。这可能吗?
当我尝试编辑某些文件时,我收到此警告。我该如何解决这个错误。
(gedit:5596): IBUS-WARNING **: The owner of /home/user/.config/ibus/bus is not root!
Run Code Online (Sandbox Code Playgroud)