[Dev] Running Parabola mirror alongside Arch mirror

Luke Shumaker lukeshu at lukeshu.com
Tue May 15 14:49:01 GMT 2018


On Mon, 14 May 2018 23:23:02 -0400,
Ranieri Althoff wrote:
> Hello, I maintain an Arch Linux mirror and I would also like to set up a Parabola mirror alongside. I see that the community, extra
> and core repos are mostly the same packages for the same named repos from Arch Linux, save for a few outdated packages on
> some of them. Also, the Parabola mirror is taking much space, and while I have space to spare, I would like to avoid as much as
> possible.
> 
> Is there any already documented way to run both mirrors sharing packages? As the pool of packages is currently set up I can't
> just link between Arch Linux community/core/extra to Parabola's mirror as it is just a bunch of symlinks.

The following directories are good candidates to be shared between
Arch and Parabola mirrors:

 - /pool/packages
 - /pool/community
 - /sources/packages
 - /sources/community

The Parabola version of those direcories is in theory a strict subset
of the Arch version, though with different ftpdir-cleanup/db-cleanup
schedules, I suppose that could drift (especially as lag with Arch
Linux32 causes us to hang on to old arch=(any) packages for longer
than Arch does).

What I would suggest doing is hardlinking the files from the Arch copy
to the Parabola copy between the rsync for each:

        # normal archlinux rsync goes here
	archmirror=/path/to/archlinux
	paramirror=/path/to/parabola
	for d in {pool,sources}/{packages/community}; do
		ln -f -t "$paramirror/$d" -- "$archmirror/$d"/*
	done
        # normal parabola rsync goes here

> Also worth giving a shot is that the same server has an Arch Linux ARM mirror set and I see they can too share packages.

That one's a little tricker, because Arch Linux ARM doesn't use pools.
Parabola's /pool/alarm pulls from several different directories from
Arch Linux ARM.  But again, *every* file there should able to be
shared with the Arch Linux ARM mirror.

-- 
Happy hacking,
~ Luke Shumaker



More information about the Dev mailing list