FreeBSD handboek
Terug | Bijlage A. FreeBSD verkrijgen | Volgende

# A.6. CVSup gebruiken

## A.6.1. Inleiding

CVSup is een softwarepakket voor het verspreiden en bijwerken van broncodestructuren vanaf een master CVS depot op een andere server. De FreeBSD broncode wordt beheerd in een broncode depot op een centrale ontwikkelmachine in Californië. Met CVSup kunnen FreeBSD gebruikers op eenvoudige wijze hun broncode bijwerken.

CVSup gebruikt een zogenaamd pull model voor het bijwerken. In het pull-model vraagt iedere client de server om updates als die nodig zijn. De server wacht passief op een verzoek om updates van zijn clients. Alle updates worden dus op initiatief van de client gedaan. De server stuurt nooit ongevraagde updates. Gebruikers moeten de CVSup client handmatig draaien om te updaten of een `cron` taak instellen om op regelmatige basis bij te werken.

De term CVSup, op de gegeven wijze geschreven, doelt op het complete softwarepakket. De belangrijkste componenten zijn de client `cvsup`, die op de machine van een gebruiker draait, en de server `cvsupd`, die op alle FreeBSD mirrorsites draait.

In de FreeBSD documentatie en op de mailinglijsten zijn referenties aan sup te vinden. Sup was de voorloper van CVSup en diende hetzelfde doel. CVSup wordt op dezelfde manier gebruikt als sup en gebruikt zelfs bestanden met instellingen die ook te gebruiken zijn met `sup`. Sup wordt niet langer gebruikt in het FreeBSD project omdat CVSup sneller en flexibeler is.

> Opmerking: De csup applicatie is een herschreven versie van CVSup in de C taal. Het grootste voordeel ervan is dat het sneller is en dat het niet afhankelijk is van de Modula-3 taal, dus dat hoeft niet geïnstalleerd te worden als afhankelijkheid. Sterker nog de applicatie wordt standaard meegeleverd. als ervoor gekozen is om csup te gebruiken, sla dan de installatie stappen voor CVSup over en vervang de referenties naar CVSup met csup terwijl de rest van het artikel gevolgd wordt.

## A.6.2. Installatie

De meest eenvoudige wijze van installatie van CVSup is met het voorgecompileerde pakket `net/cvsup` uit de FreeBSD pakkettencollectie. Als het gewenst is, kan CVSup ook uit de broncode gebouwd worden in `net/cvsup`. De port `net/cvsup` is afhankelijk van het Modula-3 systeem en dat kan wel even duren en er is ook nogal wat schijfruimte voor nodig om het te downloaden en te bouwen.

> Opmerking: Als CVSup gebruikt gaat worden op een machine waarop geen Xorg staat, zoals een server, dan dient de port waar geen CVSup GUI bij zit geïnstalleerd te worden: `net/cvsup-without-gui`.

## A.6.3. CVSup instellingen

De werking van CVSup wordt gestuurd door een bestand met instellingen met de naam `supfile`. Er staan een aantal `supfiles` als voorbeeld in de map `/usr/share/examples/cvsup/`.

De informatie in een `supfile` beantwoordt de volgende vragen voor CVSup:

- Welke bestanden moeten ontvangen worden?

- Welke versies daarvan moeten ontvangen worden?

- Waar moeten ze vandaan komen?

- Waar moeten ze komen te staan?

- Waar moet `cvsup` zijn statusbestanden bijhouden?

In de volgende paragrafen wordt een `supfile` bestand opgebouwd door achtereenvolgens alle gestelde vragen te beantwoorden. Als eerste wordt de algemene structuur van een `supfile` beschreven.

Een `supfile` is een tekstbestand. Commentaar begint met een `#` en loopt tot het einde van de regel. Lege regels en regels die alleen commentaar bevatten worden genegeerd.

Iedere regel die overblijft slaat op een groep bestanden die ontvangen moet worden. De regel begint met de naam van een collectie, een logische groep bestanden op de server. De naam van de collectie geeft de server aan welke bestanden er gestuurd moeten worden. Na de naam van de collectie komen er geen of meer velden die gescheiden worden door witruimte. Die velden beantwoorden de hierboven gestelde vragen. Er zijn twee soorten velden: vlagvelden en waardevelden. Een vlagveld bestaat uit een alleenstaand sleutelwoord, bijvoorbeeld `delete` of `compress`. Een waardeveld begint ook met een sleutelwoord, maar het sleutelwoord wordt direct (zonder witruimte) gevolgd door `=` en een tweede woord. `release=cvs` is bijvoorbeeld een waardeveld.

