Miscellaneous

yum을 이용한 SVN 설치 방법

강철지그·2015년 12월 21일·조회 3,405

1. 개요

SVN에 대해서는 몇 차례 다룬 바 있습니다.

  • SVN이란?

-> /index.php/miscellaneous/1189-subversion

  • OS X에서 Apache Subversion Installation

-> /index.php/miscellaneous/29-os-x-apache-subversion-installation

  • Apache 웹서버 상에 SVN 설치

-> /index.php/miscellaneous/151-apache-svn


2. 설치

오늘은 SVN 클라이언트와 서버 도구를 패키지로 설치하고, svnserve를 간단히 실행해 보는 방법을 공유합니다. 아래 예시는 yum을 사용하는 CentOS/RHEL 6 계열 환경의 실행 결과입니다. 배포판이나 저장소 상태에 따라 설치되는 버전과 의존성 목록은 달라질 수 있습니다.

설치 여부 확인

먼저 SVN이 설치되어 있는지 확인합니다.

# svn
-bash: svn: command not found

설치되어 있지 않으므로 yum을 이용하여 설치합니다.

# yum install subversion
Loaded plugins: fastestmirror
Determining fastest mirrors
 * base: mirror.oasis.onnetcorp.com
 * extras: mirror.oasis.onnetcorp.com
 * updates: mirror.oasis.onnetcorp.com
base                                                                                                       | 3.7 kB     00:00
base/primary_db                                                                                            | 4.6 MB     00:01
extras                                                                                                     | 2.9 kB     00:00
extras/primary_db                                                                                          |  33 kB     00:00
updates                                                                                                    | 3.4 kB     00:00
updates/primary_db                                                                                         | 3.2 MB     00:01
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package subversion.x86_64 0:1.6.11-15.el6_7 will be installed
--> Processing Dependency: perl(URI) >= 1.17 for package: subversion-1.6.11-15.el6_7.x86_64
--> Processing Dependency: libneon.so.27()(64bit) for package: subversion-1.6.11-15.el6_7.x86_64
--> Running transaction check
---> Package neon.x86_64 0:0.29.3-3.el6_4 will be installed
--> Processing Dependency: libgnutls.so.26(GNUTLS_1_4)(64bit) for package: neon-0.29.3-3.el6_4.x86_64
--> Processing Dependency: libproxy.so.0()(64bit) for package: neon-0.29.3-3.el6_4.x86_64
--> Processing Dependency: libpakchois.so.0()(64bit) for package: neon-0.29.3-3.el6_4.x86_64
--> Processing Dependency: libgnutls.so.26()(64bit) for package: neon-0.29.3-3.el6_4.x86_64
---> Package perl-URI.noarch 0:1.40-2.el6 will be installed
--> Running transaction check
---> Package gnutls.x86_64 0:2.8.5-18.el6 will be installed
--> Processing Dependency: libtasn1.so.3(LIBTASN1_0_3)(64bit) for package: gnutls-2.8.5-18.el6.x86_64
--> Processing Dependency: libtasn1.so.3()(64bit) for package: gnutls-2.8.5-18.el6.x86_64
---> Package libproxy.x86_64 0:0.3.0-10.el6 will be installed
--> Processing Dependency: libproxy-python = 0.3.0-10.el6 for package: libproxy-0.3.0-10.el6.x86_64
--> Processing Dependency: libproxy-bin = 0.3.0-10.el6 for package: libproxy-0.3.0-10.el6.x86_64
---> Package pakchois.x86_64 0:0.4-3.2.el6 will be installed
--> Running transaction check
---> Package libproxy-bin.x86_64 0:0.3.0-10.el6 will be installed
---> Package libproxy-python.x86_64 0:0.3.0-10.el6 will be installed
---> Package libtasn1.x86_64 0:2.3-6.el6_5 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==================================================================================================================================
 Package                            Arch                      Version                            Repository                  Size
==================================================================================================================================
Installing:
 subversion                         x86_64                    1.6.11-15.el6_7                    updates                    2.3 M
Installing for dependencies:
 gnutls                             x86_64                    2.8.5-18.el6                       base                       347 k
 libproxy                           x86_64                    0.3.0-10.el6                       base                        39 k
 libproxy-bin                       x86_64                    0.3.0-10.el6                       base                       9.0 k
 libproxy-python                    x86_64                    0.3.0-10.el6                       base                       9.1 k
 libtasn1                           x86_64                    2.3-6.el6_5                        base                       238 k
 neon                               x86_64                    0.29.3-3.el6_4                     base                       119 k
 pakchois                           x86_64                    0.4-3.2.el6                        base                        21 k
 perl-URI                           noarch                    1.40-2.el6                         base                       117 k

Transaction Summary
==================================================================================================================================
Install       9 Package(s)

