在sudoers中设置默认值

我正在尝试以适当的方式为pdebuild使用设置Defaults 。 我已经定义了命令别名:

 Cmnd_Alias PBUILDER = /usr/sbin/pbuilder, /usr/bin/pdebuild, /usr/bin/debuild-pbuilder 

我试图设置只为那个默认值:

 Defaults env_reset Defaults!PBUILDER env_keep="DIST ARCH" 

这与env_reset一行中的语法错误失败。 当我将Defaults!PBUILDER行注释掉时,它工作得很好。 我应该在这里更新以使其工作?


附加信息:

 $ sudo -V Sudo version 1.6.9p17 

手册页上有关于“Defaults!…”选项的信息,所以理论上应该是可以的。

整个文件是:

 Cmnd_Alias PBUILDER = /usr/sbin/pbuilder, /usr/bin/pdebuild, /usr/bin/debuild-pbuilder Defaults env_reset Defaults!PBUILDER env_keep="DIST ARCH" root ALL=(ALL) ALL stan ALL=(ALL) PBUILDER %engineering ALL=(ALL) ALL 

我认为您的手册页与您使用的sudo版本不同步。 我刚刚从sudo存储库中检出1.6.9p23 [aka changeset 5429:f7398cfbac71 ], sudoers手册页显示以下语法:

  Default_Type ::= 'Defaults' | 'Defaults' '@' Host_List | 'Defaults' ':' User_List | 'Defaults' '>' Runas_List 

没有提到'Defaults' '!' Cmnd_List 更新版本中提供了'Defaults' '!' Cmnd_List语法。 这似乎是1.6.9手册页的在线版本,它显示了同样的事情。

只是添加到什么样的说法,我已经在我的sudo(1.7.4p5)尝试sudoers文件,它parsing罚款,没有错误。 您使用的版本可能没有1.7的默认支持的复杂的支持,或者它可能只是一个错误。 升级sudo是不是问题?