In een `supfile` wordt meestal aangegeven dat er meerdere collecties ontvangen moeten worden. Het is mogelijk om een `supfile` te structureren door expliciet alle relevante velden aan te geven voor iedere collectie, maar dat maakt de regels in de `supfile` nogal lang en het is onhandig omdat de meeste velden hetzelfde zijn voor alle collecties in een `supfile`. CVSup biedt een systeem met standaardinstellingen om dit probleem te omzeilen. Regels die beginnen met de speciale pseudo-collectienaam `*default` kunnen gebruikt worden om standaarden in te stellen voor de collecties die er in de `supfile` achteraan komen. Een standaardwaarde kan voor individuele collecties overschreven worden door een andere waarde in de collectie zelf aan te geven. Standaarden kunnen ook middenin het bestand gewijzigd of aangevuld worden met extra `*default` regels.

Na deze achtergronden wordt er nu een `supfile` samengesteld voor het ontvangen en bijwerken van de hoofd broncodestructuur van FreeBSD-CURRENT.

- Welke bestanden moeten ontvangen worden?

  De bestanden die via CVSup beschikbaar zijn, zijn beschikbaar in groepen die collecties heten. De beschikbare collecties staan beschreven in de volgende paragraaf. In dit voorbeeld is het de bedoeling dat de hele hoofd broncodestructuur voor FreeBSD wordt ontvangen. Daar is één grote collectie voor: `src-all`. De eerste stap in het maken van een `supfile` is het opsommen van de gewenste collecties, één per regel (in dit geval maar één regel):

      src-all

- Welke versies daarvan moeten ontvangen worden?

  Met CVSup kan vrijwel iedere versie van de broncode die ooit heeft bestaan opgehaald worden. Dat kan omdat de cvsupd server direct vanaf het CVS depot werkt, dat alle versies bevat. Er kan aangegeven welke ontvangen moeten worden met de waardevelden `tag=` en `date=`.

  > WaarschuwingVoorzichtigheid is geboden bij het correct aangeven van velden met `tag=`. Sommige labels zijn alleen geldig voor bepaalde collecties of bestanden. Als ze incorrect worden aangeven of als er een spelfout wordt gemaakt in een label, verwijdert CVSup bestanden waarvan dat waarschijnlijk niet de bedoeling is. Het label `tag=.` dient eigenlijk alleen gebruikt te worden voor de `ports-*` collecties.

  Het veld `tag=` benoemt een symbolisch label in het depot. Er zijn twee soorten labels: revisielabels en taklabels. Een revisielabel refereert aan een specifieke revisie. De betekenis blijft altijd hetzelfde. Een taklabel refereert echter aan de laatste revisie van een gegeven ontwikkellijn op een gegeven moment. Omdat een taklabel niet refereert aan een specifieke revisie, kan het morgen iets anders betekenen dan vandaag.

  Paragraaf A.7 beschrijft de meest interessante taklabels. Als er in het instellingenbestand van CVSup een label wordt aangegeven, moet dat vooraf gegaan worden door `tag=` (`RELENG_8` zal `tag=RELENG_8` worden). Voor de Portscollectie is alleen `tag=.` relevant.

  > WaarschuwingLabels dienen exact zo ingegeven te worden als ze staan beschreven. CVSup kan geen onderscheid maken tussen geldige en ongeldige labels. Als er een spelfout in een label wordt gemaakt, doet CVSup alsof er een geldig label is ingegeven dat aan geen enkel bestand refereert. Dan zal CVSup de bestaande broncode wissen.

  Bij het aangeven van een taklabel wordt meestal de laatste versie van de bestanden voor een bepaalde ontwikkellijn ontvangen. Om een oudere versie te ontvangen kan in het veld `date=` een datum opgegeven worden. In cvsup(1) staat hoe dat werkt.

  Om bijvoorbeeld FreeBSD-CURRENT te ontvangen dient het volgende aan het begin van `supfile` toegevoegd te worden:

      *default tag=.

  Er ontstaat een belangrijk speciaal geval als er geen velden met `tag=` of `date=` worden aangegeven. In dat geval worden de eigenlijke RCS bestanden direct uit het CVS depot van de server ontvangen in plaats van dat een bepaalde versie wordt ontvangen. Ontwikkelaars geven in het algemeen de voorkeur aan deze optie. Door zelf een kopie van de broncode op hun systeem te hebben, krijgen ze de mogelijkheid om zelf door eerdere versies van bestanden te bladeren en de geschiedenis ervan te bekijken. Dit voordeel kost wel veel schijfruimte.

- Waar moeten ze vandaan komen?

  Het veld `host=` wordt gebruikt om `cvsup` aan te geven waar de updates vandaan moeten komen. Dat kan van elke CVSup mirrorsite, hoewel er wordt aangeraden een site die geografisch dichtbij ligt te kiezen. In dit voorbeeld wordt een fictieve FreeBSD distributiesite gebruikt, `cvsup99.FreeBSD.org`:

      *default host=cvsup99.FreeBSD.org

  In een werkelijke situatie dient de hostnaam gewijzigd te worden in een host die echt bestaat voordat CVSup gaat draaien. Iedere keer dat `cvsup` wordt gestart, kan er een andere host op de commandoregel opgegeven worden met de optie `-h`hostname``.

