ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [mdk-re] Rync over dial
@ 2002-02-18 18:01 Andrew Nazarkin
  2002-02-18 23:58 ` cornet
  0 siblings, 1 reply; 4+ messages in thread
From: Andrew Nazarkin @ 2002-02-18 18:01 UTC (permalink / raw)
  To: MANDRAKE-RUSSIAN

Здравствуйте, MANDRAKE-RUSSIAN.
 Подскажите, плиз:
 Имеется выход в инет с 01 до 09. По крону запускается.
 И через минуту запускается rsync, который синхронизирует каталог RPMS
 с сервера altlinux.ru.
 Так вот, в случае какой-либо ошибки (разрыв связи и т.п.) rsync
 рушится, и, сами понимаете, не поднимается. А время жалко - за ночь
 скачивается 100-120Мб, и если rsync работает не всю ночь - то ой :(
 Что будет, если написать какой-нибудь скрипт вроде этого:

#!/bin/sh
while true
do
rsync трам-пам-па
sleep 60
done

Чтобы при падении он самоподнимался?
Кто-нибудь пробовал такое?

P.S. В 9 утра тачка перегружается, так что насильно прибивать процесс
мне не грозит :D

-- 
С уважением,
 Alting                         mailto:alting@mail.ru




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [mdk-re] Rync over dial
  2002-02-18 18:01 [mdk-re] Rync over dial Andrew Nazarkin
@ 2002-02-18 23:58 ` cornet
  2002-02-19  0:17   ` Aleksandr Blohin
  2002-02-19  0:19   ` Aleksandr Blohin
  0 siblings, 2 replies; 4+ messages in thread
From: cornet @ 2002-02-18 23:58 UTC (permalink / raw)
  To: mandrake-russian

