如何授予Linux用户sudo访问权限?

如何授予Linux用户sudo访问权限?,linux,sudo,Linux,Sudo,我正在尝试将sudo访问权限授予我的一个用户。我应该在终端中键入什么?您需要运行visudo并在它打开的编辑器中写入: igor ALL=(ALL) ALL 该行将所有权限授予用户igor 如果希望仅允许运行某些命令,则需要在以下行中列出它们: igor ALL=(ALL) /bin/kill, /bin/ps 将执行您需要的操作,尽管通常您不会向sudoers添加特定的用户名。相反,您有一个sudoers组,只需在需要时将您的用户添加到该组中即可。这样,在向用户授予sudo权限

我正在尝试将sudo访问权限授予我的一个用户。我应该在终端中键入什么?

您需要运行
visudo
并在它打开的编辑器中写入:

igor    ALL=(ALL) ALL
该行将所有权限授予用户
igor

如果希望仅允许运行某些命令,则需要在以下行中列出它们:

igor    ALL=(ALL) /bin/kill, /bin/ps
将执行您需要的操作,尽管通常您不会向
sudoers
添加特定的用户名。相反,您有一个sudoers组,只需在需要时将您的用户添加到该组中即可。这样,在向用户授予
sudo
权限时,不需要多次使用
visudo

如果您使用的是Ubuntu,那么该组很可能已经设置好,并被称为
admin

$ sudo cat /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#

在其他发行版上,如Arch和其他一些发行版,它通常被称为
wheel
,您可能需要设置它:

要在控制盘组中的用户在命令前面加上“sudo”时授予他们完全root权限,请取消注释以下行: %轮子全部=(全部)全部

还要注意,在大多数系统上,
visudo
将读取
编辑器
环境变量,或默认使用
vi
。因此,您可以尝试执行
EDITOR=vim visudo
以使用
vim
作为编辑器

要将用户添加到您应以root用户身份运行的组中,请执行以下操作:


其中,
groupname
是您的组(例如,
admin
wheel
),而
username
是用户名(例如,
john
)。

手动或使用visudo应用程序编辑
/etc/sudoers
文件。 请记住:系统从上到下读取
/etc/sudoers
文件,因此您可以通过将下一个设置放在下面来覆盖特定设置。
为了安全起见,请在底部定义访问设置。

如果手动编辑,可能会损坏它并损坏sudo访问。没有理由不使用
visudo
。同意上一条评论。此外,考虑添加命令作为例子。如果执行一个以上的原因是什么,但是用户(在本例中<代码> IGOR )仍然没有完整的SUDO访问(即,可以发布<代码> SUDODLS >而不是<代码> SUDO-MAM-A /代码>?@ PUK取决于您在/ETC/Sudoes中列出的命令;当您编写
ALL
时,用户可以运行所有命令。这个问题显然对很多人都有帮助,你应该考虑重新打开它。如果你想重新打开这个问题,你应该提供额外的细节,根据帮助中心的规则把它作为一个有效的。这个问题应该被移动到正确的站点,而不是关闭。
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d
# usermod -a -G groupname username