Under SunOS 4.x a customer was using a program called idledaemon. One of the functions of this daemon was to scan for idle users and log them out. The customer has migrated to Solaris 2.x and needs similar functionality. One option was to port idledaemon. After taking a brief look at the source code I decided to write my own version since idledaemon was too dependent on SunOS 4.x and had too many assumptions. The idea of logoutd was born.
Logoutd is not meant to be a clone of idledaemon. In fact it is much less than that. It only performs one thing, whereas idledaemon had a few other features.
Logoutd takes one argument in the command line. This argument must be a number specifying how long a user must be idle to be classified by logoutd as an idle user. Since it is possible that a user may be idle because she is waiting for a process to finish, or the process she is running has not yet produced any output for a long period of time, we cannot simply look at idle times. An idle user according to logoutd's definition has the following properties:
Logoutd spends most of it's time sleeping. It wakes up at intervals specified in minutes in the command line. It then scans for idle users, kills those that it finds and goes back to sleep.
Logoutd must be run as root.
You may obtain logoutd source code here . A solaris 2.5 binary is available here
If you like it and find it useful, don't hesitate to let me know, and thank me while you're at it. :)
If you find bugs or have problems with it or if you don't like its design, let me know too. You may reach me at edsel@canada.sun.com