User tasks in ~/.logout

Damien Fleuriot ml at
Tue Oct 11 14:26:03 UTC 2011

On 10/11/11 3:57 PM, Polytropon wrote:
> I have some users who I want to "schedule" a specific job
> for which gets executed on their user account. For some
> of them, it will be twice a day, for others just once a
> month. It should happen at logout time.
> The intended mechanism to do so is ~/.logout, the C shell's
> logout script.
> Example: The user quits his work (shell "exit" or ending
> a custom program that is executed by the shell),
> now the ~/.logout shoult be executed, e. g. copying his
> current datasets to "immediate backup" (or other means of
> processing).
> I assume I cannot use this approach when the user runs
> his specific program _as_ the shell (per /etc/passwd),
> but that's not a problem now, as it's easier to give
> a regular shell and use ~/.login to "auto-exec" the
> user-specific program).
> My question is: As users connect to the system per SSH,
> how much time will the "at logout time" process have to
> finish work, or does it work _any_ time after the user
> has (1st) logged out and (2nd) terminated SSH connection
> (e. g. disconnect from SSH CLI client or PuTTY)?
> Will such a ~/.logout job finish even if the user closes
> his connection right after logout?
> And just in case a user does not properly log out (e. g.
> closes PuTTY right from the open session, maybe from within
> the program or shell he currently runs), will this cause
> ~/.logout to be processed, or will it be a "stale connection"?

I would suggest creating a dummy script that simply echoes the date to a

Test your different scenarios, see if your file was written to correctly.

If that works, insert a delay in your script, for example sleep 20.

More information about the freebsd-questions mailing list