diff --git a/mirror_mageia b/mirror_mageia new file mode 100644 index 0000000..2306082 --- /dev/null +++ b/mirror_mageia @@ -0,0 +1,152 @@ +#!/bin/sh + +PRESENT=7 +OLD=6 +DEFUSER="root" +DEFGROUP="lalis" +DESTMAIL="contact@lalis.fr" +FROMMAIL="root@lalis.fr" +TASKRPM="task-lalis" +MIRRORPATH="/mirror/mageia" +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" + echo "" >$MSG + +function title() +{ + echo -e "\e[1;32m$1\e[0m" + echo -e "\e[1;32m$1\e[0m" >>$MSG +} + +function info() +{ + echo -e "\e[36m$1\e[0m" + echo -e "\e[36m$1\e[0m" >>$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[36m$3 - $2\e[0m: échoué" + echo -e "\e[36m$3 - $2\e[0m: échoué" >>$MSG + fi +} + + +title "Synchronisation miroirs Mageia" +pidof -o %PPID -x -s mirror_mageia +if [ $? -eq 0 ];then + info "mirror_mageia déjà lancé" +else +#Mageia current version + + 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 $MIRRORPATH/media_info/"$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 $MIRRORPATH/media_info/"$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" + fiF + + rsync -avP --exclude "*GNOME*" $SERVEUR/iso/$PRESENT* "$MIRRORPATH"/iso/ + iferror "$?" "rsync Mageia $PRESENT isos" $LINENO + + + #cauldron + title "syncing 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 "$MIRRORPATH"/config/media_info/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 "$MIRRORPATH"/config/media_info/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"/task ./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 "syncing 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 "$MIRRORPATH"/media_info/"$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 "$MIRRORPATH"/media_info/"$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 +fi +sendmail -f $FROMMAIL $DESTMAIL <$MSG +