Accueil Articles Divers Installer SVN sur un serveur mutualisé de 1and1
ADSL AH4021 AH4222 Ansys broadcom Classe CodeGear Cpp CppBuilder Delphi driver DSL Ecran embarcadero free Freeware Gratuit linux Modem neufbox OpenSource OpenWRT Property TECOM Wrapper

+ Tous les mots clés

Installer SVN sur un serveur mutualisé de 1and1 PDF Imprimer Envoyer
Note des utilisateurs: / 6
MauvaisTrès bien 
Lundi, 13 Juillet 2009 21:56

Comment installer un dépôt SVN sur un serveur linux mutualisé de 1and1

Il est possible d'installer un svn sur un hébergement linux mutualisé fourni par 1and1. Pour cela, il vous faut un accès SSH sur votre serveur.

Mais cela est limité. En effet, seul vous pourrez y accéder par SSH puisque l'on l'on a un seul accès SSH sur ce type de serveur. Mais associé à un système de type Trac, on arrive à un système utilisable.

Ne vous lancez pas dans ces manipulations si vous ne savez pas ce que vous faites, vous pouvez bloquer votre accès SSH assez facilement. 

Ce site est le site sur lequel j'ai trouvé les instructions nécessaires pour le faire.

Déjà, il faut se connecter au serveur en SSH. On peut le faire via PUTTY.

Puis, on créé un répertoire temporaire pour télécharger et décompresser tous les fichiers avec les commandes suivantes :
mkdir tmp
cd tmp
wget http://subversion.tigris.org/downloads/subversion-1.6.3.tar.gz
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.3.tar.gz
tar -xzvf subversion-1.6.3.tar.gz
tar -xzvf subversion-deps-1.6.3.tar.gz
cd subversion-1.6.3
mkdir ~/opt

Il faut ensuite configurer svn pour s'installer dans le dossier opt de vore hébergement. Il faut remplacer les x par ce qui convient pour votre site. On l'obtient par la commande pwd.
./configure --prefix=/xxxxxx/homepages/xx/xxxxxxxxx/htdocs/opt/svn
make
make install

Ensuite, pour utiliser votre svn, il faut encore l'ajouter dans votre path :
echo 'export PATH=~/opt/svn/bin:$PATH' >> ~/.bash_profile


Il suffit de se déconnecter et se reconnecter pour vérifier le bon fonctionnement en vérifiant la version. Si la version est inférieur à celle que vous avez installer, c'est que l'on pointe toujours sur le svn installé de base sur le serveur.
svn --version

On supprime les fichiers temporaires :
rm ~/tmp/subversion* -r

Puis, on créé le dossier de dépôt :
svnadmin create ~/opt/svn/repos

Au final, les limitations sont nombreuses et l'installation d'un trac est aussi possible. C'est une tâche longue et fastidieuse. Vous pouvez prendre un serveur dédié pour lever toutes les limitations ou héberger votre svn ailleurs. Vous trouverez facilement une liste d'hébergeur pour les projets open source. Pour les autres projets, vous avez ceux de la liste ci-dessous :

http://www.prosvn.org/page_products.php
http://www.xp-dev.com/
http://github.com/

 

 

1and1 | Putty | SSH | svn | trac

Commentaires

avatar BN
0
 
 
Bonjour,

Merci beaucoup pour ce billet, c'est exactement ce que je cherchais. J'ai suivi avec intérêt toute ta démarche, et j'ai aussi réussi à installer svn sur mon serveur mutualisé de 1&1. Cela dit, j'aimerai pouvoir accéder à ce dépôt sur mon ordi à l'aide de TortoiseSVN, et la ça coince, lorsque j'essaie de Checkout mon repository http://monsite.com/opt/svn/monrepository il me répond : Repository moved permanently to 'http://la-bnbox.fr/opt/svn/Flambclair-v2/';
En lisant l'article dont tu t'es inspiré, j'ai vu qu'il parlait de SVN+SSH, je n'ai pas tout compris ce passage là, mais j'en déduis que j'ai du zappé quelque chose. Y a-t-il quelque chose de particulier à faire pour accèder au repository à partir de TortoiseSVN ? (lui donner les accès de mon compte 1&1 par exemple ?

Merci d'avance !
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar BN
0
 
 
Re-bonjour,

Comme quoi parfois il faut chercher par soit-même. J'ai avancé dans la résolution de mon problème. Pour me connecter à mon repository, j'utilise désormais l'url suivante dans TortoiseSVN : svn+ssh://login@hostkunden/.../svn/repos, TortoiseSVN me demande alors de rentrer mon mot de passe, ce que je fais. Puis il me le redemande, je m'exécute encore, et finalement, il m'affiche l'erreur suivante : Expected FS format '2'; found format '4'
J'avoue que je reste assez pantois... Ya-t-il encore quelque chose que j'aurai oublié ?

