Primary Mirror Sites
SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub
This translation may be out of date. To help with the translations please access the FreeBSD translations instance.
FreeBSD è disponibile in confezioni (i CD di FreeBSD, del software aggiuntivo, e la documentazione cartacea) presso svariati rivenditori:
CompUSA
WWW: http://www.compusa.com/
Frys Electronics
WWW: http://www.frys.com/
I set di CD e DVD di FreeBSD sono disponibili presso molti rivenditori on-line:
BSD Mall by Daemon News
PO Box 161
Nauvoo, IL 62354
Stati Uniti d’America
Telefono: +1 866 273-6255
Fax: +1 217 453-9956
Email: <sales@bsdmall.com>
WWW: http://www.bsdmall.com/freebsd1.html
BSD-Systems
Email: <info@bsd-systems.co.uk>
WWW: http://www.bsd-systems.co.uk
FreeBSD Mall, Inc.
3623 Sanford Street
Concord, CA 94520-1405
Stati Uniti d’America
Telefono: +1 925 674-0783
Fax: +1 925 674-0821
Email: <info@freebsdmall.com>
WWW: http://www.freebsdmall.com/
Hinner EDV
St. Augustinus-Str. 10
D-81825 München
Germania
Telefono: (089) 428 419
WWW: http://www.hinner.de/linux/freebsd.html
Ikarios
22-24 rue Voltaire
92000 Nanterre
Francia
WWW: http://ikarios.com/form/#freebsd
JMC Software
Irlanda
Telefono: 353 1 6291282
WWW: http://www.thelinuxmall.com
Linux CD Mall
Private Bag MBE N348
Auckland 1030
Nuova Zelanda
Telefono: +64 21 866529
WWW: http://www.linuxcdmall.co.nz/
The Linux Emporium
Hilliard House, Lester Way
Wallingford
OX10 9TA
Regno Unito
Telefono: +44 1491 837010
Fax: +44 1491 837016
WWW: http://www.linuxemporium.co.uk/products/freebsd/
Linux+ DVD Magazine
Lewartowskiego 6
Warsaw
00-190
Polonia
Telefono: +48 22 860 18 18
Email: <editors@lpmagazine.org>
WWW: http://www.lpmagazine.org/
Linux System Labs Australia
21 Ray Drive
Balwyn North
VIC - 3104
Australia
Telefono: +61 3 9857 5918
Fax: +61 3 9857 8974
WWW: http://www.lsl.com.au
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Telefono: +7-812-3125208
Email: <info@linuxcenter.ru>
WWW: http://linuxcenter.ru/freebsd
Se sei un rivenditore e vuoi vendere i CDROM di FreeBSD, contatta uno dei distributori seguenti:
Cylogistics
809B Cuesta Dr., #2149
Mountain View, CA 94040
Stati Uniti d’America
Telefono: +1 650 694-4949
Fax: +1 650 694-4953
Email: <sales@cylogistics.com>
WWW: http://www.cylogistics.com/
Ingram Micro
1600 E. St. Andrew Place
Santa Ana, CA 92705-4926
Stati Uniti d’America
Telefono: 1 (800) 456-8000
WWW: http://www.ingrammicro.com/
Kudzu, LLC
7375 Washington Ave. S.
Edina, MN 55439
Stati Uniti d’America
Telefono: +1 952 947-0822
Fax: +1 952 947-0876
Email: <sales@kudzuenterprises.com>
LinuxCenter.Ru
Galernaya Street, 55
Saint-Petersburg
190000
Russia
Phone: +7-812-3125208
Email: <info@linuxcenter.ru>
WWW: http://linuxcenter.ru/freebsd
Navarre Corp
7400 49th Ave South
New Hope, MN 55428
Stati Uniti d’America
Telefono: +1 763 535-8333
Fax: +1 763 535-0341
WWW: http://www.navarre.com/
I sorgenti ufficiali di FreeBSD sono disponibili via FTP anonimo da una serie di siti mirror sparsi in tutto il mondo. Il sito ftp://ftp.FreeBSD.org/pub/FreeBSD/ è ben gestito e permette un gran numero di connessioni, ma ti conviene probabilmente trovare un sito mirror a te "più vicino" (soprattutto se decidi di configurare una sorta di sito mirror).
Il database dei siti mirror di FreeBSD è più preciso della lista contenuta in questo manuale, poichè ottiene le informazioni direttamente dal DNS anziché affidarsi a una lista statica di host.
Inoltre, FreeBSD è disponibile via FTP anonimo dai seguenti siti mirror. Se decidi di procurarti FreeBSD via FTP anonimo, usa per favore un sito a te vicino. I siti mirror elencati come "Siti Mirror Primari" hanno tipicamente l’intero archivio di FreeBSD (tutte le versioni oggi disponibili per ognuna delle architetture) ma probabilmente scaricherai più velocemente da un sito che è nel tuo stato o regione. I siti di ogni stato contengono le versioni più recenti per le architetture più popolari ma potrebbero non contenere l’intero archivio di FreeBSD. Tutti i siti permettono l’accesso tramite FTP anonimo e alcuni permettono l’accesso anche con altri metodi. I metodi di accesso disponibili per ogni sito sono elencati fra parentesi dopo il nome dell’host.
Central Servers, Primary Mirror Sites, Armenia, Australia, Austria, Brazil, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hong Kong, Ireland, Japan, Korea, Latvia, Lithuania, Netherlands, New Zealand, Norway, Poland, Russia, Saudi Arabia, Slovenia, South Africa, Spain, Sweden, Switzerland, Taiwan, Ukraine, United Kingdom, United States of America.
(aggiornato al UTC)
Central Servers
ftp://ftp.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6 / http://ftp.FreeBSD.org/pub/FreeBSD/ / http://ftp.FreeBSD.org/pub/FreeBSD/)
Primary Mirror Sites
In case of problems, please contact the hostmaster <mirror-admin@FreeBSD.org>
for this domain.
ftp://ftp4.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6 / http://ftp4.FreeBSD.org/pub/FreeBSD/ / http://ftp4.FreeBSD.org/pub/FreeBSD/)
ftp://ftp10.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6 / http://ftp10.FreeBSD.org/pub/FreeBSD/ / http://ftp10.FreeBSD.org/pub/FreeBSD/)
ftp://ftp14.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp14.FreeBSD.org/pub/FreeBSD/)
Armenia
In case of problems, please contact the hostmaster <hostmaster@am.FreeBSD.org>
for this domain.
Australia
In case of problems, please contact the hostmaster <hostmaster@au.FreeBSD.org>
for this domain.
Austria
In case of problems, please contact the hostmaster <hostmaster@at.FreeBSD.org>
for this domain.
Brazil
In case of problems, please contact the hostmaster <hostmaster@br.FreeBSD.org>
for this domain.
Czech Republic
In case of problems, please contact the hostmaster <hostmaster@cz.FreeBSD.org>
for this domain.
Denmark
In case of problems, please contact the hostmaster <staff@dotsrc.org>
for this domain.
Estonia
In case of problems, please contact the hostmaster <hostmaster@ee.FreeBSD.org>
for this domain.
Finland
In case of problems, please contact the hostmaster <hostmaster@fi.FreeBSD.org>
for this domain.
France
In case of problems, please contact the hostmaster <hostmaster@fr.FreeBSD.org>
for this domain.
ftp://ftp1.fr.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp1.fr.FreeBSD.org/pub/FreeBSD/ / rsync)
ftp://ftp6.fr.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)
Germany
In case of problems, please contact the hostmaster <de-bsd-hubs@de.FreeBSD.org>
for this domain.
ftp://ftp1.de.FreeBSD.org/freebsd/ (ftp / http://www1.de.FreeBSD.org/freebsd/ / rsync://rsync3.de.FreeBSD.org/freebsd/)
ftp://ftp2.de.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp2.de.FreeBSD.org/pub/FreeBSD/ / rsync)
ftp://ftp4.de.FreeBSD.org/FreeBSD/ (ftp / http://ftp4.de.FreeBSD.org/pub/FreeBSD/)
ftp://ftp7.de.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp7.de.FreeBSD.org/pub/FreeBSD/)
Greece
In case of problems, please contact the hostmaster <hostmaster@gr.FreeBSD.org>
for this domain.
Hong Kong
Ireland
In case of problems, please contact the hostmaster <hostmaster@ie.FreeBSD.org>
for this domain.
ftp://ftp3.ie.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)
Japan
In case of problems, please contact the hostmaster <hostmaster@jp.FreeBSD.org>
for this domain.
Korea
In case of problems, please contact the hostmaster <hostmaster@kr.FreeBSD.org>
for this domain.
Latvia
In case of problems, please contact the hostmaster <hostmaster@lv.FreeBSD.org>
for this domain.
Lithuania
In case of problems, please contact the hostmaster <hostmaster@lt.FreeBSD.org>
for this domain.
Netherlands
In case of problems, please contact the hostmaster <hostmaster@nl.FreeBSD.org>
for this domain.
New Zealand
Norway
In case of problems, please contact the hostmaster <hostmaster@no.FreeBSD.org>
for this domain.
ftp://ftp.no.FreeBSD.org/pub/FreeBSD/ (ftp / rsync)
Poland
In case of problems, please contact the hostmaster <hostmaster@pl.FreeBSD.org>
for this domain.
ftp2.pl.FreeBSD.org
Russia
In case of problems, please contact the hostmaster <hostmaster@ru.FreeBSD.org>
for this domain.
Saudi Arabia
In case of problems, please contact the hostmaster <ftpadmin@isu.net.sa>
for this domain.
Slovenia
In case of problems, please contact the hostmaster <hostmaster@si.FreeBSD.org>
for this domain.
South Africa
In case of problems, please contact the hostmaster <hostmaster@za.FreeBSD.org>
for this domain.
Spain
In case of problems, please contact the hostmaster <hostmaster@es.FreeBSD.org>
for this domain.
Sweden
In case of problems, please contact the hostmaster <hostmaster@se.FreeBSD.org>
for this domain.
ftp://ftp2.se.FreeBSD.org/pub/FreeBSD/ (ftp / rsync://ftp2.se.FreeBSD.org/)
ftp://ftp4.se.FreeBSD.org/pub/FreeBSD/ (ftp / ftp://ftp4.se.FreeBSD.org/pub/FreeBSD/ / http://ftp4.se.FreeBSD.org/pub/FreeBSD/ / http://ftp4.se.FreeBSD.org/pub/FreeBSD/ / rsync://ftp4.se.FreeBSD.org/pub/FreeBSD/ / rsync://ftp4.se.FreeBSD.org/pub/FreeBSD/)
ftp://ftp6.se.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp6.se.FreeBSD.org/pub/FreeBSD/)
Switzerland
In case of problems, please contact the hostmaster <hostmaster@ch.FreeBSD.org>
for this domain.
Taiwan
In case of problems, please contact the hostmaster <hostmaster@tw.FreeBSD.org>
for this domain.
ftp://ftp.ch.FreeBSD.org/pub/FreeBSD/ (ftp / ftp://ftp.tw.FreeBSD.org/pub/FreeBSD/ / rsync / rsyncv6)
ftp://ftp2.tw.FreeBSD.org/pub/FreeBSD/ (ftp / ftp://ftp2.tw.FreeBSD.org/pub/FreeBSD/ / http://ftp2.tw.FreeBSD.org/pub/FreeBSD/ / http://ftp2.tw.FreeBSD.org/pub/FreeBSD/ / rsync / rsyncv6)
ftp://ftp6.tw.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp6.tw.FreeBSD.org/ / rsync)
ftp://ftp11.tw.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp11.tw.FreeBSD.org/FreeBSD/)
Ukraine
ftp://ftp.ua.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp.ua.FreeBSD.org/pub/FreeBSD/)
ftp://ftp6.ua.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp6.ua.FreeBSD.org/pub/FreeBSD / rsync://ftp6.ua.FreeBSD.org/FreeBSD/)
United Kingdom
In case of problems, please contact the hostmaster <hostmaster@uk.FreeBSD.org>
for this domain.
ftp://ftp2.uk.FreeBSD.org/pub/FreeBSD/ (ftp / rsync://ftp2.uk.FreeBSD.org/ftp.freebsd.org/pub/FreeBSD/)
United States of America
In case of problems, please contact the hostmaster <hostmaster@us.FreeBSD.org>
for this domain.
ftp://ftp4.us.FreeBSD.org/pub/FreeBSD/ (ftp / ftpv6 / http://ftp4.us.FreeBSD.org/pub/FreeBSD/ / http://ftp4.us.FreeBSD.org/pub/FreeBSD/)
ftp://ftp13.us.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp13.us.FreeBSD.org/pub/FreeBSD/ / rsync)
ftp://ftp14.us.FreeBSD.org/pub/FreeBSD/ (ftp / http://ftp14.us.FreeBSD.org/pub/FreeBSD/)
Il CVS Anonimo (anche conosciuto come anoncvs) è una caratteristica del programma di utilità CVS contenuto in FreeBSD che serve per sincronizzarsi con un deposito CVS remoto (in gergo repository CVS). Tra le altre cose, permette agli utenti di FreeBSD di realizzare, senza avere particolari permessi, operazioni CVS in sola lettura su uno dei server anoncvs ufficiali del progetto FreeBSD. Per utilizzarlo è sufficiente impostare la variabile di ambiente CVSROOT
facendola puntare al server anoncvs appropriato, immettere la password "anoncvs" con il comando cvs login
, e poi usare il comando cvs(1) per accederci come se fosse un deposito locale.
Il comando |
Benché si possa dire che i servizi CVSup e anoncvs realizzino sostanzialmente le stesse funzioni, ci sono vari particolari che possono influenzare la scelta di un metodo di sincronizzazione piuttosto dell’altro. Per dirla in breve, CVSup è più efficiente nell’uso delle risorse di rete ed è il più avanzato tecnicamente tra i due, ma tutto questo ha un prezzo. Per usare CVSup, bisogna installare e configurare un client speciale prima di poter scaricare qualcosa, e si può scaricare solo blocchi piuttosto grossi che CVSup chiama collezioni.
Anoncvs, al contrario, può essere usato per esaminare qualunque cosa a partire da un singolo file fino a uno specifico programma (come ls
o grep
) specificando il nome del modulo CVS. Ovviamente, anoncvs è adatto solo per operazioni di sola lettura sul deposito CVS, quindi se hai intenzione di supportare lo sviluppo locale in uno dei depositi condivisi del progetto FreeBSD allora CVSup è in realtà l’unica opzione.
La configurazione di cvs(1) per usare un deposito CVS Anonimo è semplicemente una questione di impostare la variabile di ambiente CVSROOT
affinché punti a uno dei server anoncvs del progetto FreeBSD. Al momento della stesura di questo testo sono disponibili i seguenti server:
Austria: :pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs (Usa cvs login
ed inserisci qualunque password quando richiesta.)
Francia: :pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs (pserver (password "anoncvs"), ssh (nessuna password))
Germania: :pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs (Usa cvs login
ed inserisci la password "anoncvs" quando richiesta.)
Germania: :pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs (rsh, pserver, ssh, ssh/2022)
Giappone: :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs (Usa cvs login
ed inserisci la password "anoncvs" quando richiesta.)
USA: freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs (solo ssh - nessuna password)
SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub
USA: anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (solo ssh - nessuna password)
SSH HostKey: 1024 8b:c4:6f:9a:7e:65:8a:eb:50:50:29:7c:a1:47:03:bc root@ender.liquidneon.com SSH2 HostKey: 2048 4d:59:19:7b:ea:9b:76:0b:ca:ee:da:26:e2:3a:83:b8 ssh_host_dsa_key.pub
Dato che CVS permette di estrarre (nel suo gergo: "check out") qualsiasi versione dei sorgenti di FreeBSD che sia mai esistita (o, in alcuni casi, che esisterà), è bene familiarizzare con il parametro revisione (-r
) di cvs(1) e sapere quali valori può assumere nel deposito del progetto FreeBSD.
Ci sono due tipi di tag, i tag di revisione e i tag di ramo. Un tag di revisione fa riferimento ad una revisione specifica. Il suo significato rimane lo stesso di giorno in giorno. Un tag di ramo, d’altro canto, si riferisce sempre all’ultima revisione relativa a una specifica linea di sviluppo. Dato che un tag di ramo non si riferisce ad una revisione specifica, esso potrebbe avere un significato diverso da un giorno con l’altro.
La Tag CVS contiene i tag di revisione che possono essere interessanti per gli utenti. Tuttavia, nessuno di questi tag è valido per la collezione dei port poichè questa non ha revisioni multiple.
Quando specifichi un tag di ramo, normalmente ricevi l’ultima versione dei file relativa a quella linea di sviluppo. Se vuoi ricevere una versione precedente, puoi farlo specificando la data con il parametro -D date
. Si rimanda alla pagina man di cvs(1) per ulteriori dettagli.
Benché sia consigliata un’attenta lettura della pagina man di cvs(1) prima di fare qualsiasi cosa, seguono alcuni veloci esempi che spiegano in modo essenziale l’uso del CVS Anonimo:
% setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
% cvs login
Alla richiesta, inserire la password «anoncvs».
% cvs co ls
% cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.
% setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
% cvs login
Alla richiesta, inserire la password «anoncvs».
% cvs co -rRELENG_6 ls
% setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
% cvs login
Alla richiesta, inserire la password «anoncvs».
% cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls
% setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
% cvs login
Alla richiesta, inserire la password «anoncvs».
% cvs co modules
% more modules/modules
Le seguenti risorse addizionali possono essere utili nell’apprendimento del CVS:
CVS Tutorial dal Cal Poly.
CVS Home, la comunità di sviluppo e supporto del CVS.
CVSWeb è l’interfaccia web di CVS relativa al progetto FreeBSD.
CTM è un metodo per mantenere sincronizzati un albero di directory remoto e uno centralizzato. È stato sviluppato per l’albero dei sorgenti di FreeBSD, anche se con il passare del tempo, altre persone lo hanno trovano utile per altri scopi. A tutt’oggi esiste pochissima documentazione sul processo della creazione delle delta, quindi contattate la mailing list ctm-users-desc per avere più informazioni e nel caso voleste usare CTM per altri scopi.
CTM fornisce una copia locale dell’albero dei sorgenti di FreeBSD. Ci sono molte "varietà" di alberi disponibili. Che tu voglia seguire l’intero albero CVS o solo uno dei rami, CTM può fornirti i dati che ti servono. Se sei uno sviluppatore attivo di FreeBSD, ma hai una connettività TCP/IP di bassa qualità o non esistente, o semplicemente desideri ricevere le modifiche in modo automatico, CTM fa al caso tuo. Riceverai fino a tre delta giornaliere per i rami più attivi. Tuttavia, puoi considerare che li puoi avere attraverso l’invio automatico di email. Le dimensioni degli aggiornamenti sono sempre più piccole possibile. Questi sono in genere meno di 5K, con occasionali (uno su dieci) aggiornamenti da 10-50K e qualcuno più grande (100K o più) di tanto in tanto.
Devi anche essere cosciente delle varie insidie relativi all’uso di sorgenti in via di sviluppo e non provenienti da release pronte. Questo è vero in particolare per i sorgenti "current" (correnti). È raccomandata la lettura di Restare in "current" con FreeBSD.
Ti servono due cose: il programma CTM, e le delta iniziali da dargli in pasto (per arrivare ai livelli della "current").
Il programma CTM fa parte di FreeBSD fin dalla release della versione 2.0 e, se hai una copia dei sorgenti disponibile, risiede in /usr/src/usr.sbin/ctm.
Le "delta" da dare in pasto a CTM si possono avere in due modi: tramite FTP o email. Se puoi utilizzare FTP via Internet allora i seguenti siti supportano l’accesso a CTM:
vedi anche la sezione mirror.
Entra via FTP nella directory giusta e, da lì, inizia col trasferire il file README.
Se invece desideri ricevere le delta per email:
Iscriviti ad una delle liste di distribuzione di CTM. ctm-cvs-cur-desc supporta l’interno albero CVS. ctm-src-cur-desc supporta il ramo di sviluppo current. mailing list di distribuzione CTM del ramo src 4-STABLE supporta il ramo della release 4.X, ecc. (Se non sai come iscriverti a una lista, clicca sul nome della lista o raggiungi la pagina https://lists.freebsd.org e clicca sulla lista a cui ti vuoi iscrivere. La pagina della lista dovrebbe contenere tutte le informazioni necessarie per l’iscrizione.)
Quando inizierai a ricevere gli aggiornamenti CTM via email, puoi usare il programma ctm_rmail
per scompattarli e per applicarli. In realtà, se vuoi avere un processo completamente automatizzato, puoi usare il programma ctm_rmail
direttamente in un elemento di /etc/aliases. Esamina la pagina man di ctm_rmail
per maggiori dettagli.
Indipendentemente dal metodo che utilizzi per ricevere le delta di CTM, dovresti iscriverti alla mailing list ctm-announce-desc. In futuro, questo sarà l’unico posto dove saranno postati gli annunci riguardanti il funzionamento del sistema CTM. Clicca sul nome della lista e segui le istruzioni per iscriverti. |
Prima che tu possa servirti delle delta di CTM, hai bisogno di un punto di partenza dal quale successivamente costruire le delta.
Innanzitutto dovresti determinare ciò che hai. Si può iniziare da un directory "vuota". Devi usare una delta iniziale "Empty" per iniziare il tuo albero CTM. Qualche volta può succedere che una di queste delta "iniziali" sia distribuita su un CD per tua convenienza, ma comunque, questo generalmente non avviene.
Poichè gli alberi sono molte decine di megabyte, puoi iniziare da qualcosa che hai a portata di mano. Se hai un CD di una release, puoi copiare o estrarre i sorgenti da lì. Questo salverà un significativo trasferimento di dati.
Puoi riconoscere queste delta "iniziali" dalla lettera X
preceduta da un numero (per esempio src-cur.3210XEmpty.gz). Il nome che segue la lettera X
corrisponde all’origine del tuo "seme" iniziale. Empty è una directory vuota. Di solito una transizione base a partire da Empty
è prodotta ogni 100 delta. Strada facendo, queste avranno grandi dimensioni! Le dimensioni comuni per le delta XEmpty vanno dai 70 a 80 Megabyte di dati compressi con gzip
.
Una volta che ti sei procurato una delta base come punto di partenza, avrai bisogno anche di tutte le delta successive aventi un numero maggiore.
Per applicare le delta, fai come segue:
# cd /where/ever/you/want/the/stuff
# ctm -v -v /where/you/store/your/deltas/src-xxx.*
CTM decifra le delta compresse tramite il comando gzip
, quindi non hai bisogno di decomprimerle con gunzip
, e ciò salva spazio su disco.
Tranne in alcune circostanze, CTM non toccherà il tuo albero. Per verificare una delta puoi usare l’opzione -c
e di fatto CTM non toccherà il tuo albero; verificherà soltanto l’integrità della delta e se questa può essere applicata in modo pulito al tuo albero attuale.
Ci sono altre opzioni di CTM, guarda la pagina man o ispeziona i sorgenti per maggiori dettagli.
Questo è davvero tutto ciò che devi sapere. Ogni volta che ottieni una delta, esegui CTM per aggiornare i tuoi sorgenti.
È meglio non rimuovere le delta che richiedono grandi tempi di scaricamento. Nel caso succeda qualche disgrazia non dovrai riscaricarle. Anche se hai solo dischetti floppy, considera l’uso di fdwrite
per crearne una copia.
Allo stesso modo di uno sviluppatore potresti voler sperimentare delle modifiche nell’albero dei sorgenti. CTM supporta le modifiche locali in modo limitato: prima di verificare la presenza di un file foo, esso cerca foo.ctm. Se questo file esiste, CTM opererà su di esso piuttosto che su foo.
Questo comportamento offre un semplice modo per mantenere le modifiche locali: copia semplicemente il file che desideri modificare in un file con lo stesso nome e suffisso .ctm. Quindi puoi liberamente hackerare il codice, e CTM manterrà aggiornato il file .ctm.
Puoi determinare la lista delle modifiche che CTM apporterà ai tuoi sorgenti usando l’opzione -l
di CTM.
Questo è utile se vuoi mantenere dei log delle modifiche, prima o dopo aver modificato in qualche modo i file, o solo perchè ti senti un pò paranoico.
Qualche volta potresti voler creare dei backup di tutti i file che saranno modificati da un aggiornamento di CTM.
Specificando l’opzione -B backup-file
, CTM effettuerà il backup di tutti i file che saranno modificati da una certa delta CTM nel file backup-file.
Qualche volta potresti volere restringere la portata di un certo aggiornamento CTM, o potresti essere interessato ad estrarre solo pochi file da una serie di delta.
Puoi controllare la lista dei file sui quali CTM opererà specificando un’espressione regolare usando le opzioni -e
e -x
.
Per esempio, per estrarre una copia aggiornata del file lib/libc/Makefile dalla tua collezione di delta CTM, esegui i comandi seguenti:
# cd /dove/vuoi/estrarre/
# ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*
Per ogni file specificato in una delta CTM, le opzioni -e
e -x
sono applicate nello stesso ordine in cui compaiono sulla riga di comando. Il file è processato da CTM solo se risulta idoneo a tutte le opzioni -e
e -x
ad esso applicate.
I più importanti:
Usare qualche tipo di autenticazione nel sistema CTM, in modo tale da permette l’identificazione di aggiornamenti CTM contraffatti.
Ripulire le opzioni di CTM, che confondono e sono tutt’altro che intuitive.
Esiste una serie di delta per la collezione dei ports
, ma è ancora di poco interesse.
CTM/FreeBSD è disponibile via FTP anonimo dai siti mirror seguenti. Se decidi di procurarti CTM via FTP anonimo, per favore usa un sito a te vicino.
In caso di problemi, contatta la mailing list ctm-users-desc.
Se non trovi un mirror a te vicino o se il mirror è incompleto, prova ad usare qualche motore di ricerca come alltheweb.
CVSup è un pacchetto di software per distribuire ed aggiornare alberi di sorgenti da un deposito centrale CVS posto su un server remoto. I sorgenti di FreeBSD sono mantenuti in un deposito CVS su una macchina centrale di sviluppo situata in California. Con CVSup, gli utenti di FreeBSD possono facilmente mantenere aggiornati i loro alberi di sorgenti.
CVSup usa il cosiddetto modello ad estrazione per aggiornare. In questo modello, è compito del client chiedere al server gli aggiornamenti. Il server attente passivamente le richieste di aggiornamento dai suoi client. In questo modo tutti gli aggiornamenti sono incitati dal client. Il server non invia mai degli aggiornamenti che non sono stati richiesti. Gli utenti devono eseguire il client CVSup manualmente per ottenere un aggiornamento, oppure possono usare cron
per eseguire automaticamente queste operazioni secondo stabilite regole.
Il termine CVSup, scritto in quel modo, si riferisce all’intero pacchetto di software. I suoi componenti principali sono il client cvsup
che viene eseguito su ogni macchina degli utenti, e il server cvsupd
che viene eseguito su ogni sito mirror di FreeBSD.
Leggendo la documentazione di FreeBSD e le mailling list, potresti notare dei riferimenti a sup. Sup è il predecessore di CVSup, e serviva per un simile scopo. CVSup sostanzialmente è usato allo stesso modo di sup e, di fatto, i suoi file di configurazione sono compatibili con sup
. Sup non viene più utilizzato nel progetto FreeBSD, poichè CVSup è più veloce e più flessibile.
Il modo più semplice per installare CVSup è usare il package precompilato net/cvsup della collezione dei package di FreeBSD. Se preferisci costruire CVSup partendo dal sorgente, allora puoi usare il port net/cvsup. Ma sei avvisato: il port net/cvsup dipende dal sistema Modula-3, che richiede una consistente quantità di tempo e di spazio su disco per scaricarlo e costruirlo.
Se hai intenzione di usare CVSup su una macchina sulla quale non sarà installato XFree86™ o Xorg, come su un server, assicurati di usare il port che non include la GUI di CVSup, ossia net/cvsup-without-gui. |
Il funzionamento di CVSup è controllato da un file di configurazione chiamato supfile. Esistono alcuni esempi di supfile nella directory /usr/shared/examples/cvsup/.
Le informazioni contenute in un supfile rispondono alle seguenti questioni relative a CVSup:
Nelle seguenti sezioni, costruiremo un tipico supfile per rispondere a turno ad ognuna di queste questioni. Incominciamo però col descrivere la struttura globale di un supfile.
Un supfile è un file di testo. I commenti iniziano con un #
e si estendono fino alle fine della riga. Le righe bianche e le righe che contengono solo commenti sono ignorate.
Ogni altra riga descrive un insieme di file che l’utente vuole ricevere. Una riga inizia con il nome di una "collezione", un nome di un gruppo logico di file definiti dal server. Il nome della collezione indica al server i file che vuoi ricevere. Dopo il nome della collezione seguono zero o più campi, separati da spazi bianchi. Questi campi rispondono alle questioni citate in precedenza. Ci sono due tipi di campi: campo opzione e campo valore. Un campo opzione consiste di una parola chiave a se stante, es. delete
o compress
. Anche un campo valore inizia con una parola chiave, ma questa è seguita dal simbolo =
, senza spazi bianchi intermedi, e da un seconda parola. Ad esempio, release=cvs
è un campo valore.
Un supfile tipicamente specifica più di un’unica collezione da ricevere. Un modo di strutturare un supfile è specificare esplicitamente tutti i campi rilevanti per ogni collezione. Tuttavia, ciò tende a creare supfile troppo lunghi, e ciò è scomodo poichè in un supfile la maggior parte dei campi sono gli stessi per tutte le collezioni. CVSup fornisce un meccanismo per aggirare questi problemi. Le linee che iniziano con il nome speciale di pseudo-collezione *default
possono essere usate per inizializzare opzioni e valori che saranno utilizzati come default per le successive collezioni definite nel supfile. Un valore di default può essere sovrascritto da una singola collezione, specificando un valore diverso per la collezione stessa. Inoltre i valori di default possono essere modificati in mezzo al supfile tramite linee *default
aggiuntive.
Con queste conoscenze, possiamo ora procedere alla costruzione di un supfile per ricevere ed aggiornare l’albero dei sorgenti della FreeBSD-CURRENT.
I file disponibili via CVSup sono organizzati in gruppi chiamati "collezioni". Le collezioni che sono disponibili sono descritte nella prossima sezione. In questo esempio, desideriamo ricevere per intero l’albero corrente dei sorgenti del sistema FreeBSD. C’è un’unica e vasta collezione src-all
che ci permette di ricevere tutto ciò. Come prima fase nella costruzione del nostro supfile, dobbiamo semplicemente elencare le collezioni, una per riga (in questo caso, c’è un’unica riga):
src-all
Con CVSup, hai la possibilità di ricevere qualsiasi versione dei sorgenti che sia mai esistita. Questo è possibile poichè il server cvsupd lavora direttamente sul deposito CVS, che contiene tutte le versioni. Puoi specificare la versione che vuoi usando i campi valori tag=
e date=
.
Stai molto attento a specificare i campi |
Il campo tag=
richiama un tag simbolico nel deposito. Ci sono due tipi di tag, i tag di revisione e i tag di ramo. Un tag di revisione fa riferimento ad una revisione specifica. Il suo significato rimane lo stesso di giorno in giorno. Un tag di ramo, d’altro canto, si riferisce sempre all’ultima revisione relativa ad una specifica linea di sviluppo. Dato che un tag di ramo non si riferisce ad una revisione specifica, esso potrebbe avere un significato diverso da un giorno con l’altro.
La Tag CVS contiene tag di ramo che potrebbero interessare gli utenti. Quando si specifica un tag in un file di configurazione di CVSup, esso dovrebbe essere preceduto da tag=
(RELENG_4
diviene tag=RELENG_4
). Tieni presente che per la collezione dei port è rilevante solo tag=.
.
Sii molto attento a digitare il nome del tag nel modo esatto. CVSup non è in grado di riconoscere tag errati. Se digiti in modo sbagliato un tag, CVSup si comporterà come se tu avessi specificato un tag valido che non riguarda nessun file. In questo caso i tuoi sorgenti saranno eliminati. |
Quando specifichi un tag di ramo, normalmente ricevi le ultime versioni dei file di quella linea di sviluppo. Se vuoi ricevere versioni precedenti, puoi specificare una data con il campo valore date=
. La pagina man di cvsup(1) spiega come farlo.
Nel nostro esempio, desideriamo ricevere FreeBSD-CURRENT. Aggiungiamo questa riga all’inizio del nostro supfile:
*default tag=.
C’è un importante caso speciale che entra in gioco se non specifichi ne un campo tag=
ne un campo date=
. In questo caso, ricevi i file RCS attuali direttamente dal deposito CVS del server, invece di ricevere una versione particolare. Gli sviluppatori in genere preferiscono questa modalità di funzionamento. Mantenendo una copia del deposito stesso sui loro sistemi, essi sono in grado di navigare attraverso la storia delle revisioni e di esaminare le versioni precedenti dei file. Comunque questo vantaggio è realizzabile al costo di un ingente quantità di spazio su disco.
Il campo host=
indica a cvsup
da dove prelevare i suoi aggiornamenti. Va bene uno qualunque dei siti mirror di CVSup, anche se dovresti provare a selezionarne uno che sia a te vicino nel ciberspazio. In questo esempio useremo un sito di distribuzione di FreeBSD fittizio, cvsup99.FreeBSD.org
:
*default host=cvsup99.FreeBSD.org
Devi cambiare l’host in uno che esiste realmente prima di eseguire CVSup. Il settaggio dell’host può essere sovrascritto su riga di comando eseguendo cvsup
con l’opzione -h hostname
.
Dove li vuoi mettere sulla tua macchina?
Il campo prefix=
indica a cvsup
dove mettere i file che riceve. In questo esempio, metteremo i file sorgenti direttamente nel nostro albero dei sorgenti, /usr/src. La directory src è già implicita nelle collezioni che vogliamo ricevere, quindi la corretta specifica è questa:
*default prefix=/usr
Dove cvsup
dovrebbe mantenere i suoi file di stato?
Il client di CVSup mantiene certi file di stato in ciò che è chiamata directory "base". Questi file aiutano CVSup a lavorare in modo più efficace, mantenendo traccia di quali aggiornamenti sono stati già ricevuti. Useremo la directory base standard, /var/db:
*default base=/var/db
Se la tua directory base non esiste, potrebbe essere una buona idea crearla subito. Il client cvsup
interrompe l’esecuzione se la tua directory base non esiste.
Settaggi vari di supfile:
C’è un altro settaggio che normalmente deve essere presente in un supfile:
*default release=cvs delete use-rel-suffix compress
release=cvs
indica che il server dovrebbe prendere le sue informazioni dal deposito CVS principale di FreeBSD. In genere questa è la normalità, ma esistono altre possibilità che vanno oltre lo scopo di questa sezione.
delete
dà a CVSup il permesso di cancellare file. Dovresti sempre specificare questa opzione, in modo che CVSup possa mantenere il tuo albero dei sorgenti del tutto aggiornato. CVSup è attento nel cancellare solamente quei file dei quali è responsabile. Altri file extra verranno lasciati intatti.
use-rel-suffix
è … arcano. Se vuoi realmente saperne di più, guarda la pagina man di cvsup(1). Altrimenti, specificala senza preoccupartene troppo.
compress
abilita l’uso di una compressione stile gzip sul canale di comunicazione. Se hai una connessione T1 o più veloce, non dovresti usare la compressione. Diversamente, può essere veramente d’aiuto.
Ricapitolazione di tutti settaggi:
Il supfile completo per il nostro esempio è il seguente:
*default tag=. *default host=cvsup99.FreeBSD.org *default prefix=/usr *default base=/var/db *default release=cvs delete use-rel-suffix compress src-all
Come menzionato in precedenza, CVSup usa un modello ad estrazione. Sostanzialmente, questo significa che ti connetti al server CVSup, lui dice, "Ecco ciò che puoi scaricare …", ed il tuo client risponde "OK, prenderò questo, questo, questo e questo." Nella configurazione di default, il client CVSup prenderà ogni file associato alla collezione e al tag che hai specificato nel file di configurazione. Tuttavia, questo non è sempre ciò che vuoi, specialmente se stai sincronizzando gli alberi doc, ports, o www - molte persone non sono in grado di leggere quattro o cinque lingue, e quindi esse non hanno bisogno di scaricare i file di certe lingue. Se stai sincronizzando con CVSup la collezione dei port, puoi specificare collezioni individuali (es., ports-astrology, ports-biology, ecc. invece di specificare semplicemente ports-all). Tuttavia, poichè gli alberi doc e www non hanno collezioni per specifiche lingue, devi usare una delle molte abili caratteristiche di CVSup: il file refuse.
Il file refuse sostanzialmente indica a CVSup che non dovrebbe prendere ogni singolo file da una collezione; in altre parole, esso dice al client di rifiutare certi file dal server. Il file refuse può essere trovato (o, se non ne hai ancora uno, dovrebbe essere messo) in base/sup/. base è definita nel tuo supfile; la nostra base è /var/db, e quindi di default il file refuse è /var/db/sup/refuse.
Il file refuse ha veramente un formato molto semplice; esso contiene semplicemente i nomi dei file o delle directory che non desideri scaricare. Per esempio, se non parli altre lingue oltre all’inglese e al tedesco, e non hai la necessità di leggere la traduzione in tedesco della documentazione, puoi mettere le seguenti righe nel tuo file refuse:
doc/bn_*
doc/da_*
doc/de_*
doc/el_*
doc/es_*
doc/fr_*
doc/it_*
doc/ja_*
doc/nl_*
doc/no_*
doc/pl_*
doc/pt_*
doc/ru_*
doc/sr_*
doc/tr_*
doc/zh_*
e così via per altre lingue (puoi ottenere la lista completa esplorando il deposito CVS di FreeBSD).
Con questa utile funzionalità, quegli utenti che hanno una connessione lenta o pagano ogni minuto di connessione Internet potranno risparmiare tempo prezioso poichè non dovranno più scaricare file che non usano mai. Per maggiori dettagli sul file refuse e su altre utili caratteristiche di CVSup, guarda la sua pagina man.
Sei ora pronto per provare un aggiornamento. La riga di comando per farlo è molto semplice:
# cvsup supfile
dove supfile è naturalmente il nome del supfile che hai creato. Assumendo che stai lavorando sotto X11, cvsup
visualizzarà una GUI con alcuni bottoni adibiti ad operazioni usuali. Premi il bottone go, e stai a guardare l’esecuzione.
Poichè in questo esempio stai aggiornando il tuo albero dei sorgenti /usr/src, avrai bisogno di eseguire il programma come root
affinchè cvsup
abbia i permessi necessari per aggiornare i tuoi file. Avendo appena creato il tuo file di configurazione, e non avendo mai usato questo programma prima ad ora, tutto ciò potrebbe renderti un pò nervoso. Esiste un semplice modo per provare la sincronizzazione senza toccare i tuoi preziosi file. Crea una directory vuota in qualche posto, e richiamala come argomento sulla riga di comando:
# mkdir /var/tmp/dest
# cvsup supfile /var/tmp/dest
La directory che hai specificato sarà usata come directory di destinazione per tutti gli aggiornamenti dei file. CVSup esaminerà i tuoi file usuali in /usr/src, ma non modificherà o cencellerà alcuno di essi. Gli aggiornamenti dei file finiranno invece in /var/tmp/dest/usr/src. Inoltre CVSup lascerà intatta la sua directory base contenente gli stati dei file quando viene eseguito in questo modo. Le nuove versioni di questi file saranno scritte nella directory specificata. A condizione che tu abbia l’accesso di lettura in /usr/src, non hai bisogno di essere root
per realizzare questo tipo di giro di prova.
Se non stai utilizzando X11 o se non ti piacciono le GUI, dovresti aggiungere un paio di opzioni alla riga di comando quando esegui cvsup
:
# cvsup -g -L 2 supfile
L’opzione -g
indica a CVSup di non usare la sua GUI. Ciò è automatico se non stai utilizzando X11, ma se lo stai facendo allora la devi specificare.
L’opzione -L 2
indica a CVSup di visualizzare i dettagli di tutti gli aggiornamenti dei file che avvengono. Esistono tre livelli di verbosità, da -L 0
a -L 2
. Il default è 0, che significa silenzio totale eccetto per i messaggi di errore.
Ci sono molte altre opzione disponibili. Per una breve lista di esse, digita cvsup -H
. Per una descrizione più dettagliata, guarda la relativa pagina man.
Le collezioni di file disponibili via CVSup sono organizzate gerarchicamente. Ci sono poche collezioni grandi, le quali sono divise in piccole sotto-collezioni. Ricevere una grande collezione è equivalente a ricevere ogni sua sotto-collezione. Le relazioni gerarchiche tra le collezioni riflettono l’uso dell’identazione nella lista qui sotto.
Le collezioni maggiormente usate sono src-all
, e ports-all
. Le altre collezioni sono usate solo da piccoli gruppi di persone per scopi speciali, e alcuni siti mirror potrebbero non contenerle tutte.
cvs-all release=cvs
Il deposito CVS maestro di FreeBSD, incluso il codice di crittografia.
distrib release=cvs
File relativi alla distribuzione e al mirroring di FreeBSD.
doc-all release=cvs
Sorgenti del Manuale di FreeBSD e altra documentazione. Questa collezione non include i file per il sito web di FreeBSD.
ports-all release=cvs
La FreeBSD Ports Collection.
Se non vuoi aggiornare per intero |
Se hai intenzione di creare localmente una copia di ports/INDEX, devi includere |
ports-accessibility release=cvs
Software per aiutare gli utenti disabili.
ports-arabic release=cvs
Supporto per la lingua araba.
ports-archivers release=cvs
Applicazioni per l’archiviazione.
ports-astro release=cvs
Applicazioni riguardanti l’astronomia.
ports-audio release=cvs
Applicazioni di supporto all’audio.
ports-base release=cvs
L’infrastruttura della costruzione della collezione dei port - vari file posti nelle sottodirectory Mk/ e Tools/ della directory /usr/ports.
Per favore vedi l'importante avvertimento qui sopra: dovresti sempre aggiornare questa sotto-collezione ogni volta che aggiorni qualche pezzo della FreeBSD Ports Collection! |
ports-benchmarks release=cvs
Benchmark (applicazioni per valutare le prestazioni del computer).
ports-biology release=cvs
Biologia.
ports-cad release=cvs
Applicazioni per la grafica computerizzata.
ports-chinese release=cvs
Supporto alla lingua cinese.
ports-comms release=cvs
Software per la comunicazione.
ports-converters release=cvs
Convertitori di codici di caratteri.
ports-databases release=cvs
Database.
ports-deskutils release=cvs
Cose che erano utilizzate sulla scrivania prima che i computer furono inventati.
ports-devel release=cvs
Utility per il development.
ports-dns release=cvs
Software relativo al DNS.
ports-editors release=cvs
Editor.
ports-emulators release=cvs
Emulatori per altri sistemi operativi.
ports-finance release=cvs
Applicazioni finanziarie, di gestione delle spese e simili.
ports-ftp release=cvs
Server e client FTP.
ports-games release=cvs
Giochi.
ports-german release=cvs
Supporto alla lingua tedesca.
ports-graphics release=cvs
Utilità per la grafica.
ports-hebrew release=cvs
Supporto per la lingua ebraica.
ports-hungarian release=cvs
Supporto alla lingua ungherese.
ports-irc release=cvs
Utilità IRC (Internet Relay Chat).
ports-japanese release=cvs
Supporto alla lingua giapponese.
ports-java release=cvs
Utility Java™.
ports-korean release=cvs
Supporto alla lingua coreana.
ports-lang release=cvs
Linguaggi di programmazione.
ports-mail release=cvs
Software di posta.
ports-math release=cvs
Software per la computazione numerica.
ports-mbone release=cvs
Applicazioni MBone.
ports-misc release=cvs
Utility varie.
ports-multimedia release=cvs
Software multimediale.
ports-net release=cvs
Software di rete.
ports-net-im release=cvs
Software per messaggeria istantanea.
ports-net-mgmt release=cvs
Software di gestione del network.
ports-net-p2p release=cvs
Rete peer to peer.
ports-news release=cvs
Software per USENET.
ports-palm release=cvs
Software di supporto per i vari Palm™.
ports-polish release=cvs
Supporto alla lingua polacca.
ports-portuguese release=cvs
Supporto alla lingua portoghese.
ports-print release=cvs
Software per la stampa.
ports-russian release=cvs
Supporto alla lingua russa.
ports-science release=cvs
Scienzia.
ports-security release=cvs
Utility per la sicurezza.
ports-shells release=cvs
Shell a riga di comando.
ports-sysutils release=cvs
Utility di sistema.
ports-textproc release=cvs
Utility per la manipolazione del testo (non include utility per la pubblicazione computerizzata).
ports-ukrainian release=cvs
Supporto per la lingua ucraina.
ports-vietnamese release=cvs
Supporto alla lingua vietnamite.
ports-www release=cvs
Software relativo al World Wide Web.
ports-x11 release=cvs
Port per il supporto al sistema a finestre X.
ports-x11-clocks release=cvs
Orologi per X11.
ports-x11-fm release=cvs
Gestori di file per X11.
ports-x11-fonts release=cvs
Font per X11 e relative utility.
ports-x11-toolkits release=cvs
Cassette degli attrezzi per X11.
ports-x11-servers release=cvs
Server X11.
ports-x11-themes release=cvs
Temi per X11.
ports-x11-wm release=cvs
Gestori di finestre per X11.
projects-all release=cvs
Sorgenti per i progetti di FreeBSD.
src-all release=cvs
I sorgenti correnti di FreeBSD, incluso il codice di crittografia.
src-base release=cvs
Vari file posti in /usr/src.
src-bin release=cvs
Utility per l’utente in ambiente mono-utente (/usr/src/bin).
src-contrib release=cvs
Utility e librerie al di fuori del progetto FreeBSD, sostanzialmente utilizzati senza modifiche (/usr/src/contrib).
src-crypto release=cvs
Utility e librerie per la crittografia al di fuori del progetto FreeBSD, sostanzialmente utilizzati senza modifiche (/usr/src/crypto).
src-eBones release=cvs
Kerberos e DES (/usr/src/eBones). Non usati nell’attuale release di FreeBSD.
src-etc release=cvs
File di configurazione del sistema (/usr/src/etc).
src-games release=cvs
Giochi (/usr/src/games).
src-gnu release=cvs
Utility protette dalla licenza pubblica di GNU (/usr/src/gnu).
src-include release=cvs
File header (/usr/src/include).
src-kerberos5 release=cvs
Pacchetto di sicurezza Kerberos5 (/usr/src/kerberos5).
src-kerberosIV release=cvs
Pacchetto di sicurezza KerberosIV (/usr/src/kerberosIV).
src-lib release=cvs
Librerie (/usr/src/lib).
src-libexec release=cvs
Programmi di sistema normalmente eseguiti da altri programmi (/usr/src/libexec).
src-release release=cvs
File richiesti per produrre una release di FreeBSD (/usr/src/release).
src-sbin release=cvs
Utility di sistema per la modalità mono-utente (/usr/src/sbin).
src-secure release=cvs
Librerie e comandi per la crittografia (/usr/src/secure).
src-share release=cvs
File che possono essere condivisi tra sistemi multipli (/usr/src/share).
src-sys release=cvs
Il kernel (/usr/src/sys).
src-sys-crypto release=cvs
Codice di crittografia del kernel (/usr/src/sys/crypto).
src-tools release=cvs
Vari strumenti per il mantenimento di FreeBSD (/usr/src/tools).
src-usrbin release=cvs
Utility per l’utente (/usr/src/usr.bin).
src-usrsbin release=cvs
Utility di sistema (/usr/src/usr.sbin).
www release=cvs
I sorgenti per il sito web di FreeBSD.
distrib release=self
I file di configurazione del server CVSup. Usati dai siti mirror CVSup.
gnats release=current
Il database GNATS per tener traccia dei bug.
mail-archive release=current
Archivio delle mailing list di FreeBSD.
www release=current
I file pre-processati del sito web di FreeBSD (non i file sorgenti). Usati dai siti mirror WWW.
Per le FAQ ed altre informazioni di CVSup vedere la pagina home di CVSup.
La maggior parte delle discussioni su CVSup inerenti a FreeBSD si svolgono sulla mailing list di discussioni tecniche su FreeBSD. In questa mailling list inoltre sono anche annunciate nuove versioni del software, come pure sulla mailing list di annunci su FreeBSD.
Questioni e resoconti di bug dovrebbero essere indirizzati all’autore del programma cvsup-bugs@polstra.com.
I server CVSup per FreeBSD si trovano ai seguenti siti:
Portsnap è un sistema per distribuire in modo sicuro l’albero dei port di FreeBSD. Circa ogni ora, viene generata una "snapshot" dell’albero dei port, che viene impacchettata e firmata criptograficamente. I file risultanti sono quindi distribuiti via HTTP.
Come CVSup, Portsnap usa un modello di aggiornamento a rchiesta: gli alberi dei port impacchettati e firmati sono messi sul server web che attende in modo passivo le richieste dei client. Gli utenti devono eseguire portsnap(8) manualmente o schedulare il job con cron(8) per scaricare periodicamente gli aggiornamenti in modo automatico.
Per ragioni tecniche, Portsnap non aggiorna direttamente il "reale" albero dei port in /usr/ports/; invece, lavora con una copia compressa dell’albero dei port memorizzata di default in /var/db/portsnap/. Questa copia compressa viene quindi usata per aggiornare l’albero dei port effettivo.
Se Portsnap è installato dalla collezione dei port di FreeBSD, la locazione di default per la sua snapshot compressa è /usr/local/portsnap/ invece di /var/db/portsnap/. |
Su FreeBSD 6.0 e versioni più recenti, Portsnap è contenuto nel sistema base. Su versioni di FreeBSD più datate, può essere installato usando il port sysutils/portsnap.
Il funzionamento di Portsnap è controllato dal file di configurazione /etc/portsnap.conf. Per la maggior parte degli utenti, la configurazione di default sarà sufficiente; per maggiori dettagli, consultare la pagina man portsnap.conf(5).
Se Portsnap è installato dalla collezione dei port di FreeBSD, userà il file di configurazione posto in /usr/local/etc/portsnap.conf invece di /etc/portsnap.conf. Questo file di configurazione non viene creato quando viene installato il port, ma viene dato un file di configurazione di base; per copiarlo nella giusta posizione, esegui il comando seguente:
|
La prima volta che portsnap(8) viene eseguito, ha bisogno di scaricare una snapshot compressa dell’intero albero dei port in /var/db/portsnap/ (o /usr/local/portsnap/ se Portsnap è stato installato dalla collezione dei port). Dall’inizio del 2006 la sua dimensione è di circa 41 MB.
# portsnap fetch
Una volta che la snapshot compressa è stata scaricata, una copia dell’albero dei port può estratta in /usr/ports/. Questo è necessario perfino se l’albero dei port è già stato creato in quella directory (es., usando CVSup), poichè stabilisce un punto di inizio dal qualche portsnap
può determinare quale parte dell’albero dei port necessita di essere aggiornata.
# portsnap extract
Nell’installazione di default la directory /usr/ports non viene creata. Se usi FreeBSD 6.0-RELEASE, la directory dovrebbe essere creata prima di usare |
Dopo che una prima snapshot compressa dell’albero dei port è stata scaricata ed estratta in /usr/ports/, l’aggiornamento dell’albero dei port consiste in due passi: scaricando gli aggiornamenti della snapshot compressa, e usare questi per aggiornare l’albero dei port effettivo. Questi due passi possono essere specificati a portsnap
con un comando singolo.
# portsnap fetch update
Alcune versioni vecchie di
|
Al fine di evitare problemi di "affollamenti istantanei" accedendo ai server di Portsnap, portsnap fetch
non funziona da un job cron(8). Esiste invece un comando apposito portsnap cron
, che attende una durata random fino a 3600 secondi prima di scaricare gli aggiornamenti.
Inoltre, è fortemente racomandato che portsnap update
non sia eseguito da un job cron
, poichè è soggetto a causare problemi se viene avviato allo stesso tempo di compilazione o installazione di un port. Ad ogni modo, è possibile aggiornare i file INDEX dei port, e può essere fatto passando il flag -I
a portsnap
. (Ovviamente, se portsnap -I update
viene eseguito da cron
, sarà necessario eseguire successivamnte portsnap update
senza la flag -I
al fine di aggiornare il resto dell’albero.)
Aggiungendo la riga seguente in /etc/crontab, portsnap
aggiornerà la snapshot compressa e i file INDEX in /usr/ports/, e manderà una email se qualche port installato non è aggiornato:
0 3 * * * root portsnap -I cron update pkg_version -vIL=
Se l’ora di sistema non è settata all’ora locale, sostituisci |
Alcune versioni datate di |
Quando ricevi o aggiorni dei sorgenti usando cvs o CVSup, devi specificare un tag di revisione. Un tag di revisione si riferisce sia ad una particolare linea di sviluppo di FreeBSD, sia ad un specifico periodo di tempo. I primi tipi sono chiamati "tag di ramo", mentre i secondi "tag di release".
Tutti, con l’eccezione di HEAD
(che è sempre un valido tag), sono relativi all’albero src/. Gli alberi ports/, doc/, e www/ non sono ramificati.
Nome simbolico per la linea di sviluppo corrente, FreeBSD-CURRENT. È anche il tag di default se nessun tag di revisione è specificato.
In CVSup, questo tag è rappresentato dal simbolo .
.
In CVS, questo è il settaggio di default se nessun tag di revisione è stato specificato. In genere non è una buona idea aggiornare i sorgenti a CURRENT su una macchina STABLE, a meno che sai cosa stai facendo. |
La linea di sviluppo per FreeBSD-6.X, anche conosciuta come FreeBSD 6-STABLE.
Il ramo di release per FreeBSD-6.1, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-6.0, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
La linea di sviluppo per FreeBSD-5.X, anche conosciuta come FreeBSD-STABLE.
Il ramo di release per FreeBSD-5.5, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-5.4, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-5.3, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-5.2 e FreeBSD-5.2.1, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-5.1, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-5.0, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
La linea di sviluppo per FreeBSD-4.X, anche conosciuta come FreeBSD 4-STABLE.
Il ramo di release per FreeBSD-4.11, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-4.10, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-4.9, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-4.8, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-4.7, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-4.6 e FreeBSD-4.6.2, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-4.5, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-4.4, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
Il ramo di release per FreeBSD-4.3, usato solo per aggiornamenti relativi alla sicurezza e per altri fix cruciali.
La line di sviluppo per FreeBSD-3.X, anche conosciuta come 3.X-STABLE.
La linea di sviluppo per FreeBSD-2.2.X, anche conosciuta come 2.2-STABLE. Questo ramo è per la maggior parte obsoleto.
Questi tag si riferiscono a un preciso istante di tempo quando una versione di FreeBSD è stata rilasciata. Il processo di release engineering è documentato in dettaglio dai documenti Release Engineering Information e Release Process. L’albero src usa nomi di tag che iniziano con RELENG_
. Gli alberi ports e doc usano tag il cui nome inizia con RELEASE
. Infine, l’albero www non viene taggato con alcun nome particolare per le release.
FreeBSD 6.1
FreeBSD 6.0
FreeBSD 5.5
FreeBSD 5.4
FreeBSD 4.11
FreeBSD 5.3
FreeBSD 4.10
FreeBSD 5.2.1
FreeBSD 5.2
FreeBSD 4.9
FreeBSD 5.1
FreeBSD 4.8
FreeBSD 5.0
FreeBSD 4.7
FreeBSD 4.6.2
FreeBSD 4.6.1
FreeBSD 4.6
FreeBSD 4.5
FreeBSD 4.4
FreeBSD 4.3
FreeBSD 4.2
FreeBSD 4.1.1
FreeBSD 4.1
FreeBSD 4.0
FreeBSD-3.5
FreeBSD-3.4
FreeBSD-3.3
FreeBSD-3.2
FreeBSD-3.1
FreeBSD-3.0
FreeBSD-2.2.8
FreeBSD-2.2.7
FreeBSD-2.2.6
FreeBSD-2.2.5
FreeBSD-2.2.2
FreeBSD-2.2.1
FreeBSD-2.2.0
I server AFS per FreeBSD sono in esecuzione nei seguenti siti:
Il percorso dei file è: /afs/stacken.kth.se/ftp/pub/FreeBSD/
stacken.kth.se # Stacken Computer Club, KTH, Svezia 130.237.234.43 #hot.stacken.kth.se 130.237.237.230 #fishburger.stacken.kth.se 130.237.234.3 #milko.stacken.kth.se
Il maintainer ftp@stacken.kth.se
I seguenti siti rendono disponibile FreeBSD tramite il protocollo rsync. L’utility rsync lavora nello stesso modo del comando rcp(1), ma ha più opzioni e usa il protocollo rsync per aggiornamenti remoti il quale trasferisce solo le differenze tra i due set di file, e di conseguenza accelera fortemente la sincronizzazione su rete. Questo è molto utile se hai un sito mirror del server FTP di FreeBSD, o del deposito CVS. La suite rsync è disponibile per molti sistemi operativi e, su FreeBSD, puoi usare il port net/rsync o il rispettivo package.
rsync://ftp.cz.FreeBSD.org/
Collezioni disponibili:
ftp: Un mirror parziale del server FTP di FreeBSD.
FreeBSD: Un mirror completo del server FTP di FreeBSD.
rsync://grappa.unix-ag.uni-kl.de/
Collezioni disponibili:
freebsd-cvs: Il completo deposito CVS di FreeBSD.
Questa macchina fa da mirror anche per il deposito CVS dei progetti NetBSD e OpenBSD, tra gli altri.
rsync://ftp.nl.FreeBSD.org/
Collezioni disponibili:
vol/4/freebsd-core: Un completo mirror del server FTP di FreeBSD.
rsync://rsync.mirror.ac.uk/
Collezioni disponibili:
ftp.FreeBSD.org: Un completo mirror del server FTP di FreeBSD.
rsync://ftp-master.FreeBSD.org/
Questo server può essere usato solo dai siti mirror primari di FreeBSD.
Collezioni disponibili:
FreeBSD: L’archivio master del server FTP di FreeBSD.
acl: La lista master delle ACL di FreeBSD.
rsync://ftp13.FreeBSD.org/
Collezioni disponibili:
FreeBSD: Un completo mirror del server FTP di FreeBSD.
Ultima modifica: 9 marzo 2024 da Danilo G. Baio