#!/bin/sh PRESENT=7 OLD=6 DEFUSER="root" DEFGROUP="lalis" DESTMAIL="contact@lalis.fr" FROMMAIL="root@lalis.fr" TASKRPM="task-lalis" MIRRORPATH="/mirror/mageia" MEDIAINFO_PATH="$MIRRORPATH/config_lalis/media_info" MSG=/tmp/mirror_mageia.mail SERVEUR="rsync://fr2.rpmfind.net/linux/mageia" #SERVEUR="http://ftp.free.fr/mirrors/mageia.org" #SERVEUR="rsync://ftp.acc.umu.se/mirror/mageia/" #SERVEUR="rsync://ftp.belnet.be/mageia" function title() { echo -e "\e[1;32m$1\e[0m" echo -e "$1" >>$MSG } function info() { echo -e "\e[36m$1\e[0m" echo -e "$1" >>$MSG } iferror( ) #$RESULT, $TXT, $LINENO { if [ "$1" -eq 0 ];then echo -e "$2: réussi" #echo -e "$2: réussi" >>$MSG else echo -e "\e[36mligne $3 - $2\e[0m: échoué" echo -e "ligne $3 - $2: échoué" >>$MSG fi } echo "Synchronisation miroirs Mageia" pidof -o %PPID -x -s mirror_mageia if [ $? -eq 0 ];then echo "mirror_mageia déjà lancé" else #Mageia current version echo "Subject: Synchro miroirs" >$MSG title "Synchronisation de Mageia $PRESENT" rsync -a -H -S -v --delete-after --delete-excluded --delay-updates --exclude="*testing" --exclude="*debug/" --exclude="SRPMS/" $SERVEUR/distrib/$PRESENT/ "$MIRRORPATH"/distrib/$PRESENT/ if [ $? -eq 0 ]; then cd "$MIRRORPATH"/distrib/$PRESENT cp "$MEDIAINFO_PATH"/"$PRESENT"_i586_media.cfg ./i586/media/media_info/media.cfg iferror "$?" "Copie de "$PRESENT"_i586_media.cfg vers ./i586/media/media_info/media.cfg" $LINENO cp "$MEDIAINFO_PATH"/"$PRESENT"_x86_64_media.cfg ./x86_64/media/media_info/media.cf iferror "$?" "Copie de "$PRESENT"_x86_64_media.cfg vers ./x86_64/media/media_info/media.cfg" $LINENO cp "$MIRRORPATH/$TASKRPM"* ./i586/media/core/release/ iferror "$?" "Copie de $TASKRPM vers ./i586/media/core/release" $LINENO cp "$MIRRORPATH/$TASKRPM"* ./x86_64/media/core/release/ iferror "$?" "Copie de $TASKRPM vers ./x86_64/media/core/release" $LINENO nice -n 19 gendistrib --nobadrpm --blind --skipmissingdir ./i586 nice -n 19 gendistrib --nobadrpm --blind --skipmissingdir ./x86_64 chown $DEFUSER:$DEFUSER -R "$MIRRORPATH"/distrib/$PRESENT chmod a+rX -R "$MIRRORPATH"/distrib/$PRESENT rsync "$MIRRORPATH"/distrib/$PRESENT/i586/isolinux/i386/vmlinuz /var/lib/tftpboot/X86PC/linux/images/vmlinuz-mageia$PRESENT iferror "$?" "Copie de vmlinuz-$PRESENT" $LINENO rsync "$MIRRORPATH"/distrib/$PRESENT/x86_64/isolinux/x86_64/vmlinuz /var/lib/tftpboot/X86PC/linux/images/vmlinuz-mageia"$PRESENT"_64 iferror "$?" "Copie de vmlinuz-$PRESENT" $LINENO rsync "$MIRRORPATH"/distrib/$PRESENT/i586/isolinux/i386/all.rdz /var/lib/tftpboot/X86PC/linux/images/mageia$PRESENT.rdz iferror "$?" "Copie de mageia$PRESENT.rdz" $LINENO rsync "$MIRRORPATH"/distrib/$PRESENT/x86_64/isolinux/x86_64/all.rdz /var/lib/tftpboot/X86PC/linux/images/mageia"$PRESENT"_64.rdz iferror "$?" "Copie de mageia"$PRESENT"64.rdz" $LINENO else info "Erreur rsync Mageia $PRESENT" fi rsync -avP --exclude "*GNOME*" $SERVEUR/iso/$PRESENT* "$MIRRORPATH"/iso/ iferror "$?" "rsync Mageia $PRESENT isos" $LINENO #cauldron title "Synchronisation de Mageia cauldron" rsync -v -aHS --delete-after --delete-excluded --delay-updates --exclude=SRPMS/ --exclude "armv5tl/" --exclude=*testing --exclude="*debug/" $SERVEUR/distrib/cauldron/ "$MIRRORPATH"/distrib/cauldron/ if [ $? -eq 0 ]; then cd "$MIRRORPATH"/distrib/cauldron cp "$MEDIAINFO_PATH"/cauldron_i586_media.cfg ./i586/media/media_info/media.cfg iferror "$?" "Copie de cauldron_i586_media.cfg vers ./i586/media/media_info/media.cfg" $LINENO cp "$MEDIAINFO_PATH"/cauldron_x86_64_media.cfg ./x86_64/media/media_info/media.cfg iferror "$?" "Copie de cauldron_x86_64_media.cfg vers ./x86_64/media/media_info/media.cfg" $LINENO cp "$MIRRORPATH/$TASKRPM"* ./i586/media/core/release/ iferror "$?" "Copie de $TASKRPM vers ./i586/media/core/release" $LINENO cp "$MIRRORPATH/$TASKRPM"* ./x86_64/media/core/release/ iferror "$?" "Copie de $TASKRPM vers ./x86_64/media/core/release" $LINENO nice -n 19 gendistrib --nobadrpm --blind --skipmissingdir ./i586 nice -n 19 gendistrib --nobadrpm --blind --skipmissingdir ./x86_64 chown $DEFUSER:$DEFUSER -R "$MIRRORPATH"/distrib/cauldron chmod a+rX -R "$MIRRORPATH"/distrib/cauldron rsync "$MIRRORPATH"/distrib/cauldron/i586/isolinux/i386/vmlinuz /var/lib/tftpboot/X86PC/linux/images/vmlinuz-cauldron iferror "$?" "Copie de vmlinuz-cauldron" $LINENO rsync "$MIRRORPATH"/distrib/cauldron/x86_64/isolinux/x86_64/vmlinuz /var/lib/tftpboot/X86PC/linux/images/vmlinuz-cauldron64 iferror "$?" "Copie de vmlinuz-cauldron64" $LINENO rsync "$MIRRORPATH"/distrib/cauldron/i586/isolinux/i386/all.rdz /var/lib/tftpboot/X86PC/linux/images/cauldron.rdz iferror "$?" "Copie de cauldron.rdz" $LINENO rsync "$MIRRORPATH"/distrib/cauldron/x86_64/isolinux/x86_64/all.rdz /var/lib/tftpboot/X86PC/linux/images/cauldron64.rdz iferror "$?" "Copie de cauldron64.rdz" $LINENO else info "erreur rsync cauldron" fi #Mageia $OLD title "Synchronisation de Mageia $OLD" rsync -a -H -S -v --delete-after --delete-excluded --delay-updates --exclude=*testing --exclude=clef --exclude="*debug/" --exclude="armv5tl/" --exclude="SRPMS/" $SERVEUR/distrib/$OLD/ "$MIRRORPATH"/distrib/$OLD/ if [ $? -eq 0 ]; then cd "$MIRRORPATH"/distrib/$OLD cp "$MEDIAINFO_PATH"/"$OLD"_i586_media.cfg ./i586/media/media_info/media.cfg iferror "$?" "Copie de "$OLD"_i586_media.cfg vers ./i586/media/media_info/media.cfg" $LINENO cp "$MEDIAINFO_PATH"/"$OLD"_x86_64_media.cfg ./x86_64/media/media_info/media.cf iferror "$?" "Copie de "$OLD"_x86_64_media.cfg vers ./x86_64/media/media_info/media.cfg" $LINENO cp "$MIRRORPATH/$TASKRPM"* ./i586/media/core/release/ iferror "$?" "Copie de $TASKRPM vers ./i586/media/core/release" $LINENO cp "$MIRRORPATH/$TASKRPM"* ./x86_64/media/core/release/ iferror "$?" "Copie de $TASKRPM vers ./x86_64/media/core/release" $LINENO nice -n 19 gendistrib --nobadrpm --blind --skipmissingdir ./i586 nice -n 19 gendistrib --nobadrpm --blind --skipmissingdir ./x86_64 chown $DEFUSER:$DEFUSER -R "$MIRRORPATH"/distrib/$OLD chmod a+rX -R "$MIRRORPATH"/distrib/$OLD rsync "$MIRRORPATH"/distrib/$OLD/i586/isolinux/i386/vmlinuz /var/lib/tftpboot/X86PC/linux/images/vmlinuz-mageia6 iferror "$?" "Copie de vmlinuz-$OLD" $LINENO rsync "$MIRRORPATH"/distrib/$OLD/x86_64/isolinux/x86_64/vmlinuz /var/lib/tftpboot/X86PC/linux/images/vmlinuz-mageia6_64 iferror "$?" "Copie de vmlinuz-$OLD" $LINENO rsync "$MIRRORPATH"/distrib/$OLD/i586/isolinux/i386/all.rdz /var/lib/tftpboot/X86PC/linux/images/mageia6.rdz iferror "$?" "Copie de $OLD.rdz" $LINENO rsync "$MIRRORPATH"/distrib/$OLD/x86_64/isolinux/x86_64/all.rdz /var/lib/tftpboot/X86PC/linux/images/mageia6_64.rdz iferror "$?" "Copie de $OLD64.rdz" $LINENO else info "erreur rsync Mageia $OLD" fi rsync --exclude "*GNOME*" -avP $SERVEUR/iso/"$OLD"* "$MIRRORPATH"/iso/ iferror "$?" "rsync Mageia $OLD isos" $LINENO #common chown $DEFUSER:$DEFGROUP -R "$MIRRORPATH"/distrib chmod a+rX -R "$MIRRORPATH"/distrib sendmail -f $FROMMAIL $DESTMAIL <$MSG fi