Attivare un mirror per le immagini dei CD Debian
Per realizzare un sito mirror delle immagini dei CD Debian, occorre una macchina Linux o Unix-like con connessione ad internet permanente e affidabile. I siti mirror delle immagini dei CD contengono le immagini .iso dei CD e dei DVD di varie dimensioni, i file per jigdo (.jigdo e .template), i file per BitTorrent (.torrent) e le checksum MD5 delle immagini (MD5SUMS*).
- Sito principale
- Creare un mirror tramite FTP e HTTP non è raccomandato
- Creare un mirror tramite rsync è accettabile
- Creare un mirror tramite jigdo-lite non è raccomandato
- Creare un mirror tramite jigdo-mirror è raccomandato
- Come diventare un push mirror
- Esclusione di alcuni file dal mirror
- Norme sui nomi e requisiti sulle dimensioni delle immagini .iso
- Registrare il mirror
Sito principale
Di seguito sono riportati gli indirizzi dei siti principali ma, se possibile, si prega di considere la possibilità di creare un mirror a partire da un altro mirror più vicino (elenchi: HTTP/FTP, rsync). L'accesso al sito principale potrebbe essere impedito in prossimità del periodo di rilascio.
Inoltre fare attenzione all'enorme quantità di dati memorizzata in queste directory, si consulti la prossima sezione per i dettagli su come tagliare la dimensione escludendo determinati file.
- Immagini di stable (aggiornate a ogni rilascio di stable):
http://cdimage.debian.org/debian-cd/
ftp://cdimage.debian.org/debian-cd/
rsync://cdimage.debian.org/debian-cd/ - Immagini settimanali:
http://cdimage.debian.org/cdimage/weekly-builds/
ftp://cdimage.debian.org/cdimage/weekly-builds/
rsync://cdimage.debian.org/cdimage/weekly-builds/ - Immagini giornaliere:
http://cdimage.debian.org/cdimage/daily-builds/
ftp://cdimage.debian.org/cdimage/daily-builds/
rsync://cdimage.debian.org/cdimage/daily-builds/
Creare un mirror tramite FTP e HTTP non è raccomandato
Non si dovrebbero usare FTP o HTTP per aggiornare i mirror. Questi metodi di trasferimento hanno un'alta probabilità di fallimento considerando l'enorme dimensione dei file.
Inoltre, HTTP e FTP non includono il controllo d'integrità dei dati scaricati, in questo modo è più difficoltoso individuare se i dati sono corrotti.
Creare un mirror tramite rsync è accettabile
Il programma rsync è una buona soluzione per la creazione di un mirror. È meno efficace delle altre soluzioni specifiche per Debian ma potrebbe essere più facile da configurare. Inoltre assicura che tutti i file sono trasferiti correttamente e che i metadati (p.e. le marcature temporali) sono sincronizzati con i file dati.
Consultare la sezione Esclusione di alcuni file dal mirror per vedere degli esempi delle opzioni --include e --exclude. L'elenco dei mirror rsync è disponibole su una pagina separata.
Si usino quantomeno le opzioni --times --links --hard-links --partial --block-size=8192. Questo manterrà la data di modifica, i symlinks e gli hardlinks, usando un block size di 8192 bytes (il più efficiente per le immagini dei CD). Quando la data di modifica e la dimensione sono le medesime, rsync lascierà semplicemente il file com'è, quindi solo --times è realmente obbligatorio.
Creare un mirror tramite jigdo-lite non è raccomandato
Le versioni più recenti del programma jigdo-lite permettono di scaricare le immagini in blocchi. Nonostante questo non si raccomanda l'uso di jigdo-lite per creare dei mirror Debian, usare jigdo-mirror.
Creare un mirror tramite jigdo-mirror è raccomandato
Questo vuol dire: fare i mirror dei file .iso con jigdo-mirror, poi (se si vuole fare un mirror con anche altri tipi di file, per esempio i file .jigdo e .template) eseguire rsync sulla directory per prelevare il resto. Gli script disponibili in questa pagina possono essere di aiuto per la configurazione.
Molte persone mantengono mirror Debian "regolari" (debian/), o semplicemente hanno un mirror del genere vicino. Ciò significa che hanno gia i .deb che sono inclusi nelle immagini dei CD. La questione che sorge spontanea è: perchè non si possono usare tali file nelle immagini dei CD?
jigdo-mirror è un programma che consente di generare l'immagine di un CD Debian usando i file da un mirror "normale", più alcuni template jigdo.
Prima di tutto, sono necessari i template di jigdo si consulti la pagina con le informazioni su jigdo per i link. Si prendano i file per ogni architettura per la quale si ha intenzione di creare l'immagine.
Per configurare il programma, creare il file ~/.jigdo-mirror. Ecco un esempio:
jigdoDir="/dove_tieni_i_mirror/debian-cd/current/jigdo" imageDir="/dove_tieni_i_mirror/debian-cd/current/images" tmpDir="/dove_tieni_i_mirror/debian-cd/current/images" debianMirror="file:/dove_tieni_i_mirror/debian" include='i386/|sparc/|powerpc/|source/'; exclude='-1\.'
Le variabili include e exclude contengono la lista delle architetture per le quali si intende creare le immagini (sono ammesse espressioni regolari). Per maggiori informazioni, si veda la pagina di manuale di jigdo-mirror o il codice stesso (è uno script di shell molto commentato).
Dopo la configurazione, si lanci semplicemente jigdo-mirror, il quale dovrebbe fare tutto da solo. Produrrà parecchio output e probabilmente ci metterà un po' quindi consigliamo di lanciarlo e redirigere l'output su un file.
Come diventare un push mirror
Ogni volta che sono disponibili delle nuove immagini il sito centrale può inviare un messaggio ai suoi mirror per fare in modo che questi inizino immediatamente l'aggiornamento. In questo modo i nuovi dati sono "spinti" oltre che "presi" dai mirror durante i loro aggiornamenti quotidiani. Questo comporta una propagazione più rapida del rilascio delle nuove immagini.
Se si vuole che il proprio mirror entri a far parte di questo sistema di aggiornamento si consulti questa pagina.
Esclusione di alcuni file dal mirror
Per ridurre la quantità di spazio necessaria al mirror dei CD Debian è possibile escludere alcuni file dalla procedura di creazione del mirror. Le istruzioni seguenti includono le opzioni di rsync ma possono essere utili anche si utilizza una utilità diversa per la creazione del mirror. Con rsync le opzioni --include e --exclude sono valutate nell'ordine in cui appaiono e la prima opzione che verifica il modello determina se un file deve essere incluso o escluso dal mirror.
- Esclusione dei sorgenti:
--exclude=source/
Evita che le immagini contenenti il codice sorgente siano incluse nel mirror. Si noti che alcune persone considerano inappropriato offrire su un server dei programmi binari rilasciati con licenza GPL senza offrire anche il codice sorgente di questi programmi sullo stesso server. - Esclusione delle immagini complete:
--include='*businesscard*.iso' --include='*netinst*.iso'
--exclude='*.iso'
Esclude tutte le immagini dei CD e dei DVD per tutte le architetture tranne le immagini in formato carta di credito e le immagini .iso per l'installazione da rete. Si raccomanda di includere sempre nel mirror queste immagini: considerata la loro dimensione sono estremamente utili! - Esclusione delle immagini complete delle architetture
non-i386: --include='*businesscard*.iso'
--include='*netinst*.iso' --include='i386/**.iso'
--exclude='*.iso'
Come il precedente ma include tutte le immagini dei CD e dei DVD per l'architettura i386. - Esclusione delle immagini complete, eccetto dei CD da
1 a 3 per i386: --include='*netinst*.iso'
--include='i386/**-[1-3].iso' --exclude='*.iso'
L'insieme completo delle immagini per i386 potrebbe richiedere troppo spazio se si include anche le immagini dei DVD a doppio strato. Questo esclude tutte le immagini .iso tranne le immagini per l'installazione da rete e i primi 3 CD per l'architettura i386. - Esclusione di tutte le architetture a eccezione di 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/
Include solamente l'insieme delle immagini complete per i386, non include nessuno dei file .jigdo, .iso, ecc. delle altre architetture.
Norme sui nomi e requisiti sulle dimensioni delle immagini .iso
Le diverse versioni delle immagini .iso sono distinguibili in base al loro nome, questo permette di ridurre i tipi di immagini sul proprio mirror:
- *-businesscard.iso: un'immagine per ciascuna delle architetture supportate, 50 MB
- *-netinst.iso: un'immagine per ciascuna architettura, 110 MB
- *-dvd.iso (DVD singolo strato): più immagini solo per i386 ciascuna da 4482 MB. Per sarge la dimensione complessiva delle immagini è di circa 9000 MB.
- *-dldvd.iso (DVD doppio strato): come le precedenti eccetto che le immagini hanno dimensione massima di 8106 MB. Per sarge non sono disponibili le immagini .iso ci sono solo i file per jigdo.
- *.iso: tutti i file .iso che non verificano nessuno dei precedenti espressioni sono le immagini dei CD. Ci sono più immagini da 650 MB per ciascuna architettura. La dimensione complessiva di tutte le immagini per tutte le architetture è pari alla dimensione di un mirror Debian completo (circa 100 GB al momento della scrittura di questo documento).
Registrare il mirror
Per rendere il mirror utile per un maggior numero di persone, è possibile registrarlo nella nostra lista dei mirror, come questa o questa. Comunque, visto che le immagini complete sono file molto grandi, l'aggiunta del proprio mirror alla nostra lista, potrebbe provocare parecchi gigabyte di traffico di rete giornaliero.
Si può anche registrare il proprio mirror sia compilando la maschera per l'aggiunta di mirror (notare che i campi CDImage-* sono quelli importanti), o mandando una e-mail a debian-cd@lists.debian.org.
Apprezziamo tutti i nuovi mirror. Grazie in anticipo!