Merci d'avance !
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar gandf
0
 
 
En fait, j'ai abandonné ce système. En effet, il faut ssh pour se connecter au svn et l'on ne dispose que d'un seul accès ssh. De ce fait, une seule personne à la fois peut y accéder et si on donne l'accès ssh a d'autres personnes, ils auront accès à tout votre site. Bonjour la faille de sécurité.

On peut ensuite utiliser une interface web pour y accéder, mais si on ne peut pas le faire avec un svn à plusieurs utilisateurs, cela ne sert à rien. Il vaut mieux mettre le svn sur un autre serveur (ton pc de développement, un serveur, un serveur mutualisé, sur sourceforge, sur google code, ...)

Fait attention à ce que tu fais en ssh, tu peux planter très facilement ton site.

J'ai pu utiliser svn mais je l'ai abandonné à cause de cette limitation. Si ton svn ne fonctionne pas, c'est qu'il y a une commande que tu as mal appliquée.

Je ne peux pas te dépanner d'un coup, cela fait plusieurs mois que je l'ai fait et je ne me souvient plus des détails.

Ma méthode peut aussi ne plus fonctionner en fonction des mises à jour des serveurs et des changements qu'ils ont peut-être fait concernant la sécurité.

Cela n'a pas fonctionné du 1er coup, j'ai fait de nombreux essais avant d'y arriver.
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar BN
0
 
 
Merci de ta réponse. En fait j'avais tout bien fait comme il fallait, et ça fonctionnait. C'est juste que j'avais oublié que j'étais sur une connexion un peu particulière : pour pouvoir accèder à un ssh extérieur à mon réseau, il fallait d'abord que je me connecte à une machine du réseau en particulier (qui elle est ouverte vers l'extérieur). Il m'aurait donc fallu un svn+ssh+ssh, mais de ce que j'ai pu voir ça n'existe pas ^^
En tout cas, je me suis débrouillé autrement.

Merci encore.
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar Pawel
0
 
 
Merci pour cet article. Tout marche à merveille ^^

Pour ton problème, BN, la version du svn installé sur le serveur est trop antérieure à celle que tu utilises (1.6.3 dans cet exemple). Il suffit d'utiliser l'option --pre-1.5-compatible dans la commande svnadmin create :
svnadmin create --pre-1.5-compatible ~/opt/svn/repos
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar Pyro
0
 
 
Salut les gas, j'ai effectué la manip décrite ici, tout s'est plutôt bien passé mais lorsque je me connecte en ssh avec tortoise il me dit qu'il n'y a aucun dépot à l'adresse que je lui indique. Alors que si. quelqu'un à une idée du problème?
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar gandf
0
 
 
Pour configurer SVN après l'avoir installé, le mieux est d'utiliser le MAN de Linux ou la doc de SVN. En effet, une fois installé, il ne reste plus qu'à créer un dépôt et à indiquer les droits des utilisateurs sur ce dépôt.
Peut-être que l'installation de SVN à légèrement changer depuis cet article.
La configuration des serveurs de 1and1 à surement changer car ils font des mises de leur système de temps en temps.
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar Pyro
0
 
 
ok, merci beaucoup par ta réponse plus que rapide.
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar Pyro
0
 
 
C'est re moi, j'ai changé ma manière d’appeler le serveur par ssh et j'ai désormais la même erreur qu'avait BN:
=> "Expected FS format '2'; found format '4'"

Ce que je comprend pas c'est si pour faire mon checkout ou mon importe je dois utiliser l'url

svn+ssh://MONIDENTIFIANT@MONSERVER/XXXXX/homepages/XX/XXXXXXX/htdocs/opt/svn/repos

ou alors simplement

svn+ssh://MONIDENTIFIANT@MONSERVER/opt/svn/repos

car la première me donne l'erreur que je viens de citer et la deuxième 'No repository found in..."
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar Pyro
0
 
 
la solution donnée par Pawel ma permis de faire fonctionner le chemilblik merci encore pour ton aide.
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
avatar Tom
-1
 
 
Je viens de tester ProSVN et c'est super simple et rapide. Merci.
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Annuler
Nom *
Code   
Module de commentaire fait par www.chronoengine.com
Soumettre ce commentaire
Mise à jour le Mardi, 14 Juillet 2009 14:27
 
Copyright © 2017 Flyonsoft. Tous droits réservés.
Vous pouvez réutiliser les codes sources fourni sur ce site mais vous devez y mettre un lien vers la page du code ou à défaut sur la page www.flyonsoft.com.