Eberhard Moenkeberg schrieb:
Hi,
On Thu, 8 Sep 2005, Carl-Daniel Hailfinger wrote:
since most mirrors (except gwdg) seemed to have a hard time syncing the betas, I have created a wiki page
http://www.opensuse.org/How_to_mirror
in the hope that this will help mirror admins to speed up syncing the openSUSE trees to a point where a full propagation takes less than 6 hours.
Eberhard, did I forget anything important?
In order to get as fast as possible to the point where a local inst-source/ is usable, one could exclude the inst-source/suse/src/ directory too.
Done. Also excluded all debuginfo rpms and the suse/nosrc/ directory.
Maybe you can create a "real" example scenario and add all the commands for it?
BTW: http://ftp.gwdg.de/pub/linux/people/emoenke/rsync.suse_update
is a sample rsync script which allows easy addition of exclusions. It has some more features like logging, mailing results and - most important - preserving the deleted files. Further it shows how to migrate a ftp mirroring to rsync mirroring without refetching all files due to wrong timestamps, by use of "--dry-run", "--size-only" and "--existing".
I took a look at it and lifted a few ideas. However, --size-only is not needed when converting from ftp to rsync. rsync will use its sliding checksum algorithm (NOT the dreaded MD4 checksum) to compare the files and not redownload them. The script I wrote syncs in five stages with a flash cutover directly after each stage. That means users will only see the already complete stages and never have to fear to get incomplete files or an incomplete installation source. Stage 1: Delta-ISO Stage 2: all ISOs Stage 3: inst-source without *src.rpm and *debuginfo*.rpm Stage 4: inst-source-java without *src.rpm and *debuginfo*.rpm Stage 5 (optional): complete sync The flash cutover is imho the best feature of my script. And the fact that Delta-ISOs are synced first makes mirrors usable after transferring less than 5% of the overall content. After the script has passed my local tests I will make it available via http://www.opensuse.org/How_to_mirror Regards, Carl-Daniel