A l'heure ou vous jouissez d'un repos bien mérité, le temps CPU de vos machines est ( sauf exceptions ) bêtement gâché: pourquoi ne pas en profiter pour faire construire a votre NetBSD un userland et un kernel à jour toutes les nuits !

Considérons les points suivants, vous avez déja récupéré le src tree via CVS et buildé votre userland il y a quelques temps. De fait, vous possédez d'ores et déja un repertoire src/CVS/Root et son $HOME/.cvspass associé. L'automatisation peut avoir lieu. Voici un script simple à appeler depuis la crontab du user à qui appartient le source tree ( en général, root ) :

$ cat update-sys.sh 
#!/bin/sh

export PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/libexec
umask 077
HOME=/root

# ci-dessous, repertoire de construction temporaire
BDIR=/usr/current
TOOLDIR=$BDIR/tools
DESTDIR=$BDIR/dest

# ci-dessous, changez par votre CVSROOT préféré
CVSROOT=":pserver:anoncvs@nbcvs.gcu-squad.org:/home/nbcvs"
export TOOLDIR DESTDIR CVSROOT HOME

cd $BDIR/src
/usr/bin/cvs -z3 update -Pd

cd $BDIR/src
/bin/sh ./build.sh -D $BDIR/dest -O $BDIR/obj -T $BDIR/tools -u

cd sys/arch/i386/conf
/usr/sbin/config MONKERNEL
cd ../compile/MONKERNEL
make depend
make

DATE=`/bin/date`
echo ""
echo "--- FINISHED: $DATE"
# fin d'update-sys.sh

Rajoutez alors à votre crontab:

00 6 * * * /bin/sh /path/vers/update-sys.sh 2>&1 > /var/log/update.log

Ce script fait, dans l'ordre :

- CVS update du source tree - compilation du userland et installation dans un repertoire de destination temporaire - compilation du noyau

L'ensemble du userland fraichement compilé se trouvera ici dans le repertoire /usr/current/dest. Reste, après avoir testé l'integrité du nouveau userland, à installer le nouveau noyau puis pax'er l'userland(1).

(1) Reportez vous au tip “NetBSD/upgrade systeme” pour plus de details.

netbsd/daily_current.txt · Last modified: 2010/01/12 13:29 (external edit)