📅  最后修改于: 2023-12-03 14:47:45.103000             🧑  作者: Mango
在Linux系统中,sudoers文件是授权文件,用于管理系统用户使用sudo命令的权限。sudo是一种命令,它允许普通用户在不切换到超级用户(root)的情况下执行具有管理特权的命令。sudoers文件包含一组规则,这些规则定义哪些用户可以以何种方式运行哪些命令,以及必要时需要哪些权限。
sudoers文件通常位于/etc/sudoers
位置。这个文件只能由root用户编辑。如果您需要更改此文件,请使用visudo
命令。这个命令会检查您的更改是否有效,并在保存更改时给出错误提示。这有助于防止意外破坏sudoers文件。
如前所述,只有root用户可以编辑sudoers文件。在编辑sudoers之前,建议先对原始文件进行备份。可以使用以下命令:
sudo cp /etc/sudoers /etc/sudoers.bak
然后,使用以下命令打开sudoers文件:
sudo visudo
这将打开sudoers文件并允许您编辑文件。在文件中,您可以定义特定用户,组和主机的不同访问级别,以及哪些命令可以从sudo运行。更改保存后,确保运行以下命令以重新载入sudoers文件:
sudo -s
这应该在不出现错误的情况下为您完成。
sudoers文件采用以下格式:
user1 server1 = (user2) command1, command2
其中:
user1
是执行命令的用户。server1
是执行命令的服务器。user2
是该命令的所有者。如果未指定,则命令的所有权将转让给root用户。command1
, command2
是允许执行的命令。可以指定单个命令或使用通配符。例如,在sudoers文件中,可以指定用户bob
和alice
可以在本地服务器上执行/sbin/service
和/sbin/halt
命令,如下所示:
bob, alice localhost = /sbin/service, /sbin/halt
它允许bob
和alice
使用sudo在localhost上运行/sbin/service
和/sbin/halt
命令。