Hello, You just need to schedule a script to be executed at a certain interval of time (say 1 min).
The logic - Using "w" (or who) you can get login name, time logged in. $w Grab the output, and in a for loop, use grep to take the username from this and then try this - (Don't forget to check the username for root !) You have the time logged in and userid, check the system time ... and if the difference is one hour .. continue the steps below or move to next userid $ps -u "userid" it will list the process id(s) for all processes which belongs to the particular user. Pid TTY TIME CMD 1730 tty1 00:00:00 X 6610 tty1 00:00:00 bash Here "X" is the GUI Interface for the particular user And bash is the normal CUI. Now use kill -9 to terminate these process $kill -9 1730 $kill -9 6610 Try these commands on the shell and then and see what happens. Warning - Check the man docs, first learn how to disable cron jobs and then use cron. PS - Please don't use this to annoy your colleagues! ;-) HTH Regards, Rajiv -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of linuxprosun Sent: Thursday, February 17, 2005 5:13 PM To: [email protected] Subject: Re: [ilug-cal] Login expiration No, as far I know, cron don't bother about the login done or not, and I want to logout the person just after the 1hr, after (s)he logs in, not on around the clock basis. I used cron and found that if user logs in last minute of the cron schedule, then (s)he logs out just after 1min, from his/her log on. Thanks for your reply, please give me more suggestions. waiting prosun On Mon, 14 Feb 2005 08:08:50 +0530, Rajiv Lodha <[EMAIL PROTECTED]> wrote: > instead of "C" program, you can write a unix shell script ... make a > smart use of CRON(TAB), we used to do this with our fellow students at > our institue. > > but instead of 1 hr ... we did the same for 1 min ;-) > > He He He. > > rajiv > > > > > On Mon, 14 Feb 2005 05:16:29 +0530, Anshul <[EMAIL PROTECTED]> > wrote: >> On Sun, 13 Feb 2005 13:09:21 +0530, Manas Laha >> <[EMAIL PROTECTED]> wrote: >> > >> > Abhijit Banerjee wrote: >> > >> > >prosun try this >> > >in bashrc add at the end >> > > >> > >sleep 3600 >> > >logout >> > > >> > > >> > Won't work, unfortunately! All this will do is block the terminal for >> > one hour and then log the user out. Not quite what Prosun desires. >> > >> > Also, any modifications made to the user's .bashrc or .bash_profile >> can >> > be undone by the user any time in the one hour available to him. So, >> the >> > modifications should be made to the system-wide /etc/profile file. >> This >> > file, along with the user's own .bash_profile and .bashrc are read in >> > during every login. >> > >> > Here's an outline of what _probably_ has to be added in /etc/profile >> in >> > order to achieve what Prosun desires: >> > >> > 1. The process-id of the user's login shell has to be obtained. >> > 2. A shell script has to be started in the background and given this >> > process-id. This background process will sleep for 1 hr (Abhijit's >> sleep >> > 3600) and, on waking up, will kill the process whose process-id it >> knows. >> > >> > Even then, clever users may be able to get around this. >> > >> > Would others like to share their ideas too? >> > >> > - Manas Laha >> > >> >> Maybe one should write a small C program to do 2 and make it suid 755 >> and call it from etc profile. That will be beyond the users >> manipulation. >> >> etc profile can easily find the id using 'id -u' >> >> (A more professional design for a web kiosk operation could use a >> modified code of xscreensaver and call it from etc profile in the >> above way to lock the screen instead of logging a user out, so that >> you could remotely authorize and record a second hour! ) >> >> Anshul >> >> -- >> I'm too lazy to compose a creative sig, so i stole someone else's. >> >> -- >> To unsubscribe, send mail to [EMAIL PROTECTED] with the body >> "unsubscribe ilug-cal" and an empty subject line. >> FAQ: http://www.ilug-cal.org/node.php?id=3 >> > > -- Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/ -- To unsubscribe, send mail to [EMAIL PROTECTED] with the body "unsubscribe ilug-cal" and an empty subject line. FAQ: http://www.ilug-cal.org/node.php?id=3 -- To unsubscribe, send mail to [EMAIL PROTECTED] with the body "unsubscribe ilug-cal" and an empty subject line. FAQ: http://www.ilug-cal.org/node.php?id=3
