Використовуючи sudo в Linux, він запитує корінний пароль, але лише коли ви запускаєте його. Якщо ви запустите іншу команду sudo, вона пам’ятає, що ви вже ввели пароль і не вимагає цього:
thomas@ubuntu:~$ sudo id
[sudo] password for thomas: ******
uid=0(root) gid=0(root) groups=0(root)
thomas@ubuntu:~$ sudo id
uid=0(root) gid=0(root) groups=0(root)
Як це робить судо? Де зберігається ця інформація? Моя ідея полягає в тому, що він запам'ятовує ідентифікатор терміналу (як pts / 1), але де це зберігається? Перший процес судо закінчується, коли це робиться командою, правда?
Я знаю, що sudo - це налаштована програма, тому вона постійно має привілеї root, але я все ще не можу придумати гарного місця для зберігання інформації про те, що користувач уже ввів пароль. Чи задіяний якийсь процес демона?