리눅스 Apache + svn 연동
연동하기전에 apache, svn이 설치 되어 있어야 한다.
1. mod_dav_svn 설치
* Apache와 svn을 연동 모듈 설치!!
yum install mod_dav_svn.x86_64
2. apache와 svn 연동 library 파일 복사
* apache를 yum으로 설치했을 경우는 문제가 되지 않지만 source 컴파일로 설치 했기에 apache의 해당 디렉토리로 파일 복사
cp /usr/lib64/httpd/modules/*svn* /usr/local/apache/modules/
3. 사용자 파일 생성
* /data/svn/.passwd로 생성 할려고 함
htpasswd -c /data/svn/.passwd bluemary <-- 최조 생성이라 -c 옵션을 줌. 이후에는 -c 옵션 없이 생성
/data/svn 폴더에서 ls -al 하면 .passwd 파일이 생성되어 있는것을 확인 할 수 있다.
4. 권한 설정
디렉토리 권한 설정을 apache로 한다.
chown -R apache:apache /data/svn/repo
chmod -R 770 /data/svn/repo
5. svn 환경 설정
* mod_dav_svn을 설치하면 /etc/httpd/conf.d/subversion.conf파일을 /usr/local/apache/conf/extra/httpd-subversion.conf로 카피 한다.
* subversion.conf 수정
vi /usr/local/apache/conf/extra/httpd-subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn/repo>
DAV svn
SVNPath /data/svn/repo
AuthType Basic
AuthName "repo"
AuthUserFile /data/svn/.passwd
Require valid-user
AuthzSVNAccessFile /data/svn/svnAuthz/repo.authz
</Location>
6. svnaccess 파일 생성
* Location 설정에서 accessfile 위치를 /data/svn/svnAuthz/repo.authz 로 해줌.
mkdir /data/svn/svnAuthz
cd /data/svn/svnAuthz
vi repo.authz
[groups]
repo = test, test1, bluemary
[repo:/]
@repo = rw
* =
7. httpd.conf 설정
* user와 group가 daemon으로 되어 있으므로 변경한다.
User apache
Group apache
# Subversion <-- httpd-subversion.conf Include 한다.
Include conf/extra/httpd-subversion.conf
8. 서버 재실행
ps -ef | grep svn 하여 kill -9로 프로세스 죽인 후 재실행
svnserve -d -r /data/svn
/etc/init.d/httpd restart <-- 아파치 재실행
9. svn 연결
웹페이지에서 http://ip/svn/repo 하면 인증창이 뜸. htpasswd로 생성한 유저 id 와 패스워드 넣어준다.
** TortoiseSVN 연결
svn연결 화면
'Linux > svn' 카테고리의 다른 글
리눅스 Apache + svn + Active Directory 연동 (0) | 2014.02.07 |
---|---|
리눅스 svn 설치 (0) | 2014.02.06 |