📅  最后修改于: 2023-12-03 15:20:46.248000             🧑  作者: Mango
在 Ubuntu 系统中,/etc/sudoers.d 是一个目录,用于存储包含sudo规则的文件。sudo规则允许普通用户在没有特权的情况下执行特权命令。
在 /etc/sudoers.d 目录中,应包含具有以下结构的文件:
/etc/sudoers.d/
├── 90-cloud-init-users
├── README
├── 010_ubuntu
└── 020_ansible
其中:
建议所有自定义规则的文件名应以数字和字母的组合开头,例如 "010_ubuntu"。这样可以使规则按照数字顺序加载,确保它们以正确的顺序覆盖默认规则。
所有在 sudoers.d 目录中的文件必须具有 0440 权限,并且必须属于 root 用户和 root 组。这是为了确保只有 root 用户可以编辑这些文件,并且 sudo 命令将不会执行由任何其他用户创建的文件中定义的命令。
可以使用 visudo 命令编辑 sudoers.d 目录中的任何文件。例如,编辑 010_ubuntu 文件,运行以下命令:
sudo visudo -f /etc/sudoers.d/010_ubuntu
此命令将打开 010_ubuntu 文件并使用 visudo 编辑器进行编辑。
下面是一个示例规则,允许指定用户执行sudo:
# /etc/sudoers.d/010_ubuntu
# Allow a specific user to run all commands
user ALL=(ALL) ALL
此规则允许名为 "user" 的用户执行所有命令,而无需输入密码。
更多规则示例可以在sudoers man页面中找到。通过运行以下命令来访问它:
man sudoers
在 Ubuntu 中,/etc/sudoers.d 目录包含用于存储 sudo 规则的文件。这些规则授权普通用户在没有特权的情况下执行特权操作。所有规则文件都必须具有正确的权限,并且应该使用 visudo 编辑器进行编辑。