linux 如何给予sudo权限给某些用户[关闭]

iswrvxsc  于 5个月前  发布在  Linux
关注(0)|答案(2)|浏览(80)

**已关闭。**此问题为not about programming or software development。目前不接受回答。

此问题似乎与a specific programming problem, a software algorithm, or software tools primarily used by programmers无关。如果您认为此问题与another Stack Exchange site的主题相关,可以发表评论,说明在何处可以回答此问题。
22天前关闭
Improve this question
我想给予一个用户sudo特权来执行一个脚本。换句话说,用户应该能够在不使用sudo的情况下运行命令。
我尝试使用visudo编辑/etc目录中的sudoers文件,但没有用

dy2hfwbg

dy2hfwbg1#

要在Linux系统上向用户给予sudo权限,您需要将用户添加到sudo组。您可以使用usermod命令执行此操作。以下是一个示例:

sudo usermod -aG sudo username

字符串
直接使用文本编辑器编辑sudoers文件是正确的方法,特别是像visudo这样的编辑器,但必须谨慎使用。visudo命令以安全的方式打开sudoers文件,并在保存更改之前检查语法错误。如果sudoers文件中有错误,它可能会锁定您无法访问sudo,因此强烈建议使用visudo。
以下是使用visudo编辑sudoers文件的正确方法:
使用visudo打开sudoers文件:

sudo visudo


导航到如下所示的部分:

# User privilege specification
root    ALL=(ALL:ALL) ALL


在根条目下面,添加以下行以向特定用户授予sudo权限:

username   ALL=(ALL:ALL) ALL


保存并退出编辑器,如果您使用visudo,它将在保存前执行语法检查。
希望有帮助!

aoyhnmkz

aoyhnmkz2#

你的问题有点没有意义。脚本可以被认为是一个可执行文件。当一个可执行文件被执行时,它是作为一个特定的用户被执行的。

$ whoami
billy

字符串
在这里,whoami打印调用它的用户的用户名。现在,billy可以做他被授权做的事情,比如修改他自己的文件,调用可执行文件等。用户billy没有被授权做修改系统文件或重新启动系统服务等任务。但有时,我们需要做这些任务,我们(作为一个人)有授权这样做。而不是作为root登录(这有点乏味),我们使用sudo。当你用sudo前缀一个命令,它是作为root用户执行的。

$ sudo whoami
root


注意,即使sudo whoami是由billy执行的,whoami也说它是由root调用的。
现在,/etc/sudoers文件指定允许谁使用sudo命令。使用visudo编辑它。要允许比利使用sudo,可以将以下行添加到/etc/sudoers

billy ALL=(ALL:ALL)


现在,如果您想以root身份执行脚本,但不想使用sudo,则可以以root身份登录并运行脚本。

相关问题