Restaurar perfil usuaris locals Linkat 3
De Wiki Linkat
Restauració (congelació) del perfil d'usuari local en Linkat 3:
L'script següent permet restaurar de forma automàtica el perfil dels usuaris locals en Linkat 3. Aquest script té en consideració 4 perfils diferents i que corresponen als perfils:
<pre>
- estàndard (aquest perfil correspon a l'escriptori estàndard de linkat)
- infantil
- primària
- secundària
</pre>
Així doncs, si un usuari pertany a un grup (només 1) dels esmentats anteriorment, se li restaura, en el proper inici de sessió, l'escriptori corresponent al seu grup.
Requisits necessaris:
Per poder fer ús de l'script cal tenir instal·lats els paquets següents:
<pre>
perfil-usuari-infantil
perfil-usuari-primaria
perfil-usuari-secundaria
</pre>
Aquests paquets es poden instal·lar des del YaST
Instal·lació:
L'script disposa d'un instal·lador que és qui fa les comprovacions necessàries. Així, es comprova que els paquets corresponents als perfils d'infantil, primària i secundària estiguin instal·lats, crea el perfil estàndard (dins del directori /usr/share/linkat/profiles/), modifica el fitxer: /etc/gdm/PreSession/Default per tal que l'script s'executi a l'inici de la sessió de l'usuari i finalment crea els grups locals: estandard infantil primaria secundaria
El codi de l'instal·lador és el següent:
<pre>
- !/bin/bash
#
# Instal·lador
#
#
# Creació del fitxer perfil-estandard.tar.bz2 que no existeix per defecte
#
if [ -n "$(id | grep root)" ]; then
for i in $(echo perfil-usuari-infantil perfil-usuari-primaria perfil-usuari-secundaria); do
if [ "$(zypper search $i | grep $i | cut -d "|" -f 1)" != "i " ]; then
echo "El paquet $i ha d'estar instal·lat. Et recomano que facis la instal·lació amb el YaST"
exit 0
else
echo "El paquet $i està correctament instal·lat."
fi
done
echo "Els paquets corresponents als perfils es troben instal·lats. Ok"
if [ -e congela.sh ]; then
echo "Copiant el fitxer congela.sh a /usr/local/bin"
cp congela.sh /usr/local/bin/.
else
echo "El fitxer congela.sh no s'ha trobat"
exit 0
fi
if [ ! -f /usr/share/linkat/profiles/perfil-estandard.tar.bz2 ]; then
echo "Creant el perfil estandard a /usr/share/linkat/profiles"
cd /etc/skel
tar -jcf /usr/share/linkat/profiles/perfil-estandard.tar.bz2 \.[a-zA-Z]*
cd -
fi
if [ -e PreSession_Default.diff ]; then
if [ -z "$(cat /etc/gdm/PreSession/Default |grep congela)" ]; then
echo "Actualitzant el fitxer /etc/gdm/PreSession/Default perquè executi l'script congela.sh"
cp /etc/gdm/PreSession/Default /etc/gdm/PreSession/Default.bak
patch /etc/gdm/PreSession/Default < PreSession_Default.diff
else
echo "El fitxer /etc/gdm/PreSession/Default ja se li ha aplicat el patch."
fi
fi
echo "Fem la còpia de seguretat del fitxer de grups situat a /etc/group"
cp /etc/group /etc/group.bak
for i in $(echo estandard infantil primaria secundaria); do
if [ -z "$(cat /etc/group |grep ^$i)" ]; then
echo "Creant el grup local $i"
groupadd $i
else
echo "El grup $i ja existeix. No el donem d'alta"
fi
done
fi
</pre>
Aquest script ha de ser executat com a root per la qual cosa es recomana fer alguna prova abans en un ordinador de proves.
El programa ha donat d'alta els grups següents: estandard, infantil, primaria i secundaria.
Si vols que a l'usuari xavier se li restauri sempre el perfil de primària, cal anar al YaST i dir-li que pertanyi, com a grup secundari, al grup primaria. D'aquesta forma, l'uxuari xavier SEMPRE tindrà l'escriptori com el primer dia.
Una cosa a tenir en compte. El programa NO elimina ni carpetes ni documents creats per l'usuari. Només elimina les configuracions dels programes, així que els favorits del firefox, alguna extensió que tinguis de l'openoffice, etc. desapareixerà.