rpmsync je bezvadná věc, používám ho na stahování aktualizací pro Mandrivu 2007 a pro udržování zrcadla Mandriva Cookeru (vývojové větve Mandrivy).
Funguje to tak, že si nejdřív stáhne seznam souborů na serveru a podle nich pak přejmenuje místní soubory. A potom nad tím spustí klasický rsync.
Tj. například rpmsync-1.6-1mdv2007.0.noarch.rpm (který mám na disku), přejmenuje na rpmsync-1.7-1mdv2007.0.noarch.rpm (který je na serveru) a pak už stahuje jen části, v nichž se tyto soubory liší.
Dvakrát denně cronem spouštím
--delete-limit je moje vlastní úprava, inspirovaná smazáním celého zrcadla při změně adresářové struktury. Zas až tak rychlé připojení nemám, tak mě to docela mrzelo.
--exclude-from obsahuje seznam souborů, které aktualizovat nechci, protože vím 100%, že je nepotřebuji a zbytečně zdržují. Obsahuje věci jako
Na závěr vyplivne rpmsync (resp. rsync, že) zprávu:
to znamená, že místo 290 MB jsem stahoval pouze 183 MB a navíc získal asi 20 minut, a to se vyplatí.
Kdyby se to podařilo nějak přiohnout, aby se stahovaly jen soubory, které jsou potřeba, dala by se tak i nahradit absence deltarpm, které se v Mandrivě chvíli ohřálo a nejspíš tam ještě nějakou dobu nebude.
Funguje to tak, že si nejdřív stáhne seznam souborů na serveru a podle nich pak přejmenuje místní soubory. A potom nad tím spustí klasický rsync.
Tj. například rpmsync-1.6-1mdv2007.0.noarch.rpm (který mám na disku), přejmenuje na rpmsync-1.7-1mdv2007.0.noarch.rpm (který je na serveru) a pak už stahuje jen části, v nichž se tyto soubory liší.
Dvakrát denně cronem spouštím
rpmsync --delete-limit -vH --exclude-from=/home/hajma/exclude.lst \ rsync://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/devel/cooker/i586/ \ /dokumenty/Mandrivalinux-devel/cooker/i586/
--delete-limit je moje vlastní úprava, inspirovaná smazáním celého zrcadla při změně adresářové struktury. Zas až tak rychlé připojení nemám, tak mě to docela mrzelo.
--exclude-from obsahuje seznam souborů, které aktualizovat nechci, protože vím 100%, že je nepotřebuji a zbytečně zdržují. Obsahuje věci jako
*-l10n-fr-* *-l10n-ja-* ... *openoffice*
Na závěr vyplivne rpmsync (resp. rsync, že) zprávu:
Number of files: 15425 Number of files transferred: 153 Total file size: 15648376564 bytes Total transferred file size: 304897518 bytes Literal data: 203004952 bytes Matched data: 101915361 bytes File list size: 820591 File list generation time: 6.755 seconds File list transfer time: 0.000 seconds Total bytes sent: 241216 Total bytes received: 191504554 sent 241216 bytes received 191504554 bytes 80077.58 bytes/sec total size is 15648376564 speedup is 81.61
to znamená, že místo 290 MB jsem stahoval pouze 183 MB a navíc získal asi 20 minut, a to se vyplatí.
Kdyby se to podařilo nějak přiohnout, aby se stahovaly jen soubory, které jsou potřeba, dala by se tak i nahradit absence deltarpm, které se v Mandrivě chvíli ohřálo a nejspíš tam ještě nějakou dobu nebude.
No comments:
Post a Comment