Я запустил новое задание, которое главным образом использует Ubuntu и имеет Кв. - являются базирующимися boostrap сценарий для удара. Я переименовал пакеты как соответствующие от MacPorts, но некоторые программы занимают много времени достаточно для создавания/устанавливания этого, sudo испытывает таймаут. Существует ли способ, которым я могу запросить пароль в начале сценария и затем не попросить его снова, пока сценарий не закончен?
Мои мысли - то, что я могу так или иначе установить переменную на терминальный сеанс для переопределения sudo тайм-аута, затем восстанавливают его, но я не знаю, является ли это лучшим способом. Идеально новый человек мог выполнить это в первый день и уйти, в то время как они склоняются к большему количеству административного материала.
Выполненный sudo visudo
в Терминале и добавляют следующую строку к Defaults
"блок" для получения тайм-аута 1 часа:
Defaults timestamp_timeout=60
От man sudoers
:
timestamp_timeout
Число минут, которые могут протечь прежде sudo, попросит passwd снова. Значение по умолчанию равняется 5. Установите это на 0, чтобы всегда запросить пароль. Если установлено на значение меньше чем 0 метка времени пользователя никогда не будет истекать. Это может использоваться, чтобы позволить пользователям создавать или удалять свои собственные метки времени через sudo-v и sudo-k соответственно.
Знайте, что Вы открываете себя для проблем безопасности. Сделайте частое использование sudo -k
вызвать тайм-аут.
можно установить дерево портов для выполнения с пользователем:
Установите macports, как обычно, затем прежде, чем установить показанный дерево портов в /opt/local
Вашему пользователю. Теперь все, что Вы делаете с портами, может обойтись без sudo. Только порты, которые должны базироваться priviledge для установки материала как новые пользователи, группы или службы, перестанут работать и только работать с sudo.
Были планы реализовать что-то как priviledge разделение в macports, но я никогда не продолжал, чтобы узнать, было ли это реализовано.