- Waar moeten ze komen te staan?

  Het veld `prefix=` geeft `cvsup` aan waar de ontvangen bestanden terecht moeten komen. In dit voorbeeld worden de bestanden direct in de hoofd broncodestructuur `/usr/src` geplaatst. De map `src` is al impliciet in de gekozen collecties, vandaar dat het onderstaande de juiste instelling is:

      *default prefix=/usr

- Waar moet `cvsup` zijn statusbestanden bijhouden?

  De CVSup client houdt statusbestanden bij in een map die base wordt genoemd. Die bestanden helpen CVSup efficiënter te werken door bij te houden welke updates al eerder zijn ontvangen. Hier wordt de standaard basemap gebruikt, `/var/db`:

      *default base=/var/db

  De bovenstaande instelling wordt standaard gebruikt als die niet wordt aangegeven in de `supfile`, dus hij is eigenlijk niet nodig.

  Als de basemap niet al bestaat, moet die gemaakt worden. De `cvsup` client weigert te draaien als de basemap niet bestaat.

- Allerlei `supfile` instellingen:

  Er is nog een regel die in een `supfile` moet staan:

      *default release=cvs delete use-rel-suffix compress

  `release=cvs` geeft de server aan dat de informatie uit het FreeBSD hoofd CVS depot moet komen. Dat is eigenlijk altijd het geval, maar er zijn mogelijkheden die buiten het bereik van dit handboek vallen.

  `delete` geeft CVSup het recht om bestanden te verwijderen. Dit moet altijd aangegeven worden zodat CVSup de broncode altijd kan bijwerken. CVSup gaat voorzichtig om met het verwijderen van bestanden waar het verantwoordelijk voor is. Extra bestanden in de structuur worden met rust gelaten.

  `use-rel-suffix` is nogal geheimzinnig. Voor de nieuwsgierigen staat er meer over in cvsup(1). Anders kan het gewoon ingesteld worden zonder erover na te denken.

  `compress` schakelt het gebruikt van gzip compressie in voor het communicatiekanaal. Als de verbinding een E1 of sneller is, hoeft er geen compressie gebruikt te worden. Anders helpt het aanzienlijk.

- Alles combinerend:

  Hieronder staat de hele `supfile` uit het voorbeeld:

      *default tag=.
      *default host=cvsup99.FreeBSD.org
      *default prefix=/usr
      *default base=/var/db
      *default release=cvs delete use-rel-suffix compress

      src-all

### A.6.3.1. Het bestand `refuse`

Zoals hierboven al is aangegeven, gebruikt CVSup een pull methode. Dat betekent eigenlijk dat er een verbinding wordt gemaakt met de CVSup server en die zegt dan: Dit kan er van mij gedownload worden..., en dan antwoordt de client met: Oké, ik wil dit en dat en zus en zo. Met de standaardinstellingen haalt de CVSup client alle bestanden die bij een collectie en het label horen dat in het bestand met de instellingen is opgegeven. Maar dat is niet altijd wenselijk, in het bijzonder als de `doc`, `ports` of `www` structuren worden gesynchroniseerd. De meeste mensen kunnen geen vier of vijf talen lezen en die hebben de taalspecifieke bestanden dus niet nodig. Als de Portscollectie met CVSup wordt opgehaald, is het mogelijk om iedere collectie apart aan te geven (bijvoorbeeld ports-astrology, ports-biology, enzovoort, in plaats van eenvoudigweg ports-all). Maar omdat de `doc` en `www` structuren geen taalspecifieke collecties hebben, moet er gebruik gemaakt worden van een van de vele mooie mogelijkheden van CVSup: het bestand `refuse`.

Het bestand `refuse` geeft CVSup in feite aan dat niet ieder bestand uit een collectie opgehaald moet worden. Het geeft dus aan dat de client bepaalde bestanden van de server moet weigeren. Het bestand `refuse` staat in (of kan gemaakt worden in) ``base`/sup/`. `base` staat ingesteld in `supfile`. De standaardlocatie voor `base` is `/var/db`. De standaardplaats voor `refuse` is dus `/var/db/sup/refuse`.

Het bestand `refuse` heeft een erg eenvoudige opmaak. Het bevat de namen van de bestanden die niet gedownload mogen worden. Als een gebruiker bijvoorbeeld geen andere talen spreekt dan Engels en Nederlands, maar de Nederlandse vertaling van de documentatie hoeft niet binnengehaald te worden, dan kan het volgende in het bestand `refuse` gezet worden:

    doc/bn_*
    doc/da_*
    doc/de_*
    doc/el_*
    doc/es_*
    doc/fr_*
    doc/hu_*
    doc/it_*
    doc/ja_*
    doc/mn_*
    doc/nl_*
    doc/no_*
    doc/pl_*
    doc/pt_*
    doc/ru_*
    doc/sr_*
    doc/tr_*
    doc/zh_*

