Как заставить sudo запомнить пароль для разных записей?

712
Cookie

sudoвремя от времени запрашивает пароль пользователя при использовании bash. Ответы на это объясняют, как изменить это время.

Мне было интересно, однако, можно ли будет синхронизировать это. У меня довольно надежный пароль, и когда я возвращаюсь в свою заблокированную систему, мне нужно сначала ввести пароль в заставку Ubuntu, а затем в каждую оболочку, с которой я работаю ... так часто 4-5 раз подряд ... Есть ли способ объединить все эти записи? например, когда экранная заставка просто разблокирована или используется другой терминал sudo, sudoбольше не будете спрашивать?

3

2 ответа на вопрос

3
Zoredache

Есть ли способ объединить все эти записи?

Я считаю, что вы ищете результат tty_ticketsустановки билетов. С недавней версией sudo это по умолчанию, хотя в прошлом это было не так.

человек sudoers .

tty_tickets Если установлено, пользователи должны проходить аутентификацию отдельно для каждого tty. Если этот флаг включен, sudo будет использовать файл с именем tty, в которое вошел пользователь, в каталоге отметок времени пользователя. Если отключено, вместо этого используется отметка времени каталога. Этот флаг включен по умолчанию.

2
Der Hochstapler

Я не думаю, что это возможно только с помощью конфигурации.

Дело в том, что когда вы разблокируете свою заставку, вы не повышаете привилегии. Вы даже не призываете sudoего разблокировать. sudoи вы заставите просто проверить входной пароль для той же базы данных. Похоже, вы делаете одно и то же дважды, но это не так.

Ваш скринсейвер может передать ваш ввод непосредственно для sudoавтоматического повышения, когда вы разблокируете его, но это было бы ужасно.

Таким образом, это оставляет раздражение, которое вы должны повторно поднять в каждом окне терминала после разблокировки. Боюсь, что это тоже дизайн. Совместное использование (или манипулирование) состоянием повышенных привилегий между процессами не похоже на то, что я хотел бы.

Я очень уверен, что вы могли бы написать какой-нибудь скрипт, который перечисляет все открытые окна терминала и вставляет sudoи непосредственно вводит ваш пароль. Затем вы можете попытаться вызвать этот скрипт автоматически, когда ваша заставка разблокирована.
Но вам не нужен ваш пароль root где-то в каком-либо скрипте, который автоматически вставляет его в кучу окон. Вы не

tl; dr Не автоматизировать sudo.