На этот вопрос уже есть ответ:
Я пишу сценарий для загрузки сборки и установки кучи пакетов. Сборка иногда занимает время, и для установки требуются привилегии суперпользователя:
make; sudo make install
Что часто случается, так это то, что когда сборка занимает некоторое время, мне нужно продолжать вводить свой пароль. Я хочу иметь возможность войти в него только один раз. Я мог бы вызвать скрипт с root-доступом, но тогда (насколько я понимаю) каждый его вызов будет с root-правами. Я не хочу этого, потому что тогда, например, создается много файлов и папок, которые нельзя удалить без корневого доступа.
так как лучше всего это сделать?
Скрипт может содержать сами вызовы sudo. Если вы затем запустите скрипт с помощью sudo, он закроет все sudos в скрипте и все будет в порядке
Используйте параметр timestamp_timeout. Используйте visudo для редактирования файла sudoers:
sudo visudo
и измените строку настроек по умолчанию так, чтобы она выглядела следующим образом:
Defaults env_reset,timestamp_timeout=60
. Это позволит сохранить ваш пароль в течение 60 минут.
Измените это время по своему усмотрению:)