Dit gaat zo door voor de andere talen. De volledige lijst staat in het FreeBSD CVS depot.

Met deze handige eigenschap kunnen gebruikers met langzamere verbindingen of zij die per minuut voor hun Internetverbinding betalen waardevolle tijd besparen omdat er geen bestanden meer gedownload worden die nooit gebruikt worden. Meer informatie over `refuse` bestanden en andere leuke mogelijkheden van CVSup staat in de handleiding.

## A.6.4. CVSup draaien

Nu kan het bijwerken beginnen. Het commando is best wel eenvoudig:

    # cvsup supfile

De ``supfile`` is de naam van het `supfile` bestand dat gebruikt moet worden. Aangenomen dat er X11 draait op een machine, toont `cvsup` een GUI venster met wat knoppen om de bekende acties uit te voeren. Het proces start na het klikken op de knop go.

Omdat in dit voorbeeld de werkelijke structuur in `/usr/src` wordt bijgewerkt, moet het programma als `root` uitgevoerd worden, zodat `cvsup` de rechten heeft die het nodig heeft om de bestanden bij te werken. Het is voorstelbaar dat de benodigde rechten, het net gemaakte bestand met instellingen en het voor de eerste keer draaien van een programma zorgt voor wat onrust. Daarom is het mogelijk proef te draaien zonder dat er bestanden gewijzigd worden. Dat kan door ergens een lege map te maken en een extra argument mee te geven op de commandoregel:

    # mkdir /var/tmp/dest
    # cvsup supfile /var/tmp/dest

De opgegeven map is de bestemming voor alle bestandsupdates. CVSup bekijkt wel de bestanden in `/usr/src`, maar wijzigt ze niet. Alle updates belanden in `/var/tmp/dest/usr/src`. CVSup werkt ook de statusbestanden niet bij als het op deze wijze wordt uitgevoerd. De nieuwe versies van de bestanden worden naar de aangegeven map geschreven. Als er maar leestoegang is tot `/usr/src`, hoeft een gebruiker zelfs geen `root` te zijn bij het uitvoeren van dit experiment.

Als er geen X11 draait of als het niet wenselijk is een GUI te gebruiken, dan kunnen daarvoor opties op de commandoregel meegegeven worden bij het draaien van `cvsup`:

    # cvsup -g -L 2 supfile

De optie `-g` geeft CVSup aan dat de GUI niet gebruikt hoeft te worden. Dit gebeurt automatisch als X11 niet draait, maar anders moet het aangegeven worden.

De optie `-L 2` geeft CVSup aan dat details getoond moeten worden over alle bestanden die bijgewerkt worden. Er zijn drie niveaus van uitvoerigheid, van `-L 0` tot `-L 2`. Standaard is het 0, wat betekent dat er geen enkel bericht wordt getoond, met uitzondering van foutmeldingen.

Er zijn nog veel andere opties beschikbaar. Met `cvsup -H` wordt een lijst met korte uitleg getoond. Beschrijvingen met meer details staan in de handleiding.

Als het bijwerken op de gewenste manier loopt, kan het regulier draaien van CVSup met cron(8) ingesteld worden. Natuurlijk hoort CVSup zonder GUI te draaien als het programma vanuit de cron(8) draait.

## A.6.5. CVSup bestandscollecties

De via CVSup beschikbare bestandscollecties zijn hiërarchisch georganiseerd. Er zijn een paar grote collecties en die zijn opgedeeld in kleinere subcollecties. Het ontvangen van een collectie is hetzelfde als het ontvangen van alle subcollecties. De hiërarchische relatie tussen de collecties wordt hieronder aangegeven door het niveau van inspringen.

De meest gebruikte collecties zijn `src-all` en `ports-all`. De andere collecties worden door kleine groepen mensen gebruikt voor bijzondere doeleinden en sommige mirrorsites hebben ze niet allemaal.

`cvs-all release=cvs`

  Het FreeBSD CVS hoofddepot, inclusief de cryptografische code.

  `distrib release=cvs`

    Bestanden die betrekking hebben op het verspreiden en spiegelen van FreeBSD.

  `doc-all release=cvs`

    Broncode voor het FreeBSD Handboek en andere documentatie, zonder de bestanden voor de FreeBSD website.

  `ports-all release=cvs`

    De FreeBSD Portscollectie.

    > Belangrijk: Als `ports-all` (het complete portssysteem) niet bijgewerkt hoeft te worden, maar enkele van de onderstaande subcollecties, dan moet altijd ook de `ports-base` subcollectie bijgewerkt worden! Als er iets wijzigt in de infrastructuur van de ports waar `ports-base` voor staat, is het vrijwel zeker dat die wijzigingen heel snel door echte ports gebruikt gaan worden. Dus als alleen de echte ports bijgewerkt worden en als die gebruik maken van nieuwe mogelijkheden, dan is de kans groot dat het bouwen daarvan foutloopt met een vage foutmelding. Het eerste dat gedaan moeten worden is ervoor zorgen dat de `ports-base` subcollectie is bijgewerkt.

    > Belangrijk: Bij het zelf bouwen van een lokale kopie van `ports/INDEX` moet `ports-all` geaccepteerd worden (de hele port structuur). Het bouwen van `ports/INDEX` met een gedeeltelijke structuur wordt niet ondersteund. Zie ook de FAQ.

    `ports-accessibility release=cvs`

      Software voor minder valide gebruikers.

    `ports-arabic release=cvs`

      Ondersteuning voor de Arabische taal.

    `ports-archivers release=cvs`

      Archiveringshulpmiddelen.

    `ports-astro release=cvs`

      Astronomie ports.

    `ports-audio release=cvs`

      Geluidsondersteuning.

    `ports-base release=cvs`

      De infrastructuur van de Portscollectie. Bestanden uit de mappen `Mk/` en `Tools/` van `/usr/ports`.

      > Opmerking: Zie ook de belangrijke waarschuwing hierboven: deze subcollectie dient altijd bijgewerkt te worden als er een onderdeel van de FreeBSD Portscollectie wordt bijgewerkt!

    `ports-benchmarks release=cvs`

      Benchmarks.

    `ports-biology release=cvs`

      Biologie.

    `ports-cad release=cvs`

      Computer aided design programma's.

    `ports-chinese release=cvs`

      Ondersteuning voor de Chinese taal.

    `ports-comms release=cvs`

      Communicatiesoftware.

    `ports-converters release=cvs`

      Karaktercode omzetters.

    `ports-databases release=cvs`

      Databases.

    `ports-deskutils release=cvs`

      Dingen die op een bureaublad stonden voordat computers waren uitgevonden.

    `ports-devel release=cvs`

      Ontwikkelhulpmiddelen.

    `ports-dns release=cvs`

      DNS gerelateerde software.

    `ports-editors release=cvs`

      Editors.

    `ports-emulators release=cvs`

      Emulatoren voor besturingssystemen.

    `ports-finance release=cvs`

      Monetaire, financiële en gerelateerde applicaties.

    `ports-ftp release=cvs`

      FTP client en server programma's.

    `ports-games release=cvs`

      Spelletjes.

    `ports-german release=cvs`

      Ondersteuning voor de Duitse taal.

    `ports-graphics release=cvs`

      Grafische programma's.

    `ports-hebrew release=cvs`

      Ondersteuning voor de Hebreeuwse taal.

    `ports-hungarian release=cvs`

      Ondersteuning voor de Hongaarse taal.

    `ports-irc release=cvs`

      Internet Relay Chat hulpprogramma's.

    `ports-japanese release=cvs`

      Ondersteuning voor de Japanse taal.

    `ports-java release=cvs`

      Java" programma's.

    `ports-korean release=cvs`

      Ondersteuning voor de Koreaanse taal.

    `ports-lang release=cvs`

      Programmeertalen.

    `ports-mail release=cvs`

      Mailsoftware.

    `ports-math release=cvs`

      Numerieke rekensoftware.

    `ports-misc release=cvs`

      Verschillende programma's.

    `ports-multimedia release=cvs`

      Multimedia software.

    `ports-net release=cvs`

      Netwerksoftware.

    `ports-net-im release=cvs`

      Berichtenuitwisseling.

    `ports-net-mgmt release=cvs`

      Netwerkbeheersoftware.

    `ports-net-p2p release=cvs`

      Peer to Peer Netwerken

    `ports-news release=cvs`

      USENET news software.

    `ports-palm release=cvs`

      Softwareondersteuning voor Palm" apparatuur.

    `ports-polish release=cvs`

      Ondersteuning voor de Poolse taal.

    `ports-ports-mgmt release=cvs`

      Programma's om ports en pakketten te beheren.

    `ports-portuguese release=cvs`

      Ondersteuning voor de Portugese taal.

    `ports-print release=cvs`

      Printsoftware.

    `ports-russian release=cvs`

      Ondersteuning voor de Russische taal.

    `ports-science release=cvs`

      Wetenschappelijk.

    `ports-security release=cvs`

      Beveiligingsprogramma's.

    `ports-shells release=cvs`

      Commandoregelshells.

    `ports-sysutils release=cvs`

      Systeemprogramma's.

    `ports-textproc release=cvs`

      Tekstverwerkingsprogramma's (zonder desktop publishing).

    `ports-ukrainian release=cvs`

      Ondersteuning voor de Oekraïense taal.

    `ports-vietnamese release=cvs`

      Ondersteuning voor de Viëtnamese taal.

    `ports-www release=cvs`

      Software gerelateerd aan het Wereldwijde Web.

    `ports-x11 release=cvs`

      Ports voor het X windowsysteem.

    `ports-x11-clocks release=cvs`

      X11 klokken.

    `ports-x11-drivers release=cvs`

      X11-stuurprogramma's

    `ports-x11-fm release=cvs`

      X11 bestandsbeheerders.

    `ports-x11-fonts release=cvs`

      X11 lettertypen en lettertypeprogramma's.

    `ports-x11-toolkits release=cvs`

      X11 hulpprogramma's.

    `ports-x11-servers release=cvs`

      X11 servers.

    `ports-x11-themes`

      X11 thema's.

    `ports-x11-wm release=cvs`

      X11 vensterbeheerprogramma's.

  `projects-all release=cvs`

    Broncode's voor de FreeBSD projecten repository.

  `src-all release=cvs`

    De hoofdbroncode van FreeBSD, inclusief de cryptografische code.

    `src-base release=cvs`

      Verschillende bestanden bovenin de `/usr/src` structuur.

    `src-bin release=cvs`

      Gebruikersprogramma's die wellicht nodig zijn in single-user modus (`/usr/src/bin`).

    `src-cddl release=cvs`

      Programma's en bibliotheken die uitgegeven zijn onder de CDDL licentie (`/usr/src/cddl`).

    `src-contrib release=cvs`

      Programma's en bibliotheken van buiten het FreeBSD project die vrijwel ongewijzigd gebruikt worden (`/usr/src/contrib`).

    `src-crypto release=cvs`

      Cryptografische programma's en bibliotheken van buiten het FreeBSD project, die vrijwel ongewijzigd worden gebruikt (`/usr/src/crypto`).

    `src-eBones release=cvs`

      Kerberos en DES (`/usr/src/eBones`). Niet gebruikt in recente uitgaves van FreeBSD.

    `src-etc release=cvs`

      Bestanden met systeeminstellingen (`/usr/src/etc`).

    `src-games release=cvs`

      Spelletjes (`/usr/src/games`).

    `src-gnu release=cvs`

      Programma's die onder de GNU Public License vallen (`/usr/src/gnu`).

    `src-include release=cvs`

      Headerbestanden (`/usr/src/include`).

    `src-kerberos5 release=cvs`

      Kerberos5 beveiligingspakket (`/usr/src/kerberos5`).

    `src-kerberosIV release=cvs`

      KerberosIV beveiligingspakket (`/usr/src/kerberosIV`).

    `src-lib release=cvs`

      Bibliotheken (`/usr/src/lib`).

    `src-libexec release=cvs`

      Systeemprogramma's die meestal door andere programma's worden uitgevoerd (`/usr/src/libexec`).

    `src-release release=cvs`

      Bestanden die nodig zijn voor het maken van een FreeBSD release (`/usr/src/release`).

    `src-release release=cvs`

      Statisch gelinkte programma's voor nood onderhoud, zie rescue(8) (`/usr/src/rescue`).

    `src-sbin release=cvs`

      Systeemprogramma's voor single-user modus (`/usr/src/sbin`).

    `src-secure release=cvs`

      Cryptografische bibliotheken en commando's (`/usr/src/secure`).

    `src-share release=cvs`

      Bestanden die tussen meerdere systemen gedeeld kunnen worden (`/usr/src/share`).

    `src-sys release=cvs`

      De kernel (`/usr/src/sys`).

    `src-sys-crypto release=cvs`

      Cryptografische kernelcode (`/usr/src/sys/crypto`).

    `src-tools release=cvs`

      Verschillende hulpprogramma's voor het onderhoud van FreeBSD (`/usr/src/tools`).

    `src-usrbin release=cvs`

      Gebruikersprogramma's (`/usr/src/usr.bin`).

    `src-usrsbin release=cvs`

      Systeemprogramma's (`/usr/src/usr.sbin`).

  `www release=cvs`

    De broncode voor de FreeBSD website.