Andrew Nazarkin wrote:
> 
> Здравствуйте, MANDRAKE-RUSSIAN.
>  Подскажите, плиз:
>  Имеется выход в инет с 01 до 09. По крону запускается.
>  И через минуту запускается rsync, который синхронизирует каталог RPMS
>  с сервера altlinux.ru.
>  Так вот, в случае какой-либо ошибки (разрыв связи и т.п.) rsync
>  рушится, и, сами понимаете, не поднимается. А время жалко - за ночь
>  скачивается 100-120Мб, и если rsync работает не всю ночь - то ой :(
>  Что будет, если написать какой-нибудь скрипт вроде этого:
> 
> #!/bin/sh
> while true
> do
> rsync трам-пам-па
> sleep 60
> done
> 
> Чтобы при падении он самоподнимался?
> Кто-нибудь пробовал такое?
> 
> P.S. В 9 утра тачка перегружается, так что насильно прибивать процесс
> мне не грозит :D

Примерно год тому назад народ обменивался подобными скриптам.
Посмотрите в архивах рассылки.

-- 
Власенко Олег.
Отдел технической поддержки ALT Linux Team.
mailto:cornet@altlinux.ru



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [mdk-re] Rync over dial
  2002-02-18 23:58 ` cornet
@ 2002-02-19  0:17   ` Aleksandr Blohin
  2002-02-19  0:19   ` Aleksandr Blohin
  1 sibling, 0 replies; 4+ messages in thread
From: Aleksandr Blohin @ 2002-02-19  0:17 UTC (permalink / raw)
  To: mandrake-russian

On Tue, 19 Feb 2002 00:04:05 +0300
cornet <cornet@altlinux.ru> wrote:

C> Andrew Nazarkin wrote:
>> 
>> Здравствуйте, MANDRAKE-RUSSIAN.
>>  Подскажите, плиз:
>>  Имеется выход в инет с 01 до 09. По крону запускается.
>>  И через минуту запускается rsync, который синхронизирует каталог
>>RPMS
>>  с сервера altlinux.ru.
>>  Так вот, в случае какой-либо ошибки (разрыв связи и т.п.) rsync
>>  рушится, и, сами понимаете, не поднимается. А время жалко - за ночь
>>  скачивается 100-120Мб, и если rsync работает не всю ночь - то ой :(
>>  Что будет, если написать какой-нибудь скрипт вроде этого:
>> 
>> #!/bin/sh
>> while true
>> do
>> rsync трам-пам-па
>> sleep 60
>> done
>> 
>> Чтобы при падении он самоподнимался?
>> Кто-нибудь пробовал такое?
>> 
>> P.S. В 9 утра тачка перегружается, так что насильно прибивать процесс
>> мне не грозит :D

C> Примерно год тому назад народ обменивался подобными скриптам.
C> Посмотрите в архивах рассылки.

Вот!

1. cronrsync - запускается под обычным пользователем из cron
2. uprsync - какие каталоги скачивать
3. getrsync - сама оболочка для скачивания

В результате все то, что закачали, окажется в письме. Подправьте
cronrsync на 
предмет перехода в нужный каталог. Все три файла должны лежать в одном 
каталоге. 
Для установки cron:
crontab
и там написал строку:
0 4 * * * /home/pif/work/cronsync

(C) Епифанов Сергей <serpiph@pochtamt.ru>

--
Best regards
AB
--
				... In nomine Altli, et Ctrli, et Spititus Deli, Reset!




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [mdk-re] Rync over dial
  2002-02-18 23:58 ` cornet
  2002-02-19  0:17   ` Aleksandr Blohin
@ 2002-02-19  0:19   ` Aleksandr Blohin
  1 sibling, 0 replies; 4+ messages in thread
From: Aleksandr Blohin @ 2002-02-19  0:19 UTC (permalink / raw)
  To: mandrake-russian

[-- Attachment #1: Type: text/plain, Size: 106 bytes --]

Сорри!
Файло забыл :)

--
Best regards
AB
--
				... In nomine Altli, et Ctrli, et Spititus Deli, Reset!


[-- Attachment #2: getrsync --]
[-- Type: text/plain, Size: 3189 bytes --]

#!/usr/bin/perl
=head1 éÚÍÅÎÅÎÉÑ

ðÏÄ ÌÉÃÅÎÚÉÅÊ GPL v.2

13.08.2001 ÷ÅÒÓÉÑ 2.03
    éÚÍÅÎÅÎÏ:
    1. ÎÅÂÏÌØÛÉÅ ÎÅÄÏÞÅÔÙ × ÔÅËÓÔÅ
    2. äÏÂÁ×ÌÅÎ ÐÁÒÁÍÅÔÒ -q (ÕÂÉÒÁÅÔ ÍÎÏÇÏ ÎÅÎÕÖÎÏÊ ÉÎÆÏÒÍÁÃÉÉ)

27.05.2001. ÷ÅÒÓÉÑ 2.02
    éÚÍÅÎÅÎÏ:
    1. ÉÚÍÅÎÅÎ ÒÅÖÉÍ ×Ù×ÏÄÁ ÎÁ ÜËÒÁÎ

31.03.2001. ÷ÅÒÓÉÑ 2.01
    éÓÐÒÁ×ÌÅÎÏ:
    1. ÂÁÇ Ó ×ÙÈÏÄÏÍ ÉÚ ÐÒÏÇÒÁÍÍÙ getrsync
    2. ÂÁÇ ÚÁÐÕÓËÁ rsync É ÐÒÏ×ÅÒËÉ ÐÒÅÒÙ×ÁÎÉÑ ÐÒÏÇÒÁÍÍÙ rsync.

29.03.2001. ÷ÅÒÓÉÑ 2.00b
    éÚÍÅÎÅÎÙ ÏÆÏÒÍÌÅÎÉÅ É ÒÅÖÉÍ ÚÁÐÕÓËÁ rsync.

 4.03.2001. ÷ÅÒÓÉÑ 1.00
    
=cut 


#ïÂÝÅÅ ÞÉÓÌÏ ÐÏÐÙÔÏË (0 - ÎÅÏÇÒÁÎÉÞÅÎÏ)
$MAX_TRIES=20;
#þÉÓÌÏ ÐÏ×ÔÏÒÏ× ÓËÁÞÉ×ÁÎÉÑ ÏÄÎÏÇÏ É ÔÏÇÏ ÖÅ ÆÁÊÌÁ
$MAX_1_TRIES=5;
#ôÅËÕÝÁÑ ÐÏÐÙÔËÁ
$cur_try=0;
$cur_1_try=1;
#óÁÊÔ ÄÌÑ ÓËÁÞÉ×ÁÎÉÑ - ÐÒÉÍÅÒ
$DownSite="www.altlinux.ru/MandrakeRE/Spring2001";
#ëÁÔÁÌÏÇ ÄÌÑ ÓËÁÞÉ×ÁÎÉÑ - ÐÒÉÍÅÒ
$DownDir="/var/ftp/pub/Sisyphus";

#óÐÅÃÉÁÌØÎÙÅ ÆÌÁÇÉ - îå ôòïçáôø
$RETVAL=1;
$WHOHANG=1;
$|=1;
$QUIET=0;

if (defined (@ARGV))
{
    if ($ARGV[0] eq '-q')
    {
	shift @ARGV;
	$QUIET=1;
    }
    $DownSite=$ARGV[0];
    if (defined ($ARGV[1]))
    {
	$DownDir=$ARGV[1];	
	print $DownDir,"\n";
        if (defined $ARGV[2])
	{
	    $MAX_TRIES=$ARGV[2];
	    if (defined $ARGV[3])
	    {
		$MAX_1_TRIES=$ARGV[3];
	    }
	}
    }
    else
    {
        print "îÅÄÏÓÔÁÔÏÞÎÏ ÐÁÒÁÍÅÔÒÏ× - ÎÅÔ ËÁÔÁÌÏÇÁ!\n";
        exit;
    }
}
else
{
    print "ðÒÏÇÒÁÍÍÁ ÓËÁÞÉ×ÁÎÉÑ ÞÅÒÅÚ rsync Ó ÎÅÓËÏÌØËÉÍÉ ÐÏÐÙÔËÁÍÉ É ÐÏ×ÔÏÒÁÍÉ.\n";
    print "îÁÐÉÓÁÎÁ åÐÉÆÁÎÏ×ÙÍ óÅÒÇÅÅÍ, íéæé. ÷ÅÒÓÉÑ 2.02 ÏÔ 13.08.2001\n\n";
    print "úÁÐÕÓË:\n";
    print "     getrsync   - ÐÏÍÏÝØ\n";
    print "     getrsync [-q] ÓÁÊÔ ËÁÔÁÌÏÇ_ÓÏÈÒÁÎÅÎÉÑ [ÞÉÓÌÏ_ÐÏÐÙÔÏË [ÞÉÓÌÏ_ÐÏ×ÔÏÒÏ×]]\n";
    print "               -q - ÕÍÅÎØÛÉÔØ ×Ù×ÏÄ ÔÅËÓÔÁ\n\n";
    print " ðÒÉÍÅÒ:\n";
    print "     getrsync www.altlinux.ru/MandrakeRE/Spring2001 /var/ftp/pub/Sisyphus\n\n";
    exit;
}
unless ($QUIET)
{
    print "ðÒÏÇÒÁÍÍÁ ÓËÁÞÉ×ÁÎÉÑ ÞÅÒÅÚ rsync Ó ÎÅÓËÏÌØËÉÍÉ ÐÏÐÙÔËÁÍÉ É ÐÏ×ÔÏÒÁÍÉ.\n";
    print "îÁÐÉÓÁÎÁ åÐÉÆÁÎÏ×ÙÍ óÅÒÇÅÅÍ, íéæé. ÷ÅÒÓÉÑ 2.01 ÏÔ 31.03.2001\n\n";
}
#ïÓÎÏ×ÎÏÊ ÃÉËÌ ÓËÁÞÉ×ÁÎÉÑ

$DownSite="rsync://" . $DownSite;

while ($RETVAL)
{
#ðÒÏ×ÅÒËÁ ÞÉÓÌÁ ÐÏÐÙÔÏË
	$cur_try++;
	if ($cur_try>$MAX_TRIES && $MAX_TRIES>0)
	{
	    print "îÅ È×ÁÔÁÅÔ ÐÏÐÙÔÏË ($MAX_TRIES) ÄÌÑ ÐÏÌÎÏÇÏ ÓËÁÞÉ×ÁÎÉÑ, ×ÙÈÏÖÕ.\n";
	    exit;
	}
	print "ðÏÐÙÔËÁ ÎÏÍÅÒ $cur_try\n" if $cur_1_try==1;
	print "ðÏ×ÔÏÒ $cur_1_try ÐÏÐÙÔËÉ $cur_try\n" if $cur_1_try>1;
#úÁÐÕÓË ÓËÁÞÉ×ÁÎÉÑ
	$OldMSG=$NewMSG;
	$NewMSG="xxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
	if ($QUIET)
	{
	    $pid=open (OUTINFO,"rsync -av --partial --timeout=500 --delete-after '${DownSite}' '${DownDir}' |");
	}
	else
	{
	    $pid=open (OUTINFO,"rsync -avP --timeout=500 --delete-after '${DownSite}' '${DownDir}' |");
	}
	if ($pid<1)
	{
	    $NewMGS=$OldMSG;
	    goto skip;
	}
	while ($line=<OUTINFO>)
	{
	    $NewMSG=$line;
	    print $line;
	}
	$res=waitpid ($pid,0);
	$ExitStatus=$?;
	close (OUTINFO);
	if (!$ExitStatus)
	{
	    print "÷ÓÅ ÓËÁÞÁÎÏ!\n";
	    exit;
	}
skip:
	if ($NewMSG eq $OldMSG)
	{
	    $cur_try-- if $cur_1_try==1;
	    $cur_1_try++;
	    if ($cur_1_try>$MAX_1_TRIES)
	    {
		print "éÓÞÅÒÐÁÎ ÌÉÍÉÔ ÐÏ×ÔÏÒÏ× ($MAX_1_TRIES)\n";
		exit;
	    }
	}
	else
	{
	    $cur_1_try=1;
	}
}

[-- Attachment #3: uprsync --]
[-- Type: text/plain, Size: 571 bytes --]

#!/bin/sh
./getrsync -q www.altlinux.ru/ALTLinux/Sisyphus/ /var/ftp/pub/Sisyphus
./getrsync -q www.altlinux.ru/MandrakeRE/Spring2001/ /var/ftp/pub/Spring2001
./getrsync -q www.altlinux.ru/ALTLinux/updates/ /var/ftp/pub/updates
#./getrsync www.altlinux.ru/MandrakeRE/updates/ /var/ftp/pub/updates
./getrsync -q www.altlinux.ru/ALTLinux/Daedalus/ /var/ftp/pub/Daedalus
./getrsync -q www.altlinux.ru/ALTLinux/Castle/ /var/ftp/pub/Castle
./getrsync -q www.altlinux.ru/ALTLinux/ISO/ /var/ftp/pub/ISO
./getrsync -q www.altlinux.ru/ALTLinux/Junior-1.1/ /var/ftp/pub/Junior-1.1


[-- Attachment #4: cronsync --]
[-- Type: text/plain, Size: 41 bytes --]

#!/bin/bash
cd  /home/pif/work
./uprsync

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2002-02-19  0:19 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-02-18 18:01 [mdk-re] Rync over dial Andrew Nazarkin
2002-02-18 23:58 ` cornet
2002-02-19  0:17   ` Aleksandr Blohin
2002-02-19  0:19   ` Aleksandr Blohin

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git