launch a script at login logout

antonello facchetti antonello.facchetti at alice.it
Wed Jan 16 10:48:52 UTC 2013


I'm renewing a class labwith edubuntu 12.04.
It is a wireless network (no time to explain why, but it has to be 
wireless), therefore with less performances than a cables one(at least I 
was not able to get the same performances).
So, thinking about the management of users, with / home on a centralized 
nfs server, I get slowness issue (example: 25 students simultaneously 
opening openoffice writer, and getting stuck on the splash screen of 
openoffice) .

I thought I'd tackle the problem by minimizing networking and trying to 
do as much as possibie locally, trying a sort of "roaming" solution.
This is my solution.
I mount the homes from the server on a directory called /server in the 
local clients.
Each time a user logs in, immediately after thelogin, I execute a:
rsync -avq exclude = '. *' /server/$USER /home/
that copies from the server the user's documents (only documents and not 
the hidden configuration files). Then the user works locally without 
affecting the network.
At logoff I launch the opposite command:
rsync -avq exclude = '*.' /home/$USER /server/
to synchronize all work in the server.

Before, the lab had ubuntu 10.04 (gnome) clients, and the solution was 
to put the two commands in the scripts /etc/gdm/PostLogin/Default and 
/etc/gdm/PostSession/Default.
It worked quite well. Although the drawback was that you had to 
"closesession", as the script did not start with "stop system."

Now the laboratory has new machines wth Edubuntu 12.10. There is a 
possibility to choose Unity, Kde, Xfce.
So the positioning of the commands in /etc/gdm is no longer possible 
(there's no /etc/gdm directory anyway).
Where should I then put the two rsync commands in order to have them 
always executed with any desktop environment the user chooses?

TIA
Antonello




More information about the edubuntu-users mailing list