如何使用标准用户的sudo?

如果我尝试使用sudo作为非特权用户,我会收到一条消息,告知用户不在sudoers文件中。 我知道管理员密码,但我不知道如何从非特权(标准)用户使用它。

请改用pkexec 。 如果当前用户没有权限,或者有多个用户可以授权操作,则会提示您选择用户:

 $ pkexec true ==== AUTHENTICATING FOR org.freedesktop.policykit.exec === Authentication is needed to run `/bin/true' as the super user Multiple identities can be used for authentication: 1. muru 2. sysad, (sysad) Choose identity to authenticate as (1-2): 1 Password: 

当然, pkexec不遵循sudo配置,而是它自己的配置。 但是,如果您通过将管理员用户添加到sudo组来添加管理员用户,则他们还将通过Ubuntu的默认配置授予Polkit管理员权限。

要从非特权用户转到sudo用户,请不要使用sudo

相反,您首先必须切换用户。

使用nosudo用户的以下命令以其他用户身份登录(假设nosudo是非特权用户, yessudo是sudoer):

 su - yessudo 

然后它会提示输入yessudo的登录密码。 以yessudo身份登录后,您可以运行该用户的sudo命令。 如果您在任何时候退出并返回到nosudo用户,则必须再次执行上述命令。