PAM_TIMESTAMP(8)
๐ pam_timestamp โ bestie's guide to the vibes ๐
okay so this is pam_timestamp from the Linux-PAM Manual, section 8 (that's the sysadmin section, iykyk). it's a PAM module. it remembers that you already logged in so you don't have to do it again five seconds later. iconic behaviour, honestly.
โจ NAME โจ
pam_timestamp โ authenticate using cached successful authentication attempts ๐
like. it literally caches your W's and reuses them. no cap.
๐ธ SYNOPSIS ๐ธ
pam_timestamp.so [timestampdir=directory] [timestamp_timeout=number]
[verbose] [debug]
that's it bestie, four optional lil arguments. she's low maintenance ๐
๐ฆ DESCRIPTION ๐ฆ
in a nutshell โ and I am putting you in a nutshell for this one โ pam_timestamp caches successful authentication attempts, and lets you use a recent successful attempt as the basis for authentication. it's the same kind of mechanism that's used in sudo. yes, that sudo. the one you type before every single command because you forgot to su again. ๐ซถ
here's the tea on how it actually works:
when an application opens a session using pam_timestamp, a timestamp file gets created in the timestampdir directory for the user. that's the little receipt of your success โจ
then, when an application tries to authenticate the user, pam_timestamp will treat a sufficiently recent timestamp file as grounds for succeeding. boom. no password prompt. you're in. periodt. ๐
โญ OPTIONS โญ
timestampdir=directoryโ specify an alternate directory wherepam_timestampcreates timestamp files. like, if you want your receipts filed somewhere else. go off, organise your life. ๐timestamp_timeout=numberโ how long shouldpam_timestamptreat the timestamp as valid after its last modification date, measured in seconds. default is300seconds. so five minutes of freedom, bestie. use them wisely. โณverboseโ attempt to inform the user when access is granted. she'll tell you when you ate. ๐ฅdebugโ turns on debugging messages sent tosyslog(3). for when you need the receipts about the receipts. ๐
๐ MODULE TYPES PROVIDED ๐
the auth and session module types are provided. two for the price of one, we love a multitasker. ๐
๐ RETURN VALUES ๐
PAM_AUTH_ERRโ the module was not able to retrieve the user name, or no valid timestamp file was found. basically: couldn't find you, couldn't find your receipt. tragic. ๐ญPAM_SUCCESSโ everything was successful. ATE. LEFT NO CRUMBS. โจPAM_SESSION_ERRโ the timestamp file could not be created or updated. the receipt machine broke. ๐
๐ NOTES ๐
users can get confused when they are not always asked for passwords when running a given program. some users reflexively begin typing information before noticing that it is not being asked for.
not me typing my whole password into a prompt that already let me in ๐ซ yeah so. heads up bestie. if your password is suddenly appearing on screen in plain text, it's because nobody asked. look before you type. ๐
๐ง EXAMPLES ๐ง
here's the exact setup, copy it, don't freestyle it:
auth sufficient pam_timestamp.so verbose
auth required pam_unix.so
session required pam_unix.so
session optional pam_timestamp.so
sufficient for the timestamp, required for pam_unix.so as the fallback โ so if the timestamp isn't fresh, you just get asked normally. and on the session side, pam_unix.so is required while pam_timestamp.so is optional. the way this is structured? chef's kiss. ๐ค
๐ FILES ๐
/var/run/pam_timestamp/...โ timestamp files and directories. that's where the receipts live. ๐
๐ฅ SEE ALSO ๐ฅ
go read them, they're all part of the same little PAM family reunion. ๐
๐ AUTHOR ๐
pam_timestamp was written by Nalin Dahyabhai. thank you for your service, king. ๐
okay that's the whole page, you're all caught up bestie ๐ซถ this was the Linux-PAM Manual version, dated 09/27/2026. go forth and timestamp responsibly. mwah. ๐โจ
๐ฆ where this page comes from
- arch rolling: pam 1.7.3-1 ยท GPL-2.0-only
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms