Nu CVS en cvsd zijn gecompileerd, zullen we ze gaan configureren.
Voor we beginnen, raad ik je ten zeerste aan de CVS handleiding te lezen welke werd geïnstalleerd met de rest van CVS. Als de stand-alone info browser of het texinfo pakket op je systeem is geïnstalleerd, kun je deze handleiding bekijken na het achter de shellprompt intikken van de opdracht info cvs.
Plan ten eerste waar je de repository wilt hebben. Onder Debian is dit standaard /var/lib/cvs. Mijn repository bevindt zich onder de directory /cvs/root, en het bevindt zich op een eigen kleine partitie. Wat je doet is afhankelijk van wat je nodig hebt.
![]() | Zorg dat de repository een subdirectory is van een lege directory! Plaats bijvoorbeeld de repository in /var/lib/cvs/root (of wat je ook wilt als laatste directory) als je het gaat installeren in /var/lib/cvs . Dit omdat we een chroot jail voor de Pserver zullen creëeren! |
Als je eenmaal hebt gepland waar je je repository wilt plaatsen, eventueel de benodigde partities hebt aangemaakt, start je de volgende opdracht op (we veronderstellen dat het /cvs/root) zal worden:
Daarmee initialiseer je de repository en zet de benodigde CVSROOT bestanden op.
Nu we de CVSROOT hebben opgezet, moeten we de van toepassing zijnde library's en bestanden voor cvsd gaan kopiëren, wat de Pserver in de chroot jail zal draaien.
![]() | Als je cvsd vanuit een pakketbeheersysteem installeerde, zoals RPM, dan is dit wellicht reeds voor je gedaan. Ga in dat geval verder met de volgende stap. |
Gelukkig wordt met cvsd het script cvsd-buildroot geleverd, dus we hoeven al het nodige kopieerwerk niet met de hand te doen. Je moet echter wel het bestand /cvs/etc/passwd bewerken, en de entry voor "root," verwijderen, gezien we dit niet nodig hebben.
De standaardwaarden in /etc/cvsd/cvsd.conf zijn ok, maar kunnen minder wenselijk zijn. Zorg dat RootJail is ingesteld op waar de chroot jail die je bouwde zich bevindt, en de repository is de directory waar de repository is relatief aan de chroot jail. Stel maxconnections in op wat je wilt, en zorg dat de Uid en Gid zijn ingesteld op cvsd. Mocht een reeds samengesteld cvsd.conf bestand ontbreken, dan is hier die van mij:
We zijn weer terug bij het configuren van CVS, maar maak je geen zorgen, we zijn er bijna! We moeten een paar nodige bestanden bewerken om anonymous toegang mogelijk te maken. Zorg er als eerste voor dat je je niet bevindt in de CVS directory, en haal de CVSROOT module op met de opdracht checkout:
Bewerk nu het bestand READERS. Maak het aan als het zich daar niet bevindt, en voeg een regel toe met de tekst "anonymous".
![]() | Aan het einde van het bestand MOET een extra regel komen! |
Commit nu de repository met onderstaande opdracht. We gaan er hierbij van uit dat je huidige werkdirectory de directory CVSROOT is. Zo niet, dan kun je de cd stap vergeten.
Je zou nu de melding moeten krijgen waarin iets wordt aangegeven als Re-building administrative files, wat betekent dat de commit met succes is verlopen.
Een laatste stap en we zijn helemaal klaar! Start de volgende opdracht en druk gewoon op ENTER nadat je om een wachtwoord werd verzocht:
Gefeliciteerd! Je hebt nu een veilige, anonymous CVS Pserver toegang tot de repository!
Er is nog een kleine feature dat in wezen buiten het kader van deze Mini-HOWTO valt, maar wat hoe dan ook waard is te worden vermeld. Het is de mogelijkheid om de directory te wijzigen waar de Pserver lock bestanden zal plaatsen.
Normaal gesproken zal de Pserver lock bestanden in dezelfde directory plaatsen als de bestanden die je zult proberen uit te checken met de opdracht `check out', maar dit kan permissiechaos veroorzaken. Doe een stap terug naar toen we de chroot jail voor cvsd compileerden; we maakten toen ook de directory var/lock aan. Hier zullen we de lockbestanden gaan plaatsen.
Dus gebruik het volgende voorbeeld, /cvs vervangend door de lokatie van je chroot omgeving, en var door de lokatie waar de lockbestanden zullen worden geplaatst. De mijne zijn geplaatst in var/lock, en er bevindt zich niets anders onder var, dus een chown -R is veilig. Vervang tevens de cvsd gebruikers- en groepsid's door de gebruikers- en groepid's waaronder cvsd draait.
# cd /cvs # chown -R cvsd:cvsd var # chmod -R 775 var # cd # cvs -d /cvs/root checkout CVSROOT # cd CVSROOT |
Nu willen we het bestand config bewerken. Wijzig de lock dir in de directory waarin je wilt dat de locks zullen worden geplaatst, in ons geval /var/lock.
![]() | Dit is van toepassing op de Pserver ALS OOK OP DE NIET-CHROOT SSH LOGINMETHODE! Zorg dat deze directory niet alleen bestaat, maar ook dat je er naartoe kunt schrijven, relatief aan je rootdirectory. Ik heb gekozen voor /var/lock, omdat het aan die voorwaarden voldoet. |
En dat is dan dat!
| [1] | info cvs, als je de stand-alone info viewer op je systeem hebt geïnstalleerd |