我正在尝试以 root 用户身份运行桌面快捷方式,愿意在打开快捷方式时看到密码提示。
pkexec 可以做到这一点,但它不会更改用户 - 要么我从终端运行它 - 它总是给我一个提示,提示当前用户不是 sudo。
pkexec --user root [command]
结果是
Authentication is needed to run [command] as the superuser,
Authenticating as: mylocal-not-sudo-user
如何将用户更改为root? (我尝试了 gksudo,但在打开 chortcut 时没有弹出提示)
答案1
如果您的目标只是将用户更改为 root,并且您的系统不受公司策略的管理 - 最简单的方法就是sudo
像这样使用sudo -i
。在这种情况下,sudo
将询问您自己的本地密码并切换到具有 root 权限的 shell。
要以 root 身份从桌面快捷方式打开终端,您必须以 root 身份运行终端:sudo xterm
或sudo gnome-terminal
。
的用法pkexec
并不直接等同于sudo
.它的作用几乎相同,但遵循一组略有不同的规则。与历史上使用的简单组用户策略相比,它更加灵活(同时也更加严格)sudo
。您可以pkexec
通过阅读有关特性的内容man 8 polkit
。