From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <407AA56D.4060709@l14.ru> Date: Mon, 12 Apr 2004 18:19:25 +0400 From: =?KOI8-R?Q?=E1=CC=C5=CB=D3=C5=CA_=EC=C0=C2=C9=CD=CF=D7?= User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.6) Gecko/20040310 X-Accept-Language: ru-ru, ru MIME-Version: 1.0 To: ALT Linux Sisyphus discussion list Subject: Re: [sisyphus] AptRpm References: <407A26B9.7060108@ltsp.ru> <20040412092147.GK26922@osdn.org.ua> <407A9070.8080209@l14.ru> <20040412134300.GB26922@osdn.org.ua> In-Reply-To: <20040412134300.GB26922@osdn.org.ua> X-Enigmail-Version: 0.83.3.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit X-BeenThere: sisyphus@altlinux.ru X-Mailman-Version: 2.1.4 Precedence: list Reply-To: ALT Linux Sisyphus discussion list List-Id: ALT Linux Sisyphus discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Apr 2004 14:19:27 -0000 Archived-At: List-Archive: Завсегда. Я просто в апреле недееспособен из за аллергии, так что помощи особой оказать не могу. Скрипты можно добавлять к себе в дом. папку. Там есть объект - файл. Michael Shigorin пишет: >On Mon, Apr 12, 2004 at 04:49:52PM +0400, Алексей Любимов wrote: > > >>а также глянуть начавшийся порт этой темы >>http://www.linux-os.ru/wiki/AptRpm >> >> > >О, а мож туда еще пару скриптиков добавить -- для синхронизации >компонент с повтором до победы или max_attempts и для создания >снапшотов сизифа? > > > >------------------------------------------------------------------------ > >#!/bin/sh >RSYNC_RSH=rsh >MAXATTEMPTS=5 >TMOUT1=500 >TMOUT2=15 >SRCROOT=rsync://rsync.altlinux.ru/ALTLinux # 2003-04-15 >#SRCROOT=rsync://ibiblio.org/Linux/distributions/altlinux # 2002-12-07 >#SRCROOT=rsync://ftp.leo.org/ALTLinux # 2002-12-09 >DESTROOT=~ftp/pub/Linux/ALT >#LIST="updates Sisyphus Mozilla OpenOffice" >LIST="updates Sisyphus Mozilla " >#LIST="updates" >RSYNC=/usr/bin/rsync >RSYNCARGS="-rltgoDuz --partial --timeout=$TMOUT1 --delete --delete-after" >RSHOME=~/rsync >MAINTAINER=mike@osdn.org.ua > >for mirror in $LIST; do > OK= > attempt=1 > LOG=$RSHOME/rsync-$mirror.log > LOCK=$RSHOME/lock.$mirror > FLAG=$DESTROOT/$mirror/__SYNCING__ > date >> $LOG > [ -f $LOCK ] && { > ps auxww | grep rsync | mail -s "OSDN: $mirror: lockfile exists" $MAINTAINER > echo "Lockfile for $mirror exists, quitting" >> $LOG > continue > } > trap "rm -f $LOCK; exit 1" INT > touch $LOCK $FLAG > while [ -z "$OK" -a $attempt -lt $MAXATTEMPTS ]; do > $RSYNC $RSYNCARGS $* $SRCROOT/$mirror/ $DESTROOT/$mirror \ > >> $LOG 2>&1 && OK=1 > sleep $TMOUT2 > attempt=$(($attempt+1)) > done > [ -z "$OK" ] && { > tail $LOG | mail -s "OSDN: $mirror trouble" $MAINTAINER > } || { > rm -f $FLAG > } > rm -f $LOCK > date >> $LOG >done > >nice symlinks -dr $DESTROOT >/dev/null > > >------------------------------------------------------------------------ > >#!/bin/sh ># script by Michael Shigorin for snapshotting ># ALT Linux Sisyphus locally; feel free to use and modify, would ># be glad to hear back about changes > ># mirror/site-specific >SRC="ftp.altlinux.org.ua::ALTLinux/Sisyphus/" >BASEDIR="/var/ftp/pub/EMT/Sisyphus/" > ># retry params >MAXCOUNT=5 >TIMEOUT=60 > ># shouldn't need to be changed >DATE=`date +%Y%m%d` >LOGDIR="$BASEDIR/log/" >LOGFILE="$LOGDIR/$DATE.log" >DEST="$BASEDIR/.syncing/" > >RSYNCARGS="-av --partial --delete" > >RPMARGS="-qp --queryformat %{RELEASE}\n" >TAGFILE="$DEST/files/i586/RPMS/altlinux-release-Sisyphus-alt*.noarch.rpm" > >unset OK > ># init env >mkdir -p "$BASEDIR" "$LOGDIR" >cd "$BASEDIR" > ># create hardlinked copy or init dir; order critical >LAST=`ls -d1 20?????? 2>/dev/null | tail -1` >rm -rf "$DEST" >[ -n "$LAST" ] && cp -al "$LAST" "$DEST" || mkdir -p "$DEST" > ># try to sync up >for attempt in `seq 1 $MAXCOUNT`; do > rsync $RSYNCARGS "$SRC" "$DEST" 2>&1 >> "$LOGFILE" && { > OK="yes" > break > } > sleep "$TIMEOUT" >done > >[ -z "$OK" ] && exit 1 > ># get timestamp from specific package and move to it >TIMESTAMP=`rpm $RPMARGS $TAGFILE | tail -1 | sed 's/alt//'` > >[ ! -d "$TIMESTAMP" ] && { > mv "$DEST" "$TIMESTAMP" > touch -d "$DATE" "$TIMESTAMP" > # fix symlink > rm -f current > ln -s "$TIMESTAMP" current >} || rm -rf "$DEST" > ># that's all :) >echo "** $TIMESTAMP sync OK" >> "$LOGFILE" > > >------------------------------------------------------------------------ > >_______________________________________________ >Sisyphus mailing list >Sisyphus@altlinux.ru >http://lists.altlinux.ru/mailman/listinfo/sisyphus > >