ЛОР, помоги. Хочется каким-то образом узнавать о истечении тайм-аута sudo в рамках текущей сессии (желательно, чтобы возможность повышения привилегий была видна прямо в приглашении шелла). Максимум, что у меня получилось придумать, это сделать в .bashrc вот так:
PROMPT_COMMAND='history -a ; sudo -n /bin/true > /dev/null 2>&1 ; if [ $? = "0" ]; then export __sudo_prompt_color=31 ; else __sudo_prompt_color=32 ; fi'
PS1='[$?]\n${debian_chroot:+($debian_chroot)}\[\033[01;${__sudo_prompt_color}m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
Очевидные минусы понятны:
- срёт в /var/auth.log (sudo -n)
- выполнение любой команды до истечения тайм-аута сбрасывает таймаут в максимум
Кто-нибудь может предложить более цивилизованные способы решить задачу?