13 - Programació de tasques

Hi ha tres operacions que les màquines faran d'una manera automàtica:

Aturada programada a una hora determinada, per evitar que algú es despisti i resti tota la nit en marxa.

Operacions de manteniment dels equips, especialment dels usuaris genèrics.

Sincronització del rellotge de la màquina

La dues primeres operacions es faran mitjançant una tasca programada a crontab i la sincronització del rellotge, es farà en el moment de l'arrencada amb rc.local

Aturada de les estacions

Editar l'arxiu /etc/crontab

00 18 * * * root /sbin/shutdown -h now

Aquest codi programa l'aturada de l'estació tots els dies a les 18:00

Operació de manteniment nocturna

Un servidor de l'escola posarà el maquinari en marxa, automàticament a les 22:00, per efectuar les operacions de manteniment automatitzat nocturn, per tant a crontab s'afegeix aquesta línia, per tal d'iniciar el procés.
La última línia dels arxius de manteniment nocturn provoquen el tancament de l'equip un cop finalitzades les operacions.

Editar l'arxiu /etc/crontab

15 22 * * * root /root/procedimentsSH/OperacioAutomaticaNocturna.sh

Preparació de les operacions de manteniment nocturn

Crear una carpeta a /root, nomenada procedimentsSH

En aquesta carpeta (/root/procedimentsSH) es creen els següents arxius:

OperacioAutomaticaNocturna.sh

Aquest procediments bàsicament fa tres operacions:

Actualitzar el contingut de la carpeta on es guarden els usuaris genèrics de l'estació /etc/skel-ubuntu_12.04.Alumne i /etc/skel-ubuntu_12.04.Professorat

Restaurar els homes dels usuaris genèrics, eliminant les modificacions que s'hagin pogut produir

Atura la màquina un cop enllestit el procés.

# OperacioAutomaticaNocturna.sh
#
# Aquest procediment fa l'actualització dels perfils dels usuaris
# està pensat per una posta en marxa per wakeonlan
# actualització dels perfils i posterior aturada de l'ordinador.
sh /root/procedimentsSH/ActualitzaHomeGeneric.sh
sh /root/procedimentsSH/RestauraHome.sh
halt

ActualitzaHomeGeneric

Fa la còpia de la configuració dels usuaris genèrics (alumnat i professorat) de la carpeta del servidor

####
# ActualitzaHomeGeneric
#
# Aques procediment còpia les carpetes amb els usuaris genèrics del servidor
# a la carpeta /etc de l'estació on s'executa el procediment
cd /etc
rm -rf skel-ubuntu_12.04.Alumne
cp -r /mnt/nfs/S/.UsuarisGenerics/skel-ubuntu_12.04.Alumne /etc/skel-ubuntu_12.04.Alumne
rm /etc/skel-ubuntu_12.04.Alumne/.ICEauthority
chown -R root:root skel-ubuntu_12.04.Alumne
chmod -R 770 skel-ubuntu_12.04.Alumne
rm -rf skel-ubuntu_12.04.Professorat
cp -r /mnt/nfs/S/.UsuarisGenerics/skel-ubuntu_12.04.Professorat /etc/skel-ubuntu_12.04.Professorat
rm /etc/skel-ubuntu_12.04.Professorat/.ICEauthority
chown -R root:root skel-ubuntu_12.04.Professorat
chmod -R 770 skel-ubuntu_12.04.Professorat
echo "final del procediment"

RestauraHome.sh

Crida al procediment CopiaHomeGeneric.sh tot indicant el nom de l'usuari que s'ha de copia (carpeta home de destí), el seu grup i la configuració que s'ha d'implementar (carpeta skel d'origen).

####
# RestauraHome
#
# Aquesr procediment còpia l'escriptori corresponent al grup de genèrics a tots els
# usuaris genèrics que s'especifiquen.
#
# Fa servir el procediment CopiaHomeGeneric.sh
#
###
###
# Usuaris genèrics de laulumnat
###
sh /root/procedimentsSH/CopiaHomeGeneric.sh argo alumnat skel-ubuntu_12.04.Alumne
###
# Usuari genèric del professorat
###
sh /root/procedimentsSH/CopiaHomeGeneric.sh prof professorat skel-ubuntu_12.04.Professorat

CopiaHomeGeneric.sh

Aquest procediment efectuar la supressió del contingut de la carpeta de l'usuari que s'està actualitzant i hi copia el contingut de la configuració per defecte per aquest usuari genèric

####
# CopiaHomeGeneric
#
# Aques procediment còpia l'skel d'un usuari genèric a la carpeta del l'usuari indicat
#
# Cal passar dos paràmetres
# $1 - Indicant el nom de la carpeta home de l'usuari que es vol copiar
# $2 - Grup al qual pertany l'usuari
# $3 - Indicant el nom de la carpeta amb l'SKEL que es vol copiar.
#
if [ $# -lt 3 ]; then
echo "Necessites passar tres paràmetres"
echo " 1 - Nom de la carpeta home de l'usuari que es vol copiar"
echo " 2 - Grup al qual pertany l'usuari"
echo " 3 - Nom de la carpeta amb l'SKEL que es vol copiar"
exit 1
fi
rm -rf /home-local/$1/*
rm -rf /home-local/$1/.*
rm -rf /root/.tmp/$1
cp -r /etc/$3 /root/.tmp
mv /root/.tmp/$3 /root/.tmp/$1
cp -r /root/.tmp/$1 /home-local
rm -rf /root/.tmp/$1
cd /home-local
chown -R $1:$2 $1
chmod -R 770 $1
echo "final del procediment"

13.2 - Sincronització del rellotge

Instal·lat el programa

sudo apt-get update
sudo apt-get install ntpdate

Editar l'arxiu rc.local. Afegir la línia

sudo ntpdate pool.ntp.org

Tornar a l'inici | Següent anterior | Següent pas | Implementació de LINUX/UBUNTU