From Mageia wiki
Jump to: navigation, search
(Full layout)
(9 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 +
Existing mirrors are available at: http://mirrors.mageia.org
 +
 
Needed:
 
Needed:
 
* expiry policy; to know what is actively supported and what is not (likely to move to an archive section)
 
* expiry policy; to know what is actively supported and what is not (likely to move to an archive section)
Line 11: Line 13:
 
First, a table summary:
 
First, a table summary:
  
{| border = "1"
+
{| style="color:black; cellpadding="5%" cellpadding="5%" cellspacing="0" border="1"
|-
+
! '''media''' || '''required for mirror?''' || colspan = "5" | '''enabled by default?'''  
| '''media''' || '''required for mirror?''' || colspan = "5" | '''enabled by default?'''  
 
 
|-
 
|-
 
|| || ||'''release''' || '''updates''' || '''updates<br/>testing''' || '''backports''' || '''backports<br/>testing'''  
 
|| || ||'''release''' || '''updates''' || '''updates<br/>testing''' || '''backports''' || '''backports<br/>testing'''  
Line 112: Line 113:
  
  
: Mageia/
+
  Mageia/
::       /distrib/
+
       /distrib/
:::            /cauldron/
+
      /cauldron/
::::                /i586/
+
      /i586/
:::::                  /doc/
+
                    /doc/
:::::                /install/
+
                    /install/
:::::                /isolinux/
+
                    /isolinux/
:::::                /media/
+
                    /media/
::::::                    /core/
+
                          /core/
:::::::                          /backports/
+
                              /backports/
:::::::                        /backports_testing/
+
                              /backports_testing/
:::::::                        /release/
+
                              /release/
:::::::                        /updates_testing/
+
                              /updates_testing/
:::::::                        /updates/
+
                              /updates/
::::::                    /nonfree/
+
                          /nonfree/
::::::                    /tainted/
+
                          /tainted/
::::::                    /debug/
+
                          /debug/
:::::::                          /core/
+
                              /core/
:::::::                        /nonfree/
+
                              /nonfree/
:::::::                        /tainted/
+
                              /tainted/
::::          /x86_64/
+
                /x86_64/
:::::                /doc/
+
                    /doc/
:::::                /install/
+
                    /install/
:::::                /isolinux/
+
                    /isolinux/
:::::                /media/
+
                    /media/
::::::                      /core/
+
                          /core/
::::::                    /nonfree/
+
                          /nonfree/
::::::                    /tainted/
+
                          /tainted/
::::::                    /debug/
+
                          /debug/
:::::::                          /core/
+
                              /core/
:::::::                        /nonfree/
+
                              /nonfree/
:::::::                        /tainted/
+
                              /tainted/
::::            /srpms/
+
                /srpms/
:::::                /core/
+
                    /core/
:::::                /nonfree/
+
                    /nonfree/
:::::                /tainted/
+
                    /tainted/
:::        /stable1/
+
          /stable1/
::::            /i586/
+
                /i586/
::::            /srpms/
+
                /srpms/
::::            /x86_64/
+
                /x86_64/
::    /iso/
+
      /iso/
:::        /cauldron/
+
          /cauldron/
::::              /i586/
+
                /i586/
::::            /x86_64/
+
                /x86_64/
:::        /stable1/
+
          /stable1/
::::              /i586/
+
                /i586/
::::            /x86_64/
+
                /x86_64/
::    /people/
+
      /people/
::    /software/
+
      /software/
  
 
== How to (become a) mirror? ==
 
== How to (become a) mirror? ==
Line 172: Line 173:
 
If you plan to create a public mirror, we encourage you to use one of our [http://mirrors.mageia.org/?tier1 Tier1 mirrors]:
 
If you plan to create a public mirror, we encourage you to use one of our [http://mirrors.mageia.org/?tier1 Tier1 mirrors]:
  
<pre>
+
rsync://mirrors.kernel.org/mirrors/mageia/ (USA, geo-distributed load balancing)
rsync://distro.ibiblio.org/mageia/ (Durham in the USA, slow sync)
+
rsync://distrib-coffee.ipsl.jussieu.fr/mageia/ (Paris in France)
rsync://distrib-coffee.ipsl.jussieu.fr/mageia/ (Paris in France)
+
rsync://ftp.LinuxCabal.org/Mageia (Lucern in Switzerland)
rsync://ftp.LinuxCabal.org/Mageia (Lucern in Switzerland)
+
rsync://mageia.c3sl.ufpr.br/mageia (Curitiba in Brazil)
rsync://mageia.c3sl.ufpr.br/mageia (Curitiba in Brazil)
 
</pre>
 
  
 
These servers synchronise the tree directly from the Mageia rsync server (private access). Otherwise, you may use any of our [http://mirrors.mageia.org/?tier2 Tier2 mirrors].
 
These servers synchronise the tree directly from the Mageia rsync server (private access). Otherwise, you may use any of our [http://mirrors.mageia.org/?tier2 Tier2 mirrors].
  
 
=== Rsync options ===
 
=== Rsync options ===
We would appreciate you use these options:
+
When syncing a mirror, the following options should be used.
 
 
  $ rsync -aHS --delete-after
 
  
-aH is a must. -S --delete-after are nice.
+
  $ rsync -aHS --delete-after --delete-delay --delay-updates
  
Please do not use compression and checksum options as these are too much a burden for the remote servers.
+
Please do not use compression and checksum options as these are too much of a burden for the remote servers.
  
 
=== Automate ===
 
=== Automate ===
Line 201: Line 198:
 
[[Category:Packaging]]
 
[[Category:Packaging]]
 
[[Category:Policies]]
 
[[Category:Policies]]
 +
[[Category:Mirrors]]

Revision as of 17:01, 18 September 2017

Existing mirrors are available at: http://mirrors.mageia.org

Needed:

  • expiry policy; to know what is actively supported and what is not (likely to move to an archive section)
  • archive section; so that a mirror may move archived stuff on cheaper storage systems
  • announcement/discussion mailing-list
  • release plan (see http://mageia.org/en/calendar/ that already hosts Mageia release schedule).
  • mirroring tools (rsync, mirrorbrain, mirrormanager?)
  • better organization of this doc

Available media

First, a table summary:

media required for mirror? enabled by default?
release updates updates
testing
backports backports
testing
core Yes Yes Yes No No No
nonfree Yes Yes for Mageia 1 (by installer for Mageia 2) Yes for Mageia 1 (by installer for Mageia 2) No No No
tainted No No No No No No
debug/* No No No No No No

"Enabled by default" means that such a media is automatically registered, activated and used by the package manager for installing/updating software.

Now here are the media details:

core

  • enabled by default
  • mirrors must mirror this media to be listed as a mirror
  • only free/libre stuff as described by FSF / OSI
  • must be selfcontained

nonfree

  • enabled by default for Mageia 1, disabled by default for Mageia 2 (installer will ask to enable it if it detects hw that need driver/fw from here...)
  • mirrors must mirror this media to be listed as a mirror
  • contains apps/drivers/firmware that are free to redistribute but we dont have redistributable source for
  • for example ati/nvidia drivers/firmware, Oracle Java, ..

tainted

  • disabled by default
  • mirrors are free to not mirror this media
  • stuff we think we can redistribute, but that may have some patent issues or other restrictions in other countries
  • NO nonfree stuff is allowed here
  • see our Software patents policy and Software inclusion policy (drafts)

debug/core

  • disabled by default
  • debug rpms for core

debug/nonfree

  • disabled by default
  • debug rpms for nonfree

debug/tainted

  • disabled by default
  • debug rpms for tainted

Media layout details

Every media contains the same layout:

release

  • disabled by default on nonfree, installer will ask to enable it if it detects hw that need driver/fw from here
  • disabled by default on tainted, debug_core, debug_nonfree, debug_tainted

updates

  • disabled by default on nonfree, installer will ask to enable it if it detects hw that need driver/fw from here
  • disabled by default on tainted, debug_core, debug_nonfree, debug_tainted

updates_testing

disabled by default

backports

disabled by default

backports_testing

disabled by default

Mirrors layout

"distrib" section

  • Hosts all source and compiled packages for all architectures, for cauldron (dev branch) and stable releases.
  • Expected size:

"iso" section

  • Hosts all released ISOs for cauldron (dev branch) and stable releases.
  • Expected size:

"people" section

  • Offers redundancy of a mirror space to Mageia members. We expect it to hold some specific flavor ISOs, or smaller files (rpms, tarball, document).
  • this is part of a experiment to empower members to express themself
  • Expected size:

"software" section

  • Hosts tarballs of Mageia own hosted software (see soft/ section for now; forge to come).
  • Expected size:

"archive" section?

Not defined yet. Would host unsupported/old releases (rpms/isos) for archiving purposes.


Full layout

And here is the full mirror layout: (stable releases have same layout as cauldron)

Remember that core, nonfree, tainted, debug/* have the same layout detail as shown above; this is omitted in the below tree for readability purpose.


Mageia/
     /distrib/
     /cauldron/
     /i586/
                    /doc/
                    /install/
                    /isolinux/
                    /media/
                         /core/
                              /backports/
                              /backports_testing/
                              /release/
                              /updates_testing/
                              /updates/
                         /nonfree/
                         /tainted/
                         /debug/
                              /core/
                              /nonfree/
                              /tainted/
               /x86_64/
                    /doc/
                    /install/
                    /isolinux/
                    /media/
                         /core/
                         /nonfree/
                         /tainted/
                         /debug/
                              /core/
                              /nonfree/
                              /tainted/
               /srpms/
                    /core/
                    /nonfree/
                    /tainted/
          /stable1/
               /i586/
               /srpms/
               /x86_64/
     /iso/
          /cauldron/
               /i586/
               /x86_64/
          /stable1/
               /i586/
               /x86_64/
     /people/
     /software/

How to (become a) mirror?

Prerequisites

  • Expected size (700GB over 4 years?)
  • Needed software (rsync)

Official sources

If you plan to create a public mirror, we encourage you to use one of our Tier1 mirrors:

rsync://mirrors.kernel.org/mirrors/mageia/ (USA, geo-distributed load balancing)
rsync://distrib-coffee.ipsl.jussieu.fr/mageia/ (Paris in France)
rsync://ftp.LinuxCabal.org/Mageia (Lucern in Switzerland)
rsync://mageia.c3sl.ufpr.br/mageia (Curitiba in Brazil)

These servers synchronise the tree directly from the Mageia rsync server (private access). Otherwise, you may use any of our Tier2 mirrors.

Rsync options

When syncing a mirror, the following options should be used.

 $ rsync -aHS --delete-after --delete-delay --delay-updates

Please do not use compression and checksum options as these are too much of a burden for the remote servers.

Automate

The tree must be synchronized at least every 2 hours.

Please ensure that another rsync process is not started before the first one has finished running: use a lock file.

Register your mirror

Please go to http://mirrors.mageia.org/new