自分で開発中しているソフトウェアのソースファイルを管理するために、Subversionをインストールします。
既にインストールされているか確認します。
[root@KURO-F7 ~]# rpm -qi subversion パッケージ subversion はインストールされていません。
インストールされていないようなので、インストールを実施します。
[root@KURO-F7 ~]# yum install subversion fedora 100% |=========================| 2.1 kB 00:00 updates 100% |=========================| 2.3 kB 00:00 Setting up Install Process Parsing package install arguments Resolving Dependencies --> Running transaction check ---> Package subversion.ppc 0:1.4.4-7 set to be updated --> Processing Dependency: libapr-1.so.0 for package: subversion --> Processing Dependency: libaprutil-1.so.0 for package: subversion --> Processing Dependency: perl(URI) >= 1.17 for package: subversion --> Processing Dependency: libneon.so.27 for package: subversion --> Running transaction check ---> Package apr-util.ppc 0:1.2.10-2.fc8 set to be updated ---> Package apr.ppc 0:1.2.11-2 set to be updated ---> Package perl-URI.noarch 0:1.35-3.1 set to be updated ---> Package neon.ppc 0:0.27.2-2 set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================= Package Arch Version Repository Size ============================================================================= Installing: subversion ppc 1.4.4-7 fedora 2.5 M Installing for dependencies: apr ppc 1.2.11-2 fedora 137 k apr-util ppc 1.2.10-2.fc8 fedora 80 k perl-URI noarch 1.35-3.1 fedora 116 k Updating for dependencies: neon ppc 0.27.2-2 fedora 116 k Transaction Summary ============================================================================= Install 4 Package(s) Update 1 Package(s) Remove 0 Package(s) Total download size: 2.9 M Is this ok [y/N]: y Downloading Packages: (1/4): perl-URI-1.35-3.1. 100% |=========================| 116 kB 00:00 (2/4): apr-1.2.11-2.ppc.r 100% |=========================| 137 kB 00:00 (3/4): subversion-1.4.4-7 100% |=========================| 2.5 MB 00:01 (4/4): apr-util-1.2.10-2. 100% |=========================| 80 kB 00:00 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing: apr ######################### [1/6] Installing: apr-util ######################### [2/6] Updating : neon ######################### [3/6] Installing: perl-URI ######################### [4/6] Installing: subversion ######################### [5/6] Cleanup : neon ######################### [6/6] Installed: subversion.ppc 0:1.4.4-7 Dependency Installed: apr.ppc 0:1.2.11-2 apr-util.ppc 0:1.2.10-2.fc8 perl-URI.noarch 0:1.35-3.1 Dependency Updated: neon.ppc 0:0.27.2-2 Complete!
完了しました。
xinetd経由でサービスを起動するため、xinetdをインストールします。
すでにインストール済みであれば不要です。
[root@KURO-F7 ~]# rpm -q xinetd パッケージ xinetd はインストールされていません。
インストールされていないようなので、インストールを実施します。
[root@KURO-F7 ~]# yum -y install xinetd fedora 100% |=========================| 2.1 kB 00:00 updates 100% |=========================| 2.3 kB 00:00 Setting up Install Process Parsing package install arguments Resolving Dependencies --> Running transaction check ---> Package xinetd.ppc 2:2.3.14-14.fc8 set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================= Package Arch Version Repository Size ============================================================================= Installing: xinetd ppc 2:2.3.14-14.fc8 fedora 134 k Transaction Summary ============================================================================= Install 1 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 134 k Downloading Packages: (1/1): xinetd-2.3.14-14.f 100% |=========================| 134 kB 00:00 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing: xinetd ######################### [1/1] Installed: xinetd.ppc 2:2.3.14-14.fc8 Complete!
インストールが完了しました。
xinetdの設定をするために、/etc/xinetd.d配下にsvnserveというファイルを作成し、下記のような内容を書き込みます。
/etc/xinetd.d配下にsvnserveを作成 [root@KURO-F7 ~]# vi /etc/xinetd.d/svnserve 下記の内容を書き込む service svnserve { disable = no socket_type = stream wait = no user = svn svnserveを実行するユーザ server = /usr/bin/svnserve svnserveへのフルパス server_args = -i -r /var/svn/repos svnserveに渡す引数。「-r /var/svn/repos」でリポジトリのルートディレクトリを/var/svn/reposに設定しています。 log_on_failure += USERID 接続に失敗した場合、ユーザ名をログに記録する only_from = 192.168.11.0/24 127.0.0.1 }
Subversionで使用するユーザを作成します。
[root@KURO-F7 ~]# useradd svn
続いて、リポジトリを格納するためのディレクトリを作成します。
[root@KURO-F7 ~]# mkdir /var/svn [root@KURO-F7 ~]# mkdir /var/svn/repos
作成ディレクトリのオーナーを、先ほど作成したユーザに変更します。
[root@KURO-F7 ~]# chown svn:svn /var/svn [root@KURO-F7 ~]# chown svn:svn /var/svn/repos
/etc/hosts.allowに下記の内容を追記し、内部ネットワークからの接続のみを許可するようにします。
/etc/hosts.allowを編集 [root@KURO-F7 ~]# vi /etc/hosts.allow 下記の内容を追加 svnserve : 192.168.11. 127.0.0.1
/etc/servicesを編集して、サービス名と使用ポート番号を追記します。
追加する位置は自由ですが、「Unregistered but useful/necessary other services」のあたりに追加しておくと良いようです。
/etc/servicesを編集 [root@KURO-F7 ~]# vi /etc/services 下記の内容を追加 # # Unregistered but useful/necessary other services # ... svnserve 3690/tcp # Subversion svnserve 3690/udp # Subversion
続いて、chkconfigコマンドを使ってsvnserveを起動できるようにします。
svnserveを起動するようにする [root@KURO-F7 ~]# chkconfig --add svnserve 設定が反映されているか確認する [root@KURO-F7 ~]# chkconfig --list svnserve svnserve on
起動設定が整ったところで、xinetdを起動します。
[root@KURO-F7 ~]# service xinetd start xinetd を起動中: [ OK ]
telnetを使ってsvnserveに接続して次のように表示されればOKです。
[root@KURO-F7 ~]# telnet localhost 3690 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. ( success ( 1 2 ( ANONYMOUS ) ( edit-pipeline svndiff1 absent-entries ) ) )
Copyright © 1999-2017 Amonution All rights reserved.