我希望能够关闭(或重新启动)我的系统而无需输入密码。我的/etc/doas.conf
看起来像这样,我的用户在wheel
组中
permit nopass :wheel as root cmd /sbin/poweroff
permit nopass :wheel as root cmd /sbin/reboot
permit :wheel
我认为这已经足够了,我可以进入
$ poweroff
但我收到消息
poweroff:必须是超级用户。
当我做
$ doas poweroff
我仍然需要输入我的密码。
如何配置 doas 以便我的用户可以poweroff
或reboot
不必输入我的密码?是否可以配置它以便我doas
根本不必输入?
答案1
您在文件中输入的命令doas.conf
(您可以应该为了安全起见,使用完整路径输入)必须与命令行上的操作完全相同。这意味着要关闭系统电源,您可以输入
doas /sbin/poweroff
显然,您可以为此设置一个方便的别名:
alias poweroff='doas /sbin/poweroff'
使用该别名后,您只需使用poweroff
它即可关闭系统电源。
此外,文件中的最后一个匹配项也doas.conf
很重要。就您而言,permit :wheel
匹配是因为您在wheel
组中,并且没有指定nopass
,这意味着您必须使用密码才能doas
运行/sbin/poweroff
。
只需删除文件中的最后一条规则doas.conf
(或将其移至顶部):
permit :wheel
permit nopass :wheel as root cmd /sbin/poweroff
permit nopass :wheel as root cmd /sbin/reboot