[K12OSN] xterminator

Matt Oquist moquist at majen.net
Mon Sep 3 21:37:00 UTC 2007


I've written a program named 'xterminator' to provide the
functionality of purge_user in edubuntu. This is ready for *testing*
now, so if you want to help me test it please add the following two
lines to your /etc/apt/sources.list file:

------------------------------------------
deb     http://ppa.launchpad.net/moquist/ubuntu feisty universe
deb-src http://ppa.launchpad.net/moquist/ubuntu feisty universe
------------------------------------------
This package will work fine on gutsy as well; just use these same two
lines. The following commands will add those lines to the right file:

$ sudo echo deb http://ppa.launchpad.net/moquist/ubuntu feisty universe >> /etc/apt/sources.list
$ sudo echo deb-src http://ppa.launchpad.net/moquist/ubuntu feisty universe >> /etc/apt/sources.list

Then:
$ sudo apt-get update
$ sudo apt-get install xterminator

xterminator kills ALL of a user's [other] processes when she first
starts an X session. After she terminates her X session, there is
a short delay and all her remaining processes are killed, and then
xterminator exits.

All this killing of processes is logged in /var/log/syslog.

I would like to add a config file that lets the administrator specify
whether the killing should happen only at login, only after logout, or
both. But that's not done yet.

Note the following:
* If you have this on your system, each user can only have one login
  session at a time. If you have kids sharing usernames & passwords
  then they'll be kicking each other out. (This is part of why the
  syslogging is important; it provides more data about what may be
  happening when your users complain that their computers crash...)
* If your users depend on cron jobs, ssh sessions, or any other type
  of persistent process that runs before, after, or outside
  a graphical login session, then xterminator will kill those
  processes, too. In fact, a good addition to the config file might be
  a list of process names *NOT* to kill, ever.
* If the effective UID of an xterminator process is 0 (i.e., if root
  runs 'xterminator', it exits immediately. Oh...but the message it
  prints should be to stderr, not stdout. One more thing to fix...
* If you execute xterminator on the command line, it will work there,
  too. i.e., it will kill all your processes except your shell and
  its ancestors, and after you exit your shell it will clean up all
  your other processes on the system.

--matt

--
Open Source Software Engineering Consultant
http://majen.net/




More information about the K12OSN mailing list