如何使用标准用户的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
用户,则必须再次执行上述命令。