`distrib release=self`

  De instellingenbestanden van de CVSup server zelf. Gebruikt door de CVSup mirrorsites.

`gnats release=current`

  De GNATS bug-tracking database.

`mail-archive release=current`

  FreeBSD mailinglijstarchief.

`www release=current`

  De voorbewerkte FreeBSD websitebestanden (niet de broncode). Gebruikt door WWW mirrorsites.

## A.6.6. Voor meer informatie

De CVSup FAQ en andere informatie over CVSup is te vinden op De CVSup Homepage.

De meeste FreeBSD-gerelateerde discussie over CVSup vindt plaats op de FreeBSD technische discussie mailinglijst. Daar worden nieuwe versies van de software aangekondigd, net als op de FreeBSD aankondigingen mailinglijst.

Voor vragen en foutrapporten moet een kijkje genomen worden op de CVSup FAQ

## A.6.7. CVSup sites

CVSup servers voor FreeBSD draaien op de onderstaande sites.

Centrale servers, Primaire spiegelsites, Argentinië, Armenië, Australië, Brazilië, Bulgarije, Canada, China, Costa Rica, Denemarken, Duitsland, Estland, Filipijnen, Finland, Frankrijk, Griekenland, Hongarije, Ierland, Ijsland, Israël, Italië, Japan, Kirghizistan, Koeweit, Korea, Letland, Litouwen, Nederland, Nieuw-Zeeland, Noorwegen, Oekraïne, Oostenrijk, Polen, Portugal, Roemenië, Rusland, San Marino, Singapore, Slovenië, Slowakije, Spanje, Taiwan, Thailand, Tsjechië, Turkije, Verenigd Koninkrijk, Verenigde Staten van Amerika, Zuid-Afrika, Zweden, Zwitserland.

