Podczas korzystania z sudo w systemie Linux pyta o hasło roota, ale tylko przy pierwszym uruchomieniu. Jeśli uruchomisz inną komendę sudo, pamięta, że już wpisałeś hasło i nie prosi o nie:
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)
Jak robi to sudo? Gdzie są przechowywane te informacje? Moim pomysłem jest to, że pamięta identyfikator terminala (jak pts / 1), ale gdzie to jest przechowywane? Pierwszy proces sudo kończy się, gdy jest wykonywany z poleceniem, prawda?
Wiem, że sudo to program setuid, więc ma przez cały czas uprawnienia root'a, ale wciąż nie mogę znaleźć dobrego miejsca do przechowywania informacji, że użytkownik już wprowadził hasło. Czy w grę wchodzi proces demona?