인프라/SVN

[SVN] CentOS7에 SVN 설치하고 저장소 만들기

one-stone 2021. 9. 14. 11:45

1.  SVN 설치

yum install -y subversion
rpm -qa | grep subversion

 

2.  SVN 저장소 저장할 폴더 생성

mkdir /svn_repos

 

3.  SVN 저장소 관리할 폴더 지정

vi /etc/sysconfig/svnserve

# 수정할 부분
OPTIONS="--threads --root /svn_repos"

 

4.  방화벽 해제

SVN의 기본 포트는 3690 (svn:// 으로 접속할시, 사용되는 포트)

firewall-cmd --permanent --zone=public --add-port=3690/tcp
firewall-cmd --reload

 

5.  SVN 실행 후 확인

systemctl start svnserve.service

ps -ef | grep svn
netstat -anp | grep svnserve

 

6.  저장소 생성

cd /svn_repos
svnadmin create --fs-type fsfs 저장소명

 

7.  생성한 저장소 설정 파일 수정

anon-access, auth-access, password-db, authz-db, realm 설정들의 주석을 해제

vi /svn_repos/mhisvn/conf/svnserve.conf

anon-access = read : 익명계정에겐 read만 허용함

auth-access = write : 인증계정에겐 write를 허용함

password-db = passwd : 저장소에 접근할 사용자 계정과 비밀번호를 관리할 파일의 이름이 passwd임

authz-db = authz : 파일과 디렉토리에 대한 접근 권한을 관리하는 파일의 이름이 authz임

realm : 인증할 때 보여주는 설명, 생략 가능함

 

8.  passwd 설정 파일 수정

vi /svn_repos/mhisvn/conf/passwd

아이디 admin, 패스워드 admin으로 설정

 

9.  authz 설정 파일 수정

vi /svn_repos/mhisvn/conf/authz

맨 밑에 다음과 같은 4줄 추가

모든 사용자에겐 read 권한, root와 admin 계정에겐 read, write 권한을 부여

 

10.  svnserve 재시작

systemctl restart svnserve.service

 

11.  SELINUX 설정 해제

vi /etc/selinux/config

SELINUX=disabled 수정

설정 후 재부팅해야함.

재부팅 했으니 다시 systemctl start svnserve 명령도 실행

 

12.  SVN 저장소 확인

svn list svn://ip/저장소명
svn info svn://ip/저장소명