(bijgewerkt op: 2012/01/30 18:59:13 UTC)

Centrale servers

  - cvsup.FreeBSD.org

Primaire spiegelsites

  - cvsup1.FreeBSD.org

  - cvsup2.FreeBSD.org

  - cvsup3.FreeBSD.org

  - cvsup4.FreeBSD.org

  - cvsup5.FreeBSD.org

  - cvsup6.FreeBSD.org

  - cvsup7.FreeBSD.org

  - cvsup8.FreeBSD.org

  - cvsup9.FreeBSD.org

  - cvsup10.FreeBSD.org

  - cvsup11.FreeBSD.org

  - cvsup12.FreeBSD.org

  - cvsup13.FreeBSD.org

  - cvsup14.FreeBSD.org

  - cvsup15.FreeBSD.org

  - cvsup16.FreeBSD.org

  - cvsup18.FreeBSD.org

Argentinië

  - cvsup.ar.FreeBSD.org

Armenië

  - cvsup1.am.FreeBSD.org

Australië

  - cvsup.au.FreeBSD.org

Brazilië

  - cvsup.br.FreeBSD.org

  - cvsup2.br.FreeBSD.org

  - cvsup3.br.FreeBSD.org

  - cvsup4.br.FreeBSD.org

  - cvsup5.br.FreeBSD.org

Bulgarije

  - cvsup.bg.FreeBSD.org

Canada

  - cvsup1.ca.FreeBSD.org

China

  - cvsup.cn.FreeBSD.org

  - cvsup2.cn.FreeBSD.org

Costa Rica

  - cvsup1.cr.FreeBSD.org

Denemarken

  - cvsup.dk.FreeBSD.org

  - cvsup2.dk.FreeBSD.org

Duitsland

  - cvsup.de.FreeBSD.org

  - cvsup2.de.FreeBSD.org

  - cvsup3.de.FreeBSD.org

  - cvsup4.de.FreeBSD.org

  - cvsup5.de.FreeBSD.org

  - cvsup6.de.FreeBSD.org

  - cvsup7.de.FreeBSD.org

  - cvsup8.de.FreeBSD.org

Estland

  - cvsup.ee.FreeBSD.org

Filipijnen

  - cvsup1.ph.FreeBSD.org

Finland

  - cvsup.fi.FreeBSD.org

  - cvsup2.fi.FreeBSD.org

Frankrijk

  - cvsup.fr.FreeBSD.org

  - cvsup1.fr.FreeBSD.org

  - cvsup2.fr.FreeBSD.org

  - cvsup3.fr.FreeBSD.org

  - cvsup4.fr.FreeBSD.org

  - cvsup5.fr.FreeBSD.org

  - cvsup8.fr.FreeBSD.org

Griekenland

  - cvsup.gr.FreeBSD.org

  - cvsup2.gr.FreeBSD.org

Hongarije

  - cvsup.hu.FreeBSD.org

Ierland

  - cvsup.ie.FreeBSD.org

  - cvsup2.ie.FreeBSD.org

Ijsland

  - cvsup.is.FreeBSD.org

Israël

  - cvsup.il.FreeBSD.org

Italië

  - cvsup.it.FreeBSD.org

Japan

  - cvsup.jp.FreeBSD.org

  - cvsup2.jp.FreeBSD.org

  - cvsup3.jp.FreeBSD.org

  - cvsup4.jp.FreeBSD.org

  - cvsup5.jp.FreeBSD.org

  - cvsup6.jp.FreeBSD.org

Kirghizistan

  - cvsup.kg.FreeBSD.org

