Installation serveur CVS
1.05.2006
Installation
Première chose à faire: installer le paquet du serveur CVS:
# apt-get install cvsd
Pour les clients, c'est le paquet cvs qu'il faut installer.
Préparation du jailroot
Maintenant, choisissez un emplacement pour le jailroot du serveur CVS. Ce jailroot contiendra le repository (le dossier ou sont stockées les sources de l'application que vous developpez), ainsi qu'un ensemble minimal de fichiers de configuration utilisés par le daemon cvsd. L'emplacement le plus logique pour ce jailroot est /var/lib/cvsd/.
Pour préparer ce jailroot:
# mkdir /var/lib/cvsd
# cvs -d /var/lib/cvsd/root init
# cvsd-buildroot /var/lib/cvsd
# cd /var/lib/cvsd
# mkdir -p var/lock
Configuration de cvsd
Il nous faut maintenant configurer cvsd de la façon suivante:
# nano -w /etc/cvsd/cvsd.conf
Recherchez et remplacez les lignes suivantes:
# Utilisateur et groupe pour le daemon cvsd
Uid cvsd
Gid cvsd
# Emplacement du rootjail
RootJail /var/lib/cvsd
# Port d'écoute (2401 par défaut)
Listen * 2401 # or whatever port you'd like it to listen on, up to you
# Emplacement du repository (dans le jailroot)
# ici il s'agit du répertoire /var/lib/cvsd/repository
Repos /root
Dans le cas où on veut ajouter plusieurs répertoire "jailroot", il faut procéder comme suit:
Repos /dossier1
Repos /dossier2
Veillez bien à ce qu'il y ai un retour charriot à la fin du fichier. C'est fini pour ce fichier de configuration.
Création des utilisateurs
Il ne reste plus qu'à créer des utilisateurs pour votre serveur:
# cvsd-passwd /var/lib/cvsd/root NOM_UTILISATEUR
On vous demandera un mot de passe. Pour autoriser l'accès à votre serveur en anonyme, créez simplement un utilisateur anonymous, et laissez un mot de passe vide.
Il faut maitenant donner des droits de lecture ou d'écriture à vos utilisateurs. Cela se fait avec les fichiers /var/lib/cvsd/root/CVSROOT/readers et /var/lib/cvsd/root/CVSROOT/writers
Rajoutez les utilisateurs à qui vous voulez donner des droits de lecture seulement dans le fichier readers
# touch /var/lib/cvsd/root/CVSROOT/readers
# chown cvsd:cvsd /var/lib/cvsd/root/CVSROOT/readers
# nano /var/lib/cvsd/root/CVSROOT/readers
un utilisateur par ligne, veillez bien à ce qu'il y ai un retour charriot à la fin du fichier.
Rajoutez les utilsateurs à qui voulez donner les droits d'écriture et de lecture dans le fichier writers. Il n'est pas possible de donner les droits d'écriture seulement.
Exemple de /var/lib/cvsd/root/CVSROOT/readers
guest
anonymous
john
Lancement du serveur
Avant de lancer le serveur CVS, n'oubliez pas de changer les permissions de fichiers dans votre jailroot (TRES IMPORTANT !):
# chown -R cvsd:cvsd /var/lib/cvsd
# chmod -R 775 /var/lib/cvsd/var
Une fois cela fait, vous pouvez enfin lancer le serveur CVS:
# /etc/init.d/cvsd start
et le rajouter au démarrage si vous voulez:
# rc-update add cvsd default
Test en local
1. Initialisez la variable globale CVSROOT
# export CVSROOT=:pserver:NOM_USER@localhost:/root
2. Authentifiez vous sur le serveur
# cvs login
En cas de problème référez vous aux Notes plus bas.
3. Importez ou synchronisez quelques fichiers. (voir man cvs)
4. Déconnectez vous
# cvs logout
Notes
N'oubliez pas d'ouvrir le port 2401 sur votre firewall.
Le paquet cvsd-1.0.2 a un problème avec la commande cvsd-buildroot qui ne copie pas toutes les librairies nécessaires dans le jailroot. Si vous rencontrez cette erreur:
cvs [login aborted]: reading from server: Connection reset by peer
Utilisez les commandes suivantes pour résoudre le problème:
# cp /lib/ld-* /var/lib/cvsd/lib/
# cp /lib/libdl.so.2 /var/lib/cvsd/lib/
Création des fichiers .cvsroot
Dans le dossier home de chaque utilisateur se connectant au serveur CVS, il faut créer un fichier $HOME/.cvsroot comme suit:
# touch $HOME/.cvspass
# chmod 700 $HOME/.cvspass

<< Home