Een spiegelserver voor Debian-CD-images
Om een spiegelserver voor Debian-CD-images te hebben, moet u een Linux- of Unix-machine hebben met een permanente, betrouwbare verbinding met het Internet. Debian-CD-spiegelservers hebben .iso-images voor CD's en DVD's van verschillende groottes, bestanden voor jigdo (.jigdo en .template), BitTorrent-bestanden (.torrent) en MD5-checksums van de images (MD5SUMS*.
- Hoofdsite
- Spiegelservers die HTTP/FTP gebruiken worden afgeraden
- Spiegelservers die rsync gebruiken zijn aanvaardbaar
- Spiegelservers die gebruik maken van jigdo-lite worden afgeraden
- Spiegelservers die gebruik maken van jigdo-mirror worden aanbevolen
- Hoe een duwende spiegelserver worden?
- Bestanden uitsluiten van spiegeling
- Naamconventies en plaatsvereisten voor .iso-images
- De spiegelserver registreren
Hoofdsite
De URL's van de hoofdsite worden hieronder weergegeven - echter, overweeg alstublief om te spiegelen van een naburige spiegelserver (spiegelserverlijsten: HTTP/FTP, rsync) indien mogelijk. Toegang tot de hoofdsite kan worden beperkt rond releasetijd.
- Stabiele images (bijgewerkt voor elke stabiele release):
http://cdimage.debian.org/debian-cd/
ftp://cdimage.debian.org/debian-cd/
rsync://cdimage.debian.org/debian-cd/ - Wekelijkse images:
http://cdimage.debian.org/cdimage/weekly-builds/
ftp://cdimage.debian.org/cdimage/weekly-builds/
rsync://cdimage.debian.org/cdimage/weekly-builds/ - Dagelijkse images:
http://cdimage.debian.org/cdimage/daily-builds/
ftp://cdimage.debian.org/cdimage/daily-builds/
rsync://cdimage.debian.org/cdimage/daily-builds/
Spiegelservers die HTTP/FTP gebruiken worden afgeraden
U zou geen FTP of HTTP mogen gebruiken om uw spiegelserver bij te werken. Deze transfermethoden hebben een hoge waarschijnlijkheid op faling door de enorme grote van de bestanden.
Bovendien hebben HTTP en FTP geen integriteitscontroles op de afgehaalde data, het is waarschijnlijker dat afgebroken afhalingen of datacorruptie ongemerkt voorbij gaat.
Spiegelservers die rsync gebruiken zijn aanvaardbaar
Het rsync-programma is een goede oplossing voor een spiegelserver. Het is minder efficiënt dan de andere, Debian-specifieke spiegelserveroplossing hieronder, maar het is misschien gemakkelijker op te zetten. Bovendien zorgt het ervoor dat alle bestanden correct worden overgehaald en dat de metadata (v.b. tijdstempels) gesynchroniseerd blijven zoals de bestandsdata.
Zie de sectie Bestanden uitsluiten voor spiegeling voor voorbeelden van --include- en --exclude-schakelaars. De lijst van rsync-spiegelservers is beschikbaar op een aparte pagina.
Gebruik ten minste de opties --times --links --hard-links --block-size=8192. Dit zal de datum van wijziging, symbolische en harde koppelingen ongemoeid laten en een blokgrootte van 8192 bytes gebruiken (efficiëntst voor CD-images). Wanneer de datum van wijziging en de grootte hetzelfde zijn, zal rsync de bestanden ongemoeid laten, dus --times is echt nodig.
Spiegelservers die gebruik maken van jigdo-lite worden afgeraden
Recente versies van het jigdo-lite-programma ondersteunen afhaling in batch van meerdere images. We raden echter niet aan om jigdo-lite te gebruiken om Debian-CD-spiegelservers aan te maken - gebruik liever jigdo-mirror.
Spiegelservers die gebruik maken van jigdo-mirror worden aanbevolen
Eigenlijk betekent dit: spiegel de .iso-bestanden gebruikmakend van jigdo-mirror, dan kunt u (als u ook andere types van bestanden wilt spiegelen, v.b. .jigdo- en .template-bestanden) rsync uitvoeren voor de map om de rest af te halen. De scripts op deze pagina kunnen u helpen om dit op te zetten.
Veel mensen beheren "gewone" Debian-spiegelservers (debian/), of hebben zo'n spiegelserver in de buurt. Dit betekent dat ze de .deb's die zich in de CD-images bevinden, al hebben. De voor de hand liggende vraag is -- waarom kunnen we deze bestanden niet gebruiken voor de CD-images?
jigdo-mirror is een programma dat toelaat om een Debian-CD-image te genereren gebruikmakend van de bestanden van een "normale" spiegelserver, plus een aantal extra jigdo-templatebestanden.
Eerst hebt u de jigdo-templatebestanden nodig. Zie de jigdo-informatiepagina voor links. Download de bestanden voor elke architectuur waar u images wil voor bouwen.
Maak het ~/.jigdo-mirror-bestand aan om het programma in te stellen. Dit is een voorbeeld:
jigdoDir="/waar/vind/ik/mirrors/debian-cd/current/jigdo" imageDir="/waar/vind/ik/mirrors/debian-cd/current/images" tmpDir="/waar/vind/ik/mirrors/debian-cd/current/images" debianMirror="file:/waar/vind/ik/mirrors/debian" include='i386/|sparc/|powerpc/|source/'; exclude='-1\.'
De include- en exclude-variabelen bevatten de lijst van architecturen waar u images wilt voor maken (reguliere expressies, eigenlijk). Voor meer informatie, zie de jigdo-mirror-manpagina of de broncode (het is een shell-script met veel commentaar).
Nadat u het heeft ingesteld, voert u jigdo-mirror uit en het zal alles automatisch doen. Het zal veel uitvoer genereren en waarschijnlijk een tijdje in beslag nemen, dus we suggereren dat u dit voorziet (voer het uit in screen, redirect de uitvoer naar een bestand enz.).
Hoe een duwende spiegelserver worden?
Wanneer er nieuwe images beschikbaar zijn, kan de hoofdsite een boodschap sturen naar haar spiegelservers en ze onmiddellijk laten starten met het bijwerken. Op die manier wordt de nieuwe dat eerder "geduwd" naar in plaats van "getrokken" door de spiegelservers bij hun volgende dagelijkse bijwerking, wat leidt tot snellere doorstroming van nieuwe releases van images.
Als u uw spiegelserver wilt laten deelnemen aan dit bijwerkingssysteem, bekijk dan deze pagina.
Bestanden uitsluiten van spiegeling
Om de vereiste ruimte voor uw Debian-CD-spiegelserver te verminderen, kunt u bepaalde bestanden uitsluiten van spiegeling. De volgende instructies bevatten commandoregelschakelaars voor rsync, maar kunnen u ook helpen als u andere hulpmiddelen gebruikt voor de spiegeling. Met rsync, worden --include- en --exclude-schakelaars beschouwd in volgorde van voorkomen. De eerste schakelaar waarvan het bestandspatroon overeenkomt, bepaalt of het bestand wordt uigesloten of opgenomen.
- Broncode uitsluiten:
--exclude=source/
Dit zal vermijden dat images die broncode bevatten worden gespiegeld. Merk op dat sommige mensen het ongehoord vinden om programma's onder GPL-licensie aan te bieden op een server zonder ook de broncode aan te bieden op dezelfde server. - Volledige images uitsluiten:
--include='*businesscard*.iso' --include='*netinst*.iso'
--exclude='*.iso'
Sluit alle volledig CD/DVD-images uit voor alle architecturen, maar spiegelt de businesscard- en net-install-.iso-images. We raden aan om deze kleine images altijd te spiegelen: relatief ten opzichte van hun grootte zijn ze uitermate nuttig! - Volledige images voor niet-i386-architecturen uitsluiten:
--include='*businesscard*.iso' --include '*netinst*.iso'
--include='i386/*.iso' --exclude='*.iso'
Zoals hierboven, maar voeg wel de CD/DVD-images toe voor de i386-architectuur. - Sluit volledige images uit, behalve de i386 CD's 1 tot 3:
--include='*netinst*.iso' --include='i386/*-[1-3].iso'
--exclude='*.iso'
De volledige set van i386-images neemt voor u misschien nog te veel plaats in als het DVD- en tweelagige DVD-images bevat. Dit sluit alle .iso-images uit behalve de net-install-images en de eerste drie i386-CD's. - Sluit alle architecturen uit behalve i386:
--exclude=alpha/ --exclude=arm/ --exclude=hppa/ --exclude=hurd/
--exclude=ia64/ --exclude=m68k/ --exclude=mips/ --exclude=mipsel/
--exclude=powerpc/ --exclude=s390/ --exclude=sh/
--exclude=sparc/
Voeg enkel de volledige set van bestanden voor i386 toe, sluit de .jigdo, .iso enz. -bestanden uit voor de andere architecturen.
Naamconventies en plaatsvereisten voor .iso-images
De verschillende varianten van .iso-images worden onderscheiden door hun namen, wat u toelaat bepaalde types images voor spiegeling uit te sluiten:
- *-businesscard.iso: één image voor elk van de ondersteunde architecturen, 50 MB
- *-netinst.iso: één image voor elke architectuur, 110 MB
- *-dvd.iso (enkellagige DVD's): meerdere images voor i386, elk tot 4482 MB groot. Voor sarge is de samengetelde grootte voor de i386-images ongeveer 9000 MB.
- *-dldvd.iso (tweelagige DVD's): zoals hierboven, behalve dat individuele images tot 8106 MB groot zijn. Voor sarge zijn er geen .iso-images beschikbaar, enkel jigdo-bestanden.
- *.iso: alle overige .iso-bestanden die niet aan één van bovenstaande patronen voldoet zijn CD-images. Er zijn meerdere images voor elke architectuur, elk tot 650 MB groot. De samengestelde grootte voor alle images en architecturen is gelijk aan de grootte van een volledige Debian-spiegelserver (100 GB bij dit schrijven).
De spiegelserver registreren
Om uw CD-imagespiegelserver nuttig te maken voor een breder publiek, kunt u het registreren in onze spiegelserverlijst zoals deze of deze. Echter, omdat volledige images grote bestanden zijn, kan dit vele gigabytes netwerktraffief veroorzaken per dag.
U kunt uw spiegelserver registreren door ofwel het spiegelserveraanvraagformulier in te vullen (merk op dat de CDImage-* velden de belangrijke zijn), ofwel door een e-mail te sturen naar debian-cd@lists.debian.org.
We appreciëren alle nieuwe CD-imagespiegelservers. Dank bij voorbaat!
