Created
July 19, 2013 12:48
-
-
Save sjourdan/6038881 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
PATHPATCH="/root/patch-ovh" | |
PATHRCS="/etc/default" | |
PATHCHECK="/etc/init.d" | |
PATHINITTAB="/etc" | |
ECHO="/bin/echo" | |
APTGET="/usr/bin/apt-get" | |
WGET="/usr/bin/wget" | |
RM="/bin/rm" | |
MV="/bin/mv" | |
CHMOD="/bin/chmod" | |
$ECHO "On verifie que /root/patch-ovh n'existe pas" | |
$ECHO "" | |
if [ -d $PATHPATCH ]; then | |
$ECHO "Etrange, le repertoire existe deja..." | |
$ECHO "Tant pis, je le vire..." | |
`$RM -rf /root/patch-ovh` | |
$ECHO "Voila qui est fait, on peut partir sur de bonnes bases ;-)" | |
$ECHO "" | |
else | |
$ECHO "Ok, c'est bon pas de mauvaises surprises" | |
fi | |
$ECHO "Je le cree et me place dedans" | |
$ECHO "" | |
`mkdir $PATHPATCH` | |
cd $PATHPATCH | |
$ECHO "Est ce qu'on a wget sur ce serveur ?" | |
$ECHO "====================================" | |
if [ -e $WGET ]; then | |
$ECHO "Cool, wget est present" | |
$ECHO "" | |
else | |
$ECHO "Merde, wget pas la, faut le recuperer" | |
$ECHO "Un petit coup d'apt-get..." | |
$ECHO "$APTGET install wget" | |
`$APTGET install wget;` | |
$ECHO "" | |
fi | |
$ECHO "On download les fichiers sur ftp" | |
$ECHO "================================" | |
`$WGET -q ftp://ftp.ovh.net/made-in-ovh/debian/file/patch-0.1/rcS` | |
$ECHO -n "Download en cours..." | |
`$WGET -q ftp://ftp.ovh.net/made-in-ovh/debian/file/patch-0.1/checkroot.sh` | |
$ECHO -n "..." | |
`$WGET -q ftp://ftp.ovh.net/made-in-ovh/debian/file/patch-0.1/checkfs.sh` | |
$ECHO -n "..." | |
`$WGET -q ftp://ftp.ovh.net/made-in-ovh/debian/file/patch-0.1/inittab` | |
$ECHO "terminé" | |
if [ -e $PATHPATCH/rcS ] && [ -e $PATHPATCH/checkroot.sh ] && [ -e $PATHPATCH/checkfs.sh ] && [ -e $PATHPATCH/inittab ]; then | |
$ECHO "Le download des fichiers s'est bien effectué, on peut continuer" | |
$ECHO "" | |
$ECHO "Suppression des fichiers à changer" | |
$ECHO "==================================" | |
$ECHO "" | |
`$RM -f $PATHRCS/rcS` | |
`$RM -f $PATHCHECK/checkroot.sh` | |
`$RM -f $PATHCHECK/checkfs.sh` | |
`$MV $PATHINITTAB/inittab $PATHINITTAB/inittab.old` | |
$ECHO "Mise en place des nouveaux fichiers" | |
$ECHO "===================================" | |
$ECHO "" | |
`$MV $PATHPATCH/rcS $PATHRCS` | |
`$MV $PATHPATCH/checkroot.sh $PATHCHECK` | |
`$MV $PATHPATCH/checkfs.sh $PATHCHECK` | |
`$MV $PATHPATCH/inittab $PATHINITTAB` | |
$ECHO "On chmod un coup, ça évite les mauvaises surprises au reboot" | |
$ECHO "============================================================" | |
# Y a 2 fichiers en check* dans /etc/rcS.d/, c les notres dc pas de pb | |
`$CHMOD +x $PATHCHECK/check*` | |
$ECHO "" | |
$ECHO "Suppression du repertoire de patch" | |
$ECHO "==================================" | |
`cd /root` | |
`$RM -rf /root/patch-ovh` | |
`$RM -f /root/patch.sh` | |
# et celui là pas sûr qu'il soit déjà parti... | |
# je préfère le supprimer pour éviter les conneries | |
`$RM -f /root/livraison.sh` | |
$ECHO "" | |
$ECHO -n "Fin du patch, " | |
$ECHO -n `hostname` | |
$ECHO " est maintenant à jour!" | |
exit | |
else | |
$ECHO "Les fichiers ne sont pas là, je me casse..." | |
$ECHO "J'ai détecté qu'il y avait un ou plusieurs fichiers absents" | |
$ECHO "Vous pouvez essayer de relancer le patch de la manière suivante: sh patch.sh" | |
$ECHO "[ERREUR FATATLE] : fichiers de ftp absents" | |
exit | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment