GNU/Linux >> Linux Esercitazione >  >> Rocky Linux

Come installare Apache Subversion (SVN) su RHEL 8 / Rocky Linux 8

Apache Subversion è anche noto come SVN, è un programma open source di controllo delle versioni e delle revisioni che aiuta a memorizzare le versioni dei file storici presenti e passati come documenti, codici sorgente e web pagine. SVN è sotto licenza Apache.

In questo tutorial impareremo come installare e configurare SVN su RHEL 8 e Rocky Linux 8. Qui gli utenti autenticati potranno eseguire operazioni di check-in e check-out sul repository SVN .

Passaggio 1) Installa SVN e Apache

I pacchetti SVN e Apache (http) sono disponibili nei repository di pacchetti predefiniti di RHEL 8 e Rocky Linux 8. Esegui il seguente comando dnf per installare i pacchetti richiesti,

$ sudo dnf install -y httpd subversion mod_dav_svn

Fase 2) Modifica il file di configurazione di Apache Subversion

Crea un file '/etc/httpd/conf.d/subversion.conf' e aggiungi le seguenti righe.

$ 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>

Le impostazioni di cui sopra consentiranno solo agli utenti autenticati di utilizzare il repository SVN.

Fase 3) Crea utenti SVN tramite il comando htpasswd

Esegui il comando sottostante per creare un utente per SVN tramite il comando htpasswd,

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

Nel comando htpasswd sopra abbiamo usato '-c' &'-m' opzioni. -c viene utilizzato per creare il file della password (/etc/svn-auth-accounts) e -m utilizzato per creare la password di crittografia MD5 per l'utente. Per creare un secondo utente, rimuovi '-c' dal comando precedente, altrimenti sovrascriverà il file esistente.

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

Passaggio 4)  Crea un repository SVN

Esegui i seguenti comandi uno dopo l'altro per creare il tuo primo repository svn e per impostare le autorizzazioni richieste,

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

Nota:nel caso in cui SELinux sia abilitato, applica sotto le regole di selinux eseguendo,

$ 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/

Passaggio 5) Avvia e abilita il servizio Apache

Esegui i comandi systemctl sottostanti per avviare e abilitare il servizio del server Web Apache.

$ sudo systemctl start httpd
$ sudo systemctl enable httpd

Nel caso in cui il firewall sia abilitato sul tuo sistema, consenti la seguente porta eseguendo,

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

Passaggio 6) Accedi a SVN Repo dal browser Web

Digita il seguente URL nel tuo browser web,

http:///svn/repo

Nel browser basta sostituire l'indirizzo IP con l'IP del tuo server SVN

Passaggio 7) Disabilita l'accesso anonimo al repository SVN

Modifica il file – /var/www/svn/repo/conf/svnserve.conf, aggiungi le due righe seguenti

## Disable Anonymous Access
anon-access = none

## Enable Access control
authz-db = authz

Passaggio 8) Importa il contenuto di Project Directory nel repository SVN

Creiamo la nostra prima directory di progetto di esempio e il relativo file.

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

Ora usa il comando SVN per importare il progetto "devops" nel repository. Poiché abbiamo creato un progetto "devops" di esempio sul server svn stesso. Quindi esegui il seguente comando svn,

$ 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.
$

Ora controlla dal browser

Fase 9) Dai un'occhiata al progetto

Nel mio caso, voglio controllare il progetto devops sul mio laptop Ubuntu usando il comando SVN. Quindi, per eseguire le operazioni di checkout, assicurati che sul tuo sistema sia installato il pacchetto subversion, in caso contrario usa il comando "sudo apt install -y subversion" per installare il pacchetto richiesto.

$ 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.
$

Fase 10) Conferma delle modifiche

Dopo aver apportato le modifiche richieste nel codice del progetto, possiamo eseguire il commit delle modifiche nei repository SVN. Nel mio caso ho creato un altro file nella cartella 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.
$

Nota:durante il commit delle modifiche se ricevi un errore inferiore

svn:E000013:Commit non riuscito (i dettagli seguono):

svn:E000013:impossibile avviare una transazione

Quindi, per risolvere questo errore, assicurati che l'utente Apache abbia accesso in lettura e scrittura all'intero repository.

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

Questo è tutto da questo tutorial, condividi il tuo feedback e le tue domande nella sezione commenti qui sotto.


Rocky Linux
  1. Come installare Python 3.9 su Rocky Linux 8

  2. Come installare Apache Tomcat 10 con Nginx su Rocky Linux 8

  3. Come installare Apache Solr su Rocky Linux

  4. Come installare Apache Maven su Rocky Linux/Alma Linux 8

  5. Come installare Apache Kafka su Rocky Linux 8

Come installare Anydesk su Rocky Linux 8

Come installare Apache Tomcat su Rocky Linux 8

Come installare TeamViewer su Rocky Linux 8

Come installare Anaconda su Rocky Linux 8

Come installare Snap su Rocky Linux 8

Come installare PHP 7.4 su Rocky Linux 8