GNU/Linux >> Linux の 問題 >  >> Rocky Linux

RHEL 8 / Rocky Linux8にApacheSubversion(SVN)をインストールする方法

Apache SubversionはSVNとも呼ばれ、ドキュメント、ソースコード、Webなどの現在および過去の過去のファイルバージョンを保存するのに役立つオープンソースのバージョン管理およびリビジョン制御プログラムです。ページ。 SVNはApacheライセンスの下にあります。

このチュートリアルでは、RHEL8およびRockyLinux 8にSVNをインストールして構成する方法を学習します。ここで、認証されたユーザーはSVNリポジトリでチェックインおよびチェックアウト操作を実行できます。 。

ステップ1)SVNとApacheをインストールします

SVNおよびApache(http)パッケージは、RHEL8およびRockyLinux 8のデフォルトのパッケージリポジトリで利用できます。次のdnfコマンドを実行して、必要なパッケージをインストールします。

$ sudo dnf install -y httpd subversion mod_dav_svn

ステップ2)ApacheSubversionの構成ファイルを編集する

ファイル「/etc/httpd/conf.d/subversion.conf」を作成し、次の行を追加します。

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

上記の設定では、認証されたユーザーのみがSVNリポジトリを使用できます。

ステップ3)htpasswdコマンドを使用してSVNユーザーを作成します

以下のコマンドを実行して、htpasswdコマンドを介してSVNのユーザーを作成します。

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

上記のhtpasswdコマンドでは、「-c」と「-m」を使用しました オプション。 -cはパスワードファイル(/ etc / svn-auth-accounts)を作成するために使用され、-mはユーザーのMD5暗号化パスワードを作成するために使用されます。 2番目のユーザーを作成するには、上記のコマンドから「-c」を削除します。削除しないと、既存のファイルが上書きされます。

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

ステップ4)SVNリポジトリを作成する

次のコマンドを次々に実行して、最初のsvnリポジトリを作成し、必要な権限を設定します。

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

注:SELinuxが有効になっている場合は、

を実行して、以下のselinuxルールを適用します。
$ 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/

ステップ5)Apacheサービスを開始して有効にする

以下のsystemctlコマンドを実行して、ApacheWebサーバーのサービスを開始して有効にします。

$ sudo systemctl start httpd
$ sudo systemctl enable httpd

システムでファイアウォールが有効になっている場合は、実行して次のポートを許可します。

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

ステップ6)WebブラウザからSVNリポジトリにアクセスする

Webブラウザに次のURLを入力します

http:// / svn / repo

ブラウザで、IPアドレスをSVNサーバーのIPに置き換えるだけです

ステップ7)SVNリポジトリでの匿名アクセスを無効にする

ファイルを編集します– /var/www/svn/repo/conf/svnserve.conf、以下の2行を追加します

## Disable Anonymous Access
anon-access = none

## Enable Access control
authz-db = authz

ステップ8)プロジェクトディレクトリのコンテンツをSVNリポジトリにインポートする

最初のサンプルプロジェクトディレクトリとそのファイルを作成しましょう。

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

次に、SVNコマンドを使用して、「devops」プロジェクトをリポジトリにインポートします。 svnサーバー自体にサンプルの「devops」プロジェクトを作成したので。したがって、次の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.
$

ブラウザから確認してください

ステップ9)プロジェクトをチェックアウトする

私の場合、SVNコマンドを使用してUbuntuラップトップでdevopsプロジェクトをチェックアウトしたいと思います。したがって、チェックアウト操作を実行するには、システムにsubversionパッケージがインストールされていることを確認してください。インストールされていない場合は、「sudo apt install-ysubversion」コマンドを使用して必要なパッケージをインストールしてください。

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

ステップ10)変更のコミット

プロジェクトコードに必要な変更を加えた後、SVNリポジトリに変更をコミットできます。私の場合、linuxprojectフォルダーにもう1つのファイルを作成しました。

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

注:以下のエラーが発生した場合は、変更をコミットしている間

svn:E000013:コミットに失敗しました(詳細は次のとおりです):

svn:E000013:トランザクションを開始できませんでした

次に、このエラーを解決するために、Apacheユーザーがリポジトリ全体への読み取りおよび書き込みアクセス権を持っていることを確認してください。

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

このチュートリアルは以上です。以下のコメントセクションでフィードバックや質問を共有してください。


Rocky Linux
  1. RockyLinux8にPython3.9をインストールする方法

  2. Rocky Linux / AlmaLinux8にApacheMavenをインストールする方法

  3. RockyLinux8にApacheKafkaをインストールする方法

  1. RockyLinux8にNginxを使用してApacheTomcat10をインストールする方法

  2. RockyLinuxにApacheSolrをインストールする方法

  3. CentOS 7 /RHELにApacheSVN(Subversion)をインストールする方法

  1. CentOS 7 / RHEL7にApacheSVN(Subversion)をインストールします

  2. Ubuntu18.04にApacheSVNをインストールする方法

  3. RockyLinux8.4のインストール方法