Dee*_*nan 4 sudo password user-management
在终端中输入 sudo 命令时,我经常被要求输入 sudo 密码,但我不记得我是否是 sudo 用户。同样,我不知道任何超级用户做密码。我对这个密码问题感到困惑。
例子:
$ sudo aplay -l
[sudo] password for deepak:
Run Code Online (Sandbox Code Playgroud)
我不知道在之前的密码询问命令中该怎么做。与上面的示例类似,很多次我都被要求输入 sudo 密码。我该如何解决?
运行命令的密码sudo
是您的密码,而不是单独的密码。这是相同的密码:
当您在终端中被要求输入密码时,在您输入时没有显示任何内容是正常的。要输入sudo
命令的密码,请输入密码并按Enter。
如果正确输入你的密码,你是一个系统管理员-这在Ubuntu意味着谁被允许执行的操作通过根用户的用户sudo
和polkit --then该命令将运行。(也可以允许非管理员运行某些命令sudo
,但默认情况下未设置。)
如果您正确输入密码,但您不是管理员,并且不允许以 root 身份运行命令sudo
,您将收到错误消息:
username is not in the sudoers file. This incident will be reported.
Run Code Online (Sandbox Code Playgroud)
(“报告”只是意味着写入日志文件。尝试sudo
在您自己的计算机上运行您的用户帐户未设置为允许运行的命令是无害的,以及可怕的“此事件将被报告”的事情可以忽略。)
sudo
为 root,请检查您是否在sudo
组中。确定您的用户帐户是否是管理员并允许以 root 身份运行命令的另一种方法sudo
是检查它是否是sudo
组的成员。要列出您所在的所有组,请运行:
groups
Run Code Online (Sandbox Code Playgroud)
用户通常在他们自己的组(与他们的用户名相同)和其他几个组中。如果您是管理员,输出groups
将类似于:
username adm cdrom sudo dip plugdev lpadmin sambashare
Run Code Online (Sandbox Code Playgroud)
如果您不是管理员,它将看起来像这样(即,它不会包含sudo
):
username adm cdrom dip plugdev lpadmin sambashare
Run Code Online (Sandbox Code Playgroud)
如果您只有一个用户帐户并且它已从sudo
组中删除,请参阅如何将自己重新添加为 sudo 用户?不过,这并不是很常见的情况。
sudo
您的能力。确定您是否是管理员的第三种方法是运行sudo -l
. 您必须输入密码。然后:
未设置为运行任何命令的非管理员sudo
将看到该消息
Sorry, user username may not run sudo on host.
Run Code Online (Sandbox Code Playgroud)
哪里username
是您的用户名,host
是您的 Ubuntu 系统的主机名(计算机名称)。
管理员(即sudo
组成员)将看到一些以行结尾的信息:
User username may run the following commands on host:
(ALL : ALL) ALL
Run Code Online (Sandbox Code Playgroud)设置为以 root 身份运行某些命令但并非所有命令的用户将看到记录其能力的输出。(有关man 5 sudoers
技术细节,请参阅。)
sudo
在 Ubuntu 中理解)sudo
,您可以通过运行命令man sudo
或在线阅读。 归档时间: |
|
查看次数: |
12166 次 |
最近记录: |