Total download size: 3.2 M
Installed size: 14 M
Is this ok [y/N]: y
Downloading Packages:
(1/9): gnutls-2.8.5-18.el6.x86_64.rpm                                                                      | 347 kB     00:00
(2/9): libproxy-0.3.0-10.el6.x86_64.rpm                                                                    |  39 kB     00:00
(3/9): libproxy-bin-0.3.0-10.el6.x86_64.rpm                                                                | 9.0 kB     00:00
(4/9): libproxy-python-0.3.0-10.el6.x86_64.rpm                                                             | 9.1 kB     00:00
(5/9): libtasn1-2.3-6.el6_5.x86_64.rpm                                                                     | 238 kB     00:00
(6/9): neon-0.29.3-3.el6_4.x86_64.rpm                                                                      | 119 kB     00:00
(7/9): pakchois-0.4-3.2.el6.x86_64.rpm                                                                     |  21 kB     00:00
(8/9): perl-URI-1.40-2.el6.noarch.rpm                                                                      | 117 kB     00:00
(9/9): subversion-1.6.11-15.el6_7.x86_64.rpm                                                               | 2.3 MB     00:00
----------------------------------------------------------------------------------------------------------------------------------
Total                                                                                             2.4 MB/s | 3.2 MB     00:01
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : libproxy-bin-0.3.0-10.el6.x86_64                                                                               1/9
  Installing : libproxy-python-0.3.0-10.el6.x86_64                                                                            2/9
  Installing : libproxy-0.3.0-10.el6.x86_64                                                                                   3/9
  Installing : perl-URI-1.40-2.el6.noarch                                                                                     4/9
  Installing : libtasn1-2.3-6.el6_5.x86_64                                                                                    5/9
  Installing : gnutls-2.8.5-18.el6.x86_64                                                                                     6/9
  Installing : pakchois-0.4-3.2.el6.x86_64                                                                                    7/9
  Installing : neon-0.29.3-3.el6_4.x86_64                                                                                     8/9
  Installing : subversion-1.6.11-15.el6_7.x86_64                                                                              9/9
  Verifying  : libproxy-0.3.0-10.el6.x86_64                                                                                   1/9
  Verifying  : libproxy-bin-0.3.0-10.el6.x86_64                                                                               2/9
  Verifying  : pakchois-0.4-3.2.el6.x86_64                                                                                    3/9
  Verifying  : libproxy-python-0.3.0-10.el6.x86_64                                                                            4/9
  Verifying  : libtasn1-2.3-6.el6_5.x86_64                                                                                    5/9
  Verifying  : gnutls-2.8.5-18.el6.x86_64                                                                                     6/9
  Verifying  : neon-0.29.3-3.el6_4.x86_64                                                                                    7/9
  Verifying  : perl-URI-1.40-2.el6.noarch                                                                                     8/9
  Verifying  : subversion-1.6.11-15.el6_7.x86_64                                                                              9/9

Installed:
  subversion.x86_64 0:1.6.11-15.el6_7

Dependency Installed:
  gnutls.x86_64 0:2.8.5-18.el6                  libproxy.x86_64 0:0.3.0-10.el6         libproxy-bin.x86_64 0:0.3.0-10.el6
  libproxy-python.x86_64 0:0.3.0-10.el6         libtasn1.x86_64 0:2.3-6.el6_5          neon.x86_64 0:0.29.3-3.el6_4
  pakchois.x86_64 0:0.4-3.2.el6                 perl-URI.noarch 0:1.40-2.el6

Complete!

설치 확인

설치가 완료되었으니 실행해 봅니다. 아래처럼 사용법 안내가 나오면 클라이언트 명령어는 정상적으로 설치된 것입니다.

# svn
Type 'svn help' for usage.

svnserve도 실행해 봅니다. 옵션 없이 실행하면 사용 가능한 실행 모드를 지정하라는 메시지가 출력됩니다.

# svnserve
You must specify exactly one of -d, -i, -t or -X.
Type 'svnserve --help' for usage.

svnserve 서비스 제어

svnserve 서비스를 시작해 봅니다.

# service svnserve start
Starting svnserve:                                         [  OK  ]

중지도 확인합니다.

# service svnserve stop
Stopping svnserve:                                         [  OK  ]

현재 상태를 확인합니다.

# service svnserve status
svnserve is stopped

기본 포트는 3690입니다. 서비스가 실행 중인 상태라면 다음처럼 3690 포트가 LISTEN 상태로 표시됩니다.

# netstat -an | grep 3690
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN

저장소 생성

이제 저장소를 만듭니다. 예시에서는 /svn 디렉터리 아래에 welcome이라는 저장소를 생성합니다.

# mkdir /svn
# cd /svn
# svnadmin create --fs-type fsfs welcome
# ls -l
total 4
drwxr-xr-x 6 root root 4096 Dec 21 15:03 welcome

생성 후에는 conf/svnserve.conf, conf/passwd 등의 설정 파일을 수정해 접근 권한과 계정을 지정하게 됩니다. 이 글에서는 설치와 저장소 생성까지만 확인합니다.

댓글 0

로그인 후 댓글을 남길 수 있습니다.

아직 댓글이 없습니다.