Apache Subversion je také známý jako SVN, je to open source program pro správu verzí a kontrolu revizí, který pomáhá při ukládání současných a minulých historických verzí souborů, jako jsou dokumenty, zdrojové kódy a web. stránky. SVN spadá pod licenci Apache.
V tomto tutoriálu se naučíme, jak nainstalovat a nakonfigurovat SVN na RHEL 8 a Rocky Linux 8. Zde budou autentizovaní uživatelé moci provádět operace check-in a checkout v úložišti SVN .
Krok 1) Nainstalujte SVN a Apache
Balíčky SVN a Apache (http) jsou dostupné ve výchozích repozitářích balíčků RHEL 8 a Rocky Linux 8. Spusťte následující příkaz dnf a nainstalujte požadované balíčky,
$ sudo dnf install -y httpd subversion mod_dav_svn
Krok 2) Upravte konfigurační soubor Apache Subversion
Vytvořte soubor ‚/etc/httpd/conf.d/subversion.conf‘ a přidejte do něj následující řádky.
$ sudo vi /etc/httpd/conf.d/subversion.confDAV svnSVNParentPath /var/www/svn/AuthType BasicAuthName "SVN Repository"AuthUserFile /etc/svn/svn-auth-accountsRequire -user
Výše uvedená nastavení umožní pouze ověřeným uživatelům používat úložiště SVN.
Krok 3) Vytvořte uživatele SVN pomocí příkazu htpasswd
Spusťte příkaz beneath a vytvořte uživatele pro SVN pomocí příkazu htpasswd,
$ sudo htpasswd -cm /etc/svn-auth-accounts linuxtechiNové heslo:Znovu zadejte nové heslo:Přidání hesla pro uživatele linuxtechi$
Ve výše uvedeném příkazu htpasswd jsme použili ‚-c‘ a ‘-m‘ možnosti. -c se používá k vytvoření souboru s hesly (/etc/svn-auth-accounts) a -m se používá k vytvoření hesla pro šifrování MD5 pro uživatele. Chcete-li vytvořit druhého uživatele, odstraňte „-c“ z výše uvedeného příkazu, jinak dojde k přepsání existujícího souboru.
$ sudo htpasswd -m /etc/svn-auth-accounts pkumarNové heslo:Znovu zadejte nové heslo:Přidání hesla pro uživatele pkumar$
Krok 4) Vytvořte úložiště SVN
Spuštěním následujících příkazů jeden po druhém vytvořte své první úložiště svn a nastavte požadovaná oprávnění,
$ sudo mkdir /var/www/svn$ cd /var/www/svn/$ sudo svnadmin vytvořit repo$ sudo chown apache.apache repo/
Poznámka:V případě, že je povolen SELinux, použijte níže uvedená pravidla selinux spuštěním,
$ 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/
Krok 5) Spusťte a povolte službu Apache
Spuštěním příkazů pod systemctl spustíte a povolíte službu webového serveru apache.
$ sudo systemctl spustit httpd$ sudo systemctl povolit httpd
V případě, že je ve vašem systému povolena brána firewall, povolte následující port spuštěním,
$ sudo firewall-cmd --permanent --zone=public --add-service=http$ sudo firewall-cmd --permanent --zone=public --add-service=https$ sudo firewall-cmd -- znovu načíst
Krok 6) Přístup k SVN Repo z webového prohlížeče
Do webového prohlížeče zadejte následující adresu URL,
http://
V prohlížeči stačí nahradit IP adresu IP vašeho SVN Serveru
Krok 7) Zakažte anonymní přístup v úložišti SVN
Upravte soubor – /var/www/svn/repo/conf/svnserve.conf, přidejte dva řádky níže
## Zakázat anonymní přístupnon-access =none## Povolit přístup controlauthz-db =authz
Krok 8) Importujte obsah adresáře projektu do úložiště SVN
Vytvořme náš první ukázkový projektový adresář a jeho soubor.
$ mkdir devops$ cd devops/$ touch testfile_1; klepněte na testfile_2$
Nyní použijte příkaz SVN k importu projektu „devops“ do repo. Protože jsme vytvořili ukázkový projekt „devops“ na samotném serveru svn. Spusťte tedy následující příkaz svn,
$ sudo svn import -m "První SVN Repo" devops file:///var/www/svn/repo/devopsAdding devops/testfile_1Adding devops/testfile_2Potvrzení transakce...Potvrzená revize 1.$
Nyní zkontrolujte z prohlížeče
Krok 9) Podívejte se na projekt
V mém případě chci zkontrolovat projekt devops na svém notebooku Ubuntu pomocí příkazu SVN. Aby bylo možné provést operace pokladny, zajistěte, aby měl váš systém nainstalovaný balíček subversion, pokud ne, použijte k instalaci požadovaného balíčku příkaz „sudo apt install -y subversion“.
$ mkdir svn_data$ svn co http://192.168.1.180/svn/repo/devops/ /home/pkumar/svn_data/ --username linuxtechiA svn_data/testfile_1A svn_data/testfile_2Zkontrolována revize.$Krok 10) Potvrzení změn
Po provedení požadovaných změn v kódu projektu můžeme změny odeslat do úložiště SVN. V mém případě jsem vytvořil ještě jeden soubor ve složce linuxproject.
$ cd svn_data/$ touch testfile_3$ svn add testfile_3 --username linuxtechiA testfile_3$$ svn commit -m "Nový soubor přidán" --username linuxtechiAdding testfile_3Přenos dat souboru .Committed revize 2.$Poznámka:Pokud se při potvrzování změn zobrazí chyba níže
svn:E000013:Potvrzení se nezdařilo (podrobnosti následují):
svn:E000013:transakci nelze zahájit
Poté, abyste tuto chybu vyřešili, ujistěte se, že uživatel Apache má přístup pro čtení a zápis do celého úložiště.
$ cd /var/www/svn/repo$ sudo chown -R apache:apache *$ sudo chmod -R 664 *To je vše z tohoto tutoriálu, podělte se prosím o své názory a dotazy v sekci komentářů níže.
Jak nainstalovat Kubernetes Cluster na Rocky Linux 8 Jak nainstalovat Ansible (Automation Tool) na Rocky Linux 8Rocky Linux