GNU/Linux >> Tutoriels Linux >  >> Rocky Linux

Comment installer Apache Subversion (SVN) sur RHEL 8 / Rocky Linux 8

Apache Subversion est également connu sous le nom de SVN, il s'agit d'un programme de contrôle de version et de révision open source qui aide à stocker les versions de fichiers historiques présentes et passées telles que les documents, les codes source et le Web. pages. SVN est sous licence Apache.

Dans ce didacticiel, nous apprendrons comment installer et configurer SVN sur RHEL 8 et Rocky Linux 8. Ici, les utilisateurs authentifiés seront autorisés à effectuer des opérations d'enregistrement et de paiement sur le référentiel SVN .

Étape 1) Installer SVN et Apache

Les packages SVN et Apache (http) sont disponibles dans les référentiels de packages par défaut de RHEL 8 et Rocky Linux 8. Exécutez la commande dnf suivante pour installer les packages requis,

$ sudo dnf install -y httpd subversion mod_dav_svn

Étape 2) Modifier le fichier de configuration d'Apache Subversion

Créez un fichier ‘/etc/httpd/conf.d/subversion.conf’ et ajoutez-y les lignes suivantes.

$ sudo vi /etc/httpd/conf.d/subversion.conf
<Location /svn>
DAV svn
SVNParentPath /var/www/svn/
AuthType Basic
AuthName "SVN Repository"
AuthUserFile /etc/svn/svn-auth-accounts
Require valid-user
</Location>

Les paramètres ci-dessus permettront uniquement aux utilisateurs authentifiés d'utiliser le référentiel SVN.

Étape 3) Créer des utilisateurs SVN via la commande htpasswd

Exécutez la commande ci-dessous pour créer un utilisateur pour SVN via la commande htpasswd,

$ sudo htpasswd -cm /etc/svn-auth-accounts linuxtechi
New password:
Re-type new password:
Adding password for user linuxtechi
$

Dans la commande htpasswd ci-dessus, nous avons utilisé '-c' &'-m' options. -c est utilisé pour créer le fichier de mot de passe (/etc/svn-auth-accounts) et -m utilisé pour créer un mot de passe de cryptage MD5 pour l'utilisateur. Pour créer un deuxième utilisateur, supprimez le "-c" de la commande ci-dessus, sinon il écrasera le fichier existant.

$ sudo htpasswd -m /etc/svn-auth-accounts pkumar
New password:
Re-type new password:
Adding password for user pkumar
$

Étape 4) Créer un référentiel SVN

Exécutez les commandes suivantes les unes après les autres pour créer votre premier référentiel svn et définir les autorisations requises,

$ sudo mkdir /var/www/svn
$ cd /var/www/svn/
$ sudo svnadmin create repo
$ sudo chown apache.apache repo/

Remarque :Si SELinux est activé, appliquez les règles selinux ci-dessous en exécutant,

$ sudo chcon -R -t httpd_sys_content_t /var/www/svn/repo/
$ sudo chcon -R -t httpd_sys_rw_content_t /var/www/svn/repo/

Étape 5) Démarrez et activez le service Apache

Exécutez les commandes systemctl ci-dessous pour démarrer et activer le service du serveur Web apache.

$ sudo systemctl start httpd
$ sudo systemctl enable httpd

Si le pare-feu est activé sur votre système, autorisez le port suivant en exécutant,

$ sudo firewall-cmd --permanent --zone=public --add-service=http
$ sudo firewall-cmd --permanent --zone=public --add-service=https
$ sudo firewall-cmd --reload

Étape 6) Accéder au dépôt SVN à partir du navigateur Web

Tapez l'URL suivante dans votre navigateur Web,

http:///svn/repo

Dans le navigateur, remplacez simplement l'adresse IP par l'adresse IP de votre serveur SVN

Étape 7) Désactiver l'accès anonyme sur le référentiel SVN

Modifiez le fichier - /var/www/svn/repo/conf/svnserve.conf, ajoutez les deux lignes ci-dessous

## Disable Anonymous Access
anon-access = none

## Enable Access control
authz-db = authz

Étape 8) Importer le contenu du répertoire du projet dans le référentiel SVN

Créons notre premier exemple de répertoire de projet et son fichier.

$ mkdir devops
$ cd devops/
$ touch testfile_1 ; touch testfile_2
$

Utilisez maintenant la commande SVN pour importer le projet "devops" dans le dépôt. Comme nous avons créé un exemple de projet "devops" sur le serveur svn lui-même. Exécutez donc la commande svn suivante,

$ sudo svn import -m "First SVN Repo" devops file:///var/www/svn/repo/devops
Adding devops/testfile_1
Adding devops/testfile_2
Committing transaction...
Committed revision 1.
$

Vérifiez maintenant depuis le navigateur

Étape 9) Découvrez le projet

Dans mon cas, je souhaite vérifier le projet devops sur mon ordinateur portable Ubuntu à l'aide de la commande SVN. Donc, pour effectuer les opérations de paiement, assurez-vous que le package subversion est installé sur votre système, sinon utilisez la commande "sudo apt install -y subversion" pour installer le package requis.

$ mkdir svn_data
$ svn co http://192.168.1.180/svn/repo/devops/ /home/pkumar/svn_data/ --username linuxtechi
A svn_data/testfile_1
A svn_data/testfile_2
Checked out revision 1.
$

Étape 10) Validation des modifications

Après avoir effectué les modifications requises dans le code du projet, nous pouvons valider les modifications dans les référentiels SVN. Dans mon cas, j'ai créé un fichier supplémentaire dans le dossier linuxproject.

$ cd svn_data/
$ touch testfile_3
$ svn add testfile_3 --username linuxtechi
A testfile_3
$
$ svn commit -m "New File addedd" --username linuxtechi
Adding testfile_3
Transmitting file data .
Committed revision 2.
$

Remarque :lors de la validation des modifications, si vous obtenez une erreur ci-dessous

svn :E000013 :Échec de la validation (les détails suivent) :

svn :E000013 :impossible de démarrer une transaction

Ensuite, pour résoudre cette erreur, assurez-vous que l'utilisateur Apache dispose d'un accès en lecture et en écriture à l'ensemble du référentiel.

$ cd /var/www/svn/repo
$ sudo chown -R apache:apache *
$ sudo chmod -R 664 *

C'est tout de ce didacticiel, veuillez partager vos commentaires et vos questions dans la section des commentaires ci-dessous.


Rocky Linux
  1. Comment installer Python 3.9 sur Rocky Linux 8

  2. Comment installer Apache Tomcat 10 avec Nginx sur Rocky Linux 8

  3. Comment installer Apache Solr sur Rocky Linux

  4. Comment installer Apache Maven sur Rocky Linux/Alma Linux 8

  5. Comment installer Apache Kafka sur Rocky Linux 8

Comment installer Anydesk sur Rocky Linux 8

Comment installer Apache Tomcat sur Rocky Linux 8

Comment installer TeamViewer sur Rocky Linux 8

Comment installer Anaconda sur Rocky Linux 8

Comment installer Snap sur Rocky Linux 8

Comment installer PHP 7.4 sur Rocky Linux 8