[arch-general] 'Local mirror' page was removed from wiki

reflexing reflexing at reflexing.ru
Tue Sep 14 09:20:58 EDT 2010


On Tue, Sep 14, 2010 at 7:13 PM, Fess <killall_humans at lavabit.com> wrote:

> On 04:00 Sun 12 Sep , David C. Rankin wrote:
> > On 09/09/2010 07:40 AM, Fess wrote:
> >> Page "Local mirros" was removed from wiki by this reason:
> >>
> >> -----
> >> It is generally frowned upon to create a local mirror due the bandwidth
> that is required.
> >> There is not a good reason to create a local mirror, since one of the
> alternatives below will likely meet your needs.
> >> -----
> >>
> >> I think it's very useful ability, and why this page was removed... i
> don't know. It's silly.
> >> If anyone else think it must be return - maybe we should do it?
> >>
> >> P.S.
> >>
> >> A lot of guys agreed with me this morning, so i think many people want
> this article back.
> >
> > I looked into an Arch local 'mirror/repo' when I started using Arch,
> > similar to what I used to maintain for my SuSE installs. (the local
> > mirror page was a mess and wrong then as well) However, since Arch will
> > check for the presence of packages in /var/cache/pacman/pkg
> > before/(instead of) re-downloading the packages, for local network boxes,
> > it was just easier to use rsync to grab the packages from whatever box
> > did the most recent update and transfer then to the nextbox you need to
> > update (same architecture only).
> >
> > The only caveat is you need a way to manage duplicate (old packages) in
> > /var/cache/pacman/pkg so I came up with a script that does that.
> >
> > So instead of worrying about a 'local mirror', just:
> >
> > (1) rsync -uav updatedbox:/var/cache/pacman/pkg nextbox:/var/cache/pacman
> >
> > (2) grab the following 2 scripts:
> >
> > (the wrapper script that calls the main script [twice - see why below])
> > http://www.3111skyline.com/dl/Archlinux/scripts/fduparch.sh
> >
> > (the main duplicate identification and removal script)
> > http://www.3111skyline.com/dl/Archlinux/scripts/fduppkg
> >
> > Put them both in /usr/local/bin (or link them there), edit fduparch.sh
> > and change the directories you want the duplicates from
> > /var/cache/pacman/pkg moved to (default is /home/backup/pkg-old and for
> > the second pass to /home/backup/pkg-older). Then after updating one box,
> > just call fduparch.sh (the wrapper script) as root and the duplicates in
> > /var/cache/pacman/pkg are moved as follows:
> >
> > Pass 1:
> > /var/cache/pacman/pkg => /home/backup/pkg-old
> >
> > Pass 2:
> > /home/backup/pkg-old => /home/backup/pkg-older
> >
> > Which leaves you with the current set of packages in:
> > /var/cache/pacman/pkg
> >
> > The last used packages before update in:
> > /home/backup/pkg-old
> >
> > And finally all older packages in:
> > /home/backup/pkg-older
> >
> > which can be deleted or archived. (of course you can delete the packages
> > in /home/backup/pkg-old if you like as well)
> >
> > NOTE: the duplicate removal script uses the file ctime and/or mtime to
> > determine which is the newer package, so when copying machine to machine
> > with rsync, make sure you preserve the file attributes. (rsync's -a
> > option works fine).
> >
> > Once you set this up, maintaining a local set of packages is a breeze,
> just:
> >
> > (1) pacman -Syu as normal on one box (works the same for new installs
> too)
> > (2) fduparch.sh (as root to remove the older versions of new packages)
> > (3) rsync -uav updatedbox:/var/cache/pacman/pkg nextbox:/var/cache/pacman
> > (only for boxes of the same architecture of course)
> > (4) pacman -Syu on the box you rsync'ed the packages to (nextbox)
> > (5) call fduparch.sh on the box you just updated (nextbox), and so on,
> and so on...
> >
> > As long as your boxes have reasonably similar packages installed, this
> > eliminates 90+% of re-downloading, takes no additional bandwidth because
> > you have to download the updated packages once anyway, and is simple
> > enough for me to manage so you guy will have no problems with it :p
> >
> > And if you wanted to get even more creative, you could simply write a
> > script on your main box that you update to automate the entire process
> > for all your local boxes using nothing more than rsync and ssh calls of
> > run the updates and dup removal scripts. (I haven't been that creative
> > yet) Just remember to separate your boxes into groups/classes by
> > architecture (i686 & x86_64)
> >
> > Cheers.
> >
> > --
> > David C. Rankin, J.D.,P.E.
> > Rankin Law Firm, PLLC
> > 510 Ochiltree Street
> > Nacogdoches, Texas 75961
> > Telephone: (936) 715-9333
> > Facsimile: (936) 715-9339
> > www.rankinlawfirm.com
>
>
>
> err.. what?
> Don't you think, that mirrorsync in crontab is MUCH more easier way to get
> new packages, huh?
> I'm using local mirror for 3 years and i have no idea why i shoulnd't use
> it know.
>
> P.S.
>
> If you have local mirror, you won't worry about 3-4 another GB's. You just
> download some less porn. Less porn -> more profit.
> --
>
>
made my day

-- 
Kirill E. Churin
Jabber: reflexing at reflexing.ru, ICQ: 8163230, Skype on demand.

In a world *without walls* or fences, *who needs windows and gates?*


More information about the arch-general mailing list