Congelar perfil d’usuari en ordinadors públics

La necessitat

Tenim varis ordinadors a disponibilitat pública. El problema és que molts usuaris deixen arxius descarregats, sessions obertes a les pàgines web i, fins i tot, canvis de configuració.

Necessitam crear una tasca que no deixi cap rastre d’ús.

La idea

Farem un script que s’executi a l’arrancada de l’ordinador i faci “neteja”.

La sol·lució

Cream usuaris

– Un usuari “administrador” amb contrasenya amb el qual farem totes les configuracions del sistema.

– Un usuari “public” sense contrasenya i sense permisos d’administador que sirà el que empraran el usuaris normalment.

Instal·lació de programari

Insta·larem amb l’usuari administrador el programari i impresores. Necessitam el 7z

Configuració de l’usuari “públic”

Entrarem al sistema amb l’usuari “públic” i configurarem icones, colors, menús, accessos directes a carpetes si és necessari, configuració del programari, …

Entrada al sistema de forma automàtica

Configurarem l’entrada automàtica al sistema per l’usuari “públic” i temps d’espera de 30 segons per donar temps a acabar l’script. Si entram amb l’usuari sense haver acabat d’executar-se veurem icones extranyes, menús que no es veuen, etc.

Cream fitxer base a restaurar

Tancam la sessió de l’usuari “public” i entram com usuari administrador. En una consola executam:

cd /home
sudo 7z a usuari.7z usuari

Cream script de restauració

Cream el fitxer /etc/init.d/restaura.sh que bàsicament fa:

  1. Esborra el home de l’usuari
  2. El crea buit.
  3. Restaura la còpia del fitxer comprimit.
  4. Dona permisos adeqüats a la carpeta /home/usuari
#!/bin/bash

FILENAME=/var/log/restaura.log

cd /home
rm -rf /home/usuari >$FILENAME
mkdir /home/usuari  >>$FILENAME
7z x usuari.7z >>$FILENAME

chown -R usuari:usuari /home/usuari >>$FILENAME

Cridam al script quan arranqui el sistema

Opció A) En el nostre cas, com que utilitzam una distribució basada en debian, executam la següent comanda:

update-rc.d restaura.sh defaults

Opció B) Desde el fitxer /etc/rc.local. Afegim la línia següent a l’esmentat fitxer abans del “exit 0”

/etc/init.d/restaura.sh

😉

Aquesta entrada s'ha publicat en GNU/linux i etiquetada amb , . Afegiu a les adreces d'interès l'enllaç permanent.

Deixa un comentari