Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

applications:cvs_server [Le 31/01/2007, 09:51]
Blackpegaz page déplacée vers nouveau modèle (http://doc.ubuntu-fr.org/cvs_server)
— (Version actuelle)
Ligne 1: Ligne 1:
-DokuWiki 
- 
-<​code>​ 
- ​Toutes version Ubuntu et autres ... 
-</​code>​ 
- 
-Rédigé par [[utilisateurs:​pitilezard|PiTiLeZarD]] 
- 
-Fortement inspiré de [[http://​www.uta.edu/​oit/​how-to/​docs/​cvs.php|ce HowTo]] mais pas une traduction exacte. 
- 
-===== Résumé ===== 
- 
-Cette page se propose de vous montrer comment installer un serveur CVS, opération qui parait simple une fois faite, mais qui à priori n'est pas si évidente. 
- 
-===== Introduction ===== 
- 
-CVS est un concept qui permet à un ensemble de développeurs de développer sur un même projet, sans se préocuper de l'​archivage ni même des modifications concurrentes (deux personnes sur le même fichier). Le principe étant assez complexe, je ne vais pas vous en détailler le fonctionnement et je vous renvoie chez [[http://​www.google.fr|google]] qui fait ça très bien. 
- 
-===== Prérequis ===== 
- 
-Avoir un système linux fonctionel. Tout est décrit à partir d'une distribution ubuntu mais fonctionne sur toutes les distributions pour peu qu'on adapte certaines choses (comme la récupération et l'​installation des paquets ...). Mais si vous êtes sous ubuntu, suivez le guide. 
- 
-Attention : Plus loin j'​utilise /​mon/​chemin/​cvs qui n'est pas un vrai répertoire et qui **doit** être accomodé à vos besoins... 
- 
- 
-===== Installation/​Configuration ===== 
- 
-==== Installations ==== 
- 
-Dans un premier temps, installons deux choses : CVS (la raison parait assez évidente) et xinetd qui va nous permettre d'​accepter les connexions venant de l'​extérieur. Je considère que si vous installez un serveur CVS, vous êtes un minimum à l'aise avec le mode console ; dans le cas contraire, faites des copier-coller,​ ça ira aussi. 
- 
-  sudo apt-get install cvs xinetd 
- 
-==== Utilisateurs et groupes ==== 
- 
-Nous allons créer un groupe cvs ainsi que les utilisateurs qui y sont associés. 
- 
-  sudo groupadd cvs 
-  sudo useradd -m -g cvs -s /​sbin/​nologin cvs 
-  sudo useradd -m -g cvs -s /​sbin/​nologin anonymous 
- 
-Ces lignes vous permettent d'​ajouter des utilisateurs associés directement au groupe cvs et sans login, c'est à dire que l'​utilisateur ne peut se logger en faisant **su anonymous** par exemple... Ajoutez de cette manière tous les utilisateurs que vous voulez. Il faut ensuite modifier un fichier de cette façon : 
- 
-  gksudo gedit /etc/group 
-  #ou pour les barbus 
-  sudo vigr 
- 
-modifiez la ligne contenant cvs: (tout en bas normalement) pour quelle soit comme ceci : 
- 
-  cvs:​x:​501:​cvs,​anonymous,​monUser1,​... 
- 
-et ajoutez tous vos utilisateurs 
- 
-==== Répertoires ==== 
- 
-Il faut que le cvs puisse déposer tous ses fichiers quelque part. Nous allons donc lui indiquer où... 
- 
-  export CVSROOT=/​mon/​chemin/​cvs 
-  mkdir $CVSROOT 
- 
-==== xinetd ==== 
- 
-Nous allons maintenant configurer xinetd afin qu'il fasse le relais entre la couche réseau et le serveur CVS en lui même. Pour cela, lancez la commande 
- 
-  gksudo gedit /​etc/​xinetd.d/​cvspserver 
- 
-et indiquez dans le fichier nouvellement créé : 
- 
-  service cvspserver 
-  { 
-    port = 2401 
-    socket_type = stream 
-    protocol = tcp 
-    wait = no 
-    user = root 
-    passenv = PATH 
-    server = /​usr/​bin/​cvs 
-    server_args = -f --allow-root=/​mon/​chemin/​cvs pserver 
-  } 
- 
-Ces lignes permettent à xinetd d'​associer une connexion entrante, à un serveur local. Dans ce cas la connexion se fait sur le port 2401 en mode TCP et le programme que xinetd appelera se trouve dans /​usr/​bin/​cvs. server_args définit les paramètres qui seront passés à la commande serveur. Les autres paramètres définissent des options de connexion, pour plus d'​information je vous suggère [[http://​www.linuxfocus.org/​Francais/​November2000/​article175.shtml|cette page]] qui en parles longuement. 
- 
-Attention : L'​option **--allow-root** doit absolument pointer vers le dossier créé dans le paragraphe précédent. 
- 
-Attention bis : Si vous utilisez une autre distribution que Ubuntu, **server** doit pointer vers l'​endroit où est placée votre commande CVS. 
- 
-Pour que ces paramètres soient pris en compte il suffit de redémarer le service de cette manière : 
- 
-  sudo /​etc/​init.d/​xinetd restart 
- 
-==== Initialisation du serveur ==== 
- 
-Une partie somme toute assez simple puisqu'​il suffit de faire : 
- 
-  sudo cvs init 
- 
-Normalement il ne se passe rien mais vous pouvez constater que dans /​mon/​chemin/​cvs le répertoire CVSROOT a été créé ... Cela dit, comme nous avons précédemment décidé que le serveur cvs était encapsulé dans un groupe s'​appellant **cvs**, il faut modifier les droits et le propriétaire des fichiers : 
- 
-  sudo chown -R cvs:cvs $CVSROOT 
-  sudo chmod -R 770 $CVSROOT 
-  sudo chmod u+s $CVSROOT 
- 
-==== Ajouter les utilisateurs CVS ==== 
- 
-Dernière étape du procéssus, l'​ajout des utilisateurs au serveur CVS. Pour l'​instant nous avons ajouté des utilisateurs au sens unix, c'est à dire que le système d'​exploitation est en mesure de les reconnaître,​ mais le serveur CVS non. Pour ce faire, il existe un fichier auquel on accède de cette manière 
- 
-  gksudo gedit $CVSROOT/​CVSROOT/​passwd & 
- 
-Le & à la fin va nous permettre de faire autre chose en même temps, sans ouvrir une autre console ... 
- 
-Le fichier est vide... Parfait nous allons le remplir. On a juste besoin d'un utilitaire pour crypter les mots de passe 
- 
-  sudo apt-get install apache2-utils 
- 
-Les mots de passe sont cryptés par cette commande : 
- 
-  sudo htpasswd -n monUser1 
- 
-On vous demande un mot de passe et une confirmation. Ne vous inquiétez pas, si vous avez saisi un utilisateur unix existant, la commande ne modifiera pas son mot de passe. A la fin, elle affiche quelque chose comme ça : 
- 
-  New password: 
-  Re-type new password: 
-  monUser1:​G2pCH9aRwVhjI 
- 
-Il suffit alors d'​ajouter au fichier (celui que nous avons ouvert avec gedit précédemment) cette ligne agrémentée de **:cvs** ce qui nous donne : 
- 
-  monUser1:​G2pCH9aRwVhjI:​cvs 
-  anonymous::​cvs 
- 
-L'​utilisateur anonyme peut, quant à lui, ne pas avoir de mot de passe (laissez vide le champ réservé au mot de passe pour ne pas le définir). Il est alors important qu'il ne puisse pas modifier le cvs. Pour cela, sauvegardez et fermez le fichier de mots de passe. Faites ​ 
- 
-  gksudo gedit $CVSROOT/​CVSROOT/​readers 
- 
-et indiquez simplement: 
- 
-  anonymous 
- 
- 
- 
-===== Conclusion ===== 
- 
-Si vous avez suivi intégralement ce tutoriel, vous avez un serveur cvs opérationel. Il vous suffit de vous y connecter de cette manière : 
- 
-  # sur une autre machine 
-  export CVSROOT=:​pserver:​monUser1@adresse-ip-machine-1:/​mon/​chemin/​cvs 
-  cvs login 
- 
-Pour une utilisation de CVS, je vous recommande d'​utiliser [[http://​www.google.fr|google]] qui propose des tutoriaux par centaines à ce sujet. 
- 
- 
- 
  
  • applications/cvs_server.1170233487.txt.gz
  • Dernière modification: Le 18/04/2011, 14:47
  • (modification externe)