Koeweit

  - cvsup1.kw.FreeBSD.org

Korea

  - cvsup.kr.FreeBSD.org

  - cvsup2.kr.FreeBSD.org

  - cvsup3.kr.FreeBSD.org

Letland

  - cvsup.lv.FreeBSD.org

  - cvsup2.lv.FreeBSD.org

Litouwen

  - cvsup.lt.FreeBSD.org

  - cvsup2.lt.FreeBSD.org

  - cvsup3.lt.FreeBSD.org

Nederland

  - cvsup.nl.FreeBSD.org

  - cvsup2.nl.FreeBSD.org

  - cvsup3.nl.FreeBSD.org

Nieuw-Zeeland

  - cvsup.nz.FreeBSD.org

Noorwegen

  - cvsup.no.FreeBSD.org

Oekraïne

  - cvsup2.ua.FreeBSD.org

  - cvsup3.ua.FreeBSD.org

  - cvsup5.ua.FreeBSD.org

  - cvsup6.ua.FreeBSD.org

  - cvsup7.ua.FreeBSD.org

Oostenrijk

  - cvsup.at.FreeBSD.org

Polen

  - cvsup.pl.FreeBSD.org

  - cvsup2.pl.FreeBSD.org

  - cvsup3.pl.FreeBSD.org

Portugal

  - cvsup.pt.FreeBSD.org

  - cvsup2.pt.FreeBSD.org

  - cvsup3.pt.FreeBSD.org

Roemenië

  - cvsup.ro.FreeBSD.org

  - cvsup1.ro.FreeBSD.org

  - cvsup2.ro.FreeBSD.org

  - cvsup3.ro.FreeBSD.org

Rusland

  - cvsup.ru.FreeBSD.org

  - cvsup2.ru.FreeBSD.org

  - cvsup3.ru.FreeBSD.org

  - cvsup4.ru.FreeBSD.org

  - cvsup5.ru.FreeBSD.org

  - cvsup6.ru.FreeBSD.org

  - cvsup7.ru.FreeBSD.org

San Marino

  - cvsup.sm.FreeBSD.org

Singapore

  - cvsup.sg.FreeBSD.org

Slovenië

  - cvsup.si.FreeBSD.org

  - cvsup2.si.FreeBSD.org

Slowakije

  - cvsup.sk.FreeBSD.org

Spanje

  - cvsup.es.FreeBSD.org

  - cvsup2.es.FreeBSD.org

  - cvsup3.es.FreeBSD.org

Taiwan

  - cvsup.tw.FreeBSD.org

  - cvsup3.tw.FreeBSD.org

  - cvsup4.tw.FreeBSD.org

  - cvsup5.tw.FreeBSD.org

  - cvsup6.tw.FreeBSD.org

  - cvsup7.tw.FreeBSD.org

  - cvsup8.tw.FreeBSD.org

  - cvsup9.tw.FreeBSD.org

  - cvsup10.tw.FreeBSD.org

  - cvsup11.tw.FreeBSD.org

  - cvsup12.tw.FreeBSD.org

  - cvsup13.tw.FreeBSD.org

  - cvsup14.tw.FreeBSD.org

Thailand

  - cvsup.th.FreeBSD.org

Tsjechië

  - cvsup.cz.FreeBSD.org

Turkije

  - cvsup.tr.FreeBSD.org

  - cvsup2.tr.FreeBSD.org

Verenigd Koninkrijk

  - cvsup.uk.FreeBSD.org

  - cvsup2.uk.FreeBSD.org

  - cvsup3.uk.FreeBSD.org

  - cvsup4.uk.FreeBSD.org

Verenigde Staten van Amerika

  - cvsup1.us.FreeBSD.org

  - cvsup2.us.FreeBSD.org

  - cvsup3.us.FreeBSD.org

  - cvsup4.us.FreeBSD.org

  - cvsup5.us.FreeBSD.org

  - cvsup6.us.FreeBSD.org

  - cvsup7.us.FreeBSD.org

  - cvsup8.us.FreeBSD.org

  - cvsup9.us.FreeBSD.org

  - cvsup10.us.FreeBSD.org

  - cvsup11.us.FreeBSD.org

  - cvsup12.us.FreeBSD.org

  - cvsup13.us.FreeBSD.org

  - cvsup14.us.FreeBSD.org

  - cvsup15.us.FreeBSD.org

  - cvsup16.us.FreeBSD.org

  - cvsup18.us.FreeBSD.org

Zuid-Afrika

  - cvsup.za.FreeBSD.org

  - cvsup2.za.FreeBSD.org

Zweden

  - cvsup.se.FreeBSD.org

  - cvsup2.se.FreeBSD.org

Zwitserland

  - cvsup.ch.FreeBSD.org

Terug | Begin | Volgende
CTM gebruiken | Omhoog | CVS labels