LINUX.ORG.RU

Сообщения avallach2000

 

Индикация статуса sudo в $PS1 или нечто подобное

Форум — General

ЛОР, помоги. Хочется каким-то образом узнавать о истечении тайм-аута 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)
  • выполнение любой команды до истечения тайм-аута сбрасывает таймаут в максимум

Кто-нибудь может предложить более цивилизованные способы решить задачу?

 , ,

avallach2000
()

RSS подписка на новые темы