Установка значений по умолчанию в sudoers

Я пытаюсь установить Defaults соответствующим образом для pdebuild использование. Я определил псевдоним команды:

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

Страница man содержит информацию о параметре "По умолчанию!...", так что теоретически все должно быть в порядке.

Весь файл:

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

2 ответа

Решение

Я думаю, что ваша справочная страница не синхронизирована с версией sudo, которую вы используете. Я только что проверил 1.6.9p23 [aka changeset 5429:f7398cfbac71 ] из хранилища sudo, и sudoers Страница man показывает следующий синтаксис:

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

Там нет упоминания о 'Defaults' '!' Cmnd_List синтаксис доступен в более поздней версии. Похоже, что это онлайн-версия справочной страницы 1.6.9, которая показывает то же самое.

Просто чтобы добавить к тому, что сказал жаворонок, я попробовал ваш файл sudoers в моем sudo (1.7.4p5), и он разбирается нормально, без ошибок. Возможно, что версия, которую вы используете, не имеет такой сложной поддержки значений по умолчанию, как 1.7, или это просто ошибка. Об обновлении sudo не может быть и речи?

Другие вопросы по тегам