如果我尝试以非特权用户身份使用 sudo,我会收到一条消息,提示该用户不在 sudoers 文件中。我知道管理员密码,但我不知道如何以非特权(标准)用户身份使用它。
答案1
改用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 管理员权限。
答案2
要从非特权用户转变为sudo
用户,您不需要使用sudo
。
相反,您必须先切换用户。
以其他用户身份登录并使用以下命令nosudo
(假设nosudo
是非特权用户,yessudo
是 sudoer):
su - yessudo
然后它会提示输入 的登录密码yessudo
。以 身份登录后,yessudo
您就可以以该用户身份运行sudo
命令。如果您随时退出并返回到该nosudo
用户,则必须再次执行上述命令。