본문 바로가기

리눅스

Linux SVN(Subversion) 서버 설치 및 설정 가이드

반응형

Linux SVN(Subversion) 서버 설치 및 설정 가이드

Linux 환경에서 SVN(Subversion) 서버를 설치하고 저장소(Repository)를 생성한 뒤 사용자 인증 및 권한 설정까지 진행하는 방법입니다.

테스트 환경

운영체제 정보 : CentOS/Rocky Linux/RHEL 계열

저장소 경로 : /app/svn

저장소명 : repo1

1. SVN 패키지 설치

yum -y install subversion

설치 확인

svnserve --version

2. SVN 저장소 생성

SVN 저장소 디렉터리 생성

mkdir -p /app/svn
cd /app/svn

저장소 생성

svnadmin create --fs-type fsfs repo1

생성 후 디렉터리 구조 확인

tree /app/svn/repo1

3. SVN 서비스 설정

SVN 서비스 옵션 설정

cat <<EOF > /etc/sysconfig/svnserve
OPTIONS="--threads --root /app/svn"
EOF

설정 옵션 설명

  • --threads 멀티 스레드 방식 사용
  • --root /app/svn SVN 루트 디렉터리 지정
728x90

4. SVN 인증 설정

설정 파일 위치 이동

cd /app/svn/repo1/conf

기존 설정 파일 백업

cp svnserve.conf svnserve.conf.old
cp passwd passwd.old
cp authz authz.old

4-1. svnserve.conf 설정

vi svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = My First Repository

설정 항목 설명

  • anon-access = none 익명 사용자 접근 차단
  • auth-access = write 인증 사용자 읽기/쓰기 허용
  • password-db 사용자 계정 파일
  • authz-db 권한 설정 파일
  • realm 인증 영역 이름

4-2. 사용자 계정 설정

vi passwd
[users]
svn = svnpw1!
jenkins = jenkinspw1!

4-3. 사용자 권한 설정

vi authz
[/]
svn = rw
jenkins = rw

5. SVN 서비스 시작

service svnserve start

서비스 상태 확인

ps -ef | grep svnserve

포트 확인

netstat -ntlp | grep 3690

또는

ss -ntlp | grep 3690

6. 방화벽 설정 (선택)

  • SVN 기본 포트 : 3690/tcp

firewalld 사용 시

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

7. SVN 접속 테스트

저장소 목록 확인

svn list svn://192.168.0.10/repo1 --username svn

체크아웃 테스트

svn checkout svn://192.168.0.10/repo1

8. SVN 저장소 백업 예제

Hotcopy 방식 백업

svnadmin hotcopy /app/svn/repo1 /backup/repo1

Dump 방식 백업

svnadmin dump /app/svn/repo1 > /backup/repo1.dump

 

참고URL

- zetawiki : CentOS 서브버전 서버 설치 및 설정 (svn)

- 이건없지 : TortoiseSVN을 이용해서 svn 서버에 연결하기

 

728x90
반응형