Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Oct 2011 16:25:58 +0200
From:      Damien Fleuriot <ml@my.gd>
To:        freebsd-questions@freebsd.org
Subject:   Re: User tasks in ~/.logout
Message-ID:  <4E9451F6.7020800@my.gd>
In-Reply-To: <20111011155750.2f70109d.freebsd@edvax.de>
References:  <20111011155750.2f70109d.freebsd@edvax.de>

next in thread | previous in thread | raw e-mail | index | archive | help
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
file.

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.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4E9451F6.7020800>