Creare un mirror dell'archivio Debian
- Se creare un mirror
- Cosa mettere nel mirror
- Da dove sincronizzarsi
- Come sincronizzarsi
- Mirroring parziale
- Quando sincronizzarsi
- Ulteriori impostazioni raccomandate
- Come aggiungere un mirror alla lista dei mirror
- Liste di messaggi
- Note per mirror privati (parziali)
Se creare un mirror
I nuovi mirror sono sempre ben accetti ma ogni potenziale gestore di un nuovo mirror dovrebbe rispondere alle seguenti domande prima di avviare un proprio mirror:
- È necessario un mirror nella mia area geografica? Magari ce ne sono già altri nelle vicinanze.
- Dispongo delle risorse per ospitare un mirror? I mirror richiedono un considerevole spazio su disco e molta banda, si deve essere in grado di coprirne i costi.
- Un mirror è la scelta giusta? Se lo scopo principale è fornire il servizio agli utenti del proprio ISP/struttura allora potrebbe essere una scelta migliore un proxy, per esempio apt-cacher-ng, squid o varnish.
Cosa mettere nel mirror
La pagina principale dei mirror elenca gli archivi disponibili.
- Gli utenti cercheranno la directory debian/ per installare Debian via rete, per scaricare i CD (usando jigdo) e per aggiornare sistemi già installati. Si raccomanda di fare il mirror di questo repository.
- debian-cd/ è una directory che non è identica su tutti i mirror.
Su qualche mirror conterrà i template di jigdo per produrre le immagini
dei CD (insieme ai file contenuti in debian/), da altri conterrà delle
immagini già complete, su altri ancora li conterrà entrambi.
Controllare la pagina mirror delle immagini dei CD per ulteriori informazioni a riguardo. - debian-archive/ contiene il vero archivio: le versioni vecchie e obsolete di Debian. Di solito è interessante solo per un piccolo numero di utenti. (In caso di dubbi non fare il mirror di questo archivio.)
Visitare la pagina delle dimensioni dei mirror per informazioni più precise riguardo la grandezza dei mirror.
La directory debian-security/ contiene solamente gli aggiornamenti di sicurezza rilasciati dal Debian Security Team. Nonostante sembri interessante, non è consigliabile agli utenti di recuperare gli aggiornamenti di sicurezza da un mirror, invece è raccomandato scaricarli dal servizio distribuito security.debian.org. Si raccomanda di not fare il mirror di questo repository.
Da dove sincronizzarsi
ftp.debian.org
non è la locazione canonica dei pacchetti
Debian, invece è solamente uno dei tanti server che sono aggiornati da un
server interno di Debian. Ci sono molti mirror
pubblici che gestiscono rsync da cui poter fare la sincronizzazione.
Si raccomanda di utilizzarne uno rete-geograficamente vicino.
Si deve evitare di scegliere come fonte un qualsiasi nome che viene
risolto in più di un indirizzo (come ftp.us.debian.org
)
perché nel caso che un server non sia disponibile la sincronizzazione
potrebbe avvenire con server in stato diverso diverso da quello con cui si
è solitamente collegati e quindi perdere la sincronia.
Notare anche che l'unico servizio di cui è garantita l'esistenza per
ftp.CC.debian.org
è HTTP. A chi vuole fare il mirror usando
rsync si consiglia di scegliere il nome della macchina che attualmente sta
fornendo il servizio per ftp.CC.debian.org
(consultare la
lista /debian/project/trace
sul server per conoscerlo).
Come sincronizzarsi
Il metodo raccomandato per sincronizzarsi è l'insieme di script ftpsync, disponibile in tre formati:
- come tarball da https://ftp-master.debian.org/ftpsync.tar.gz
- dal repository git: git clone https://salsa.debian.org/mirror-team/archvsync.git (vedere https://salsa.debian.org/mirror-team/archvsync/)
- come pacchetto Debian: ftpsync
Si raccomanda di non usare script fatti da soli né di usare direttamente rsync. L'uso di ftpsync assicura che gli aggiornamenti sono in modo da non confondere apt, in particolare ftpsync elabora traduzioni, contenuti e altri file con metadati in modo che apt non trovi errori di validazione nel caso un utente esegua un aggiornamento mentre è in corso la sincronizzazione del server. Inoltre produce anche un file di traccia con molte informazioni utili per determinare se il mirro funziona, quali architetture espone e da dove si sincronizza.
Mirroring parziale
Considerando le già grandi dimensioni dell'archivio Debian, potrebbe essere consigliabile fare il mirror solo di parti dell'archivio. I mirror pubblici dovrebbero esporre tutte le varianti (testing, unstable, ecc.) ma potrebbero restringere l'insieme delle architeture. Proprio per questo scopo il file di configurazione di ftpsync dispone delle impostazioni ARCH_EXCLUDE e ARCH_INCLUDE.
Quando sincronizzarsi
L'archivio principale viene aggiornato quattro volte al giorno. I mirror solitamente iniziano la sincronizzazione intorno alle 03:00, 09:00, 15:00 e 21:00 (tutti orari UTC) ma questi non sono mai orari definitivi e ogni mirror non si dovrebbe fissare su quelli.
Il mirror andrebbe aggiornato dopo qualche ora rispetto agli aggiornamenti dell'archivio principale. È opportuno controllare se il mirror utilizzato per la sincronizzazione crea un file timestamp nella sua directory project/trace/. Il file di timestamp sarà chiamato come il sito, e conterrà l'orario di completamento dell'ultimo aggiornamento. Aggiungere un paio di ore da quell'orario (per essere sicuri) e avviare la sincronizzazione a quell'ora.
È essenziale che il proprio mirror sia sincronizzato con l'archivio principale. Un minimo di 4 aggiornamenti ogni 24 ore garantiranno che il proprio mirror sia un vero specchio dell'archivio. I mirror non sincronizzati con l'archivio principale non saranno inseriti nell'elenco ufficiale dei mirror.
La maniera più semplice per sincronizzarsi ogni giorno è usare cron. Consultare man crontab per dettagli.
Notare che se l'aggiornamento del proprio mirror viene attivato tramite il meccanismo di push, allora questa operazione non è necessaria.
Avvio del mirroring con push
Il push mirroring
è una forma di mirroring basata su rsync che
è stata sviluppata per minimizzare i tempi che impiegano i cambiamenti
dell'archivio a raggiungere i vari mirror. Il server di origine usa un
trigger SSH per avvisare i mirror destinatari di aggiornarsi.
Per una descrizione più dettagliata del funzionamento, perché è più
sicuro e come creare un push mirror, consultare la
spiegazione completa.
Ulteriori impostazioni raccomandate
I mirror pubblici dovrebbero rendere disponibile l'archivio Debian in
HTTP come /debian
.
Inoltre, assicurarsi che sia possibile vedere l'elenco della directory (con i nomi dei file completi) e che funzionino i collegamenti simbolici. Con Apache dovrebbe essere sufficiente:
<Directory /percorso/al/vostro/mirror/debian> Options +Indexes +SymlinksIfOwnerMatch IndexOptions NameWidth=* +SuppressDescription </Directory>
Come aggiungere un mirror alla lista dei mirror
Per inserire il proprio mirror nell'elenco ufficiale è necessario:
- assicurarsi che il proprio mirror si sincronizzi con l'archivio 4 volte in 24 ore
- assicurarsi che il proprio mirror includa anche i file sorgente delle architetture contenute
Una volta che il mirror è pronto, deve essere registrato in Debian per essere inserito nella lista dei mirror. Gli invii delle registrazioni possono essere effettuati utilizzando il nostro semplice form web.
Problemi o domande possono essere inoltrati a mirrors@debian.org.
Liste di messaggi
Ci sono due liste di messaggi, entrambe in lingua inglese, sui mirror Debian: debian-mirrors-announce e debian-mirrors. Tutti i gestori di mirror sono invitati a iscriversi alla lista degli annunci perché è usata per tutti gli annunci importanti. Questa lista è moderata e non ha molto traffico. La seconda lista è destinata alla discussione generale ed è aperta a tutti.
Per qualsiasi domanda che non abbia trovato risposta in queste pagine web, è possibile contattaci all'indirizzo mirrors@debian.org oppure tramite il canale IRC #debian-mirrors su irc.debian.org.
Note per mirror privati (parziali)
A chi vuol gestire un mirror solo per il proprio sito e si ha bisogno solo di esporre un sottoinsieme delle varianti (per esempio stable), si consiglia di usare debmirror.