자주 서버세팅을 하게 되는데 매일 찾아보는것도 그렇고 해서 기록으로 남깁니다.
yum을 통해 간단히 설치하고 설정해 보겠습니다.
따라 하시는 분들은 코드의 하이라이트된 부분만 입력하셔서 따라하시면 됩니다.
1. 아파치 설치하기
[root@localhost stylejg]# yum install httpd Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.daum.net * extras: ftp.daum.net * updates: ftp.daum.net Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package httpd.x86_64 0:2.2.3-45.el5.centos.1 set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================================================================================================= Package Arch Version Repository Size ============================================================================================================================================================================================================================================= Updating: httpd x86_64 2.2.3-45.el5.centos.1 updates 1.2 M Transaction Summary ============================================================================================================================================================================================================================================= Install 0 Package(s) Upgrade 1 Package(s) Total size: 1.2 M Is this ok [y/N]: y Downloading Packages: Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : httpd 1/2 Cleanup : httpd 2/2 Updated: httpd.x86_64 0:2.2.3-45.el5.centos.1 Complete!간단하게 아파치 설정을 끝냈습니다.
2. SVN(subversion) 설치
[root@localhost stylejg]# yum install -y subversion Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.daum.net * extras: ftp.daum.net * updates: ftp.daum.net Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package subversion.i386 0:1.6.11-7.el5_6.3 set to be updated ---> Package subversion.x86_64 0:1.6.11-7.el5_6.3 set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================================================================================================= Package Arch Version Repository Size ============================================================================================================================================================================================================================================= Updating: subversion i386 1.6.11-7.el5_6.3 updates 3.1 M subversion x86_64 1.6.11-7.el5_6.3 updates 3.2 M Transaction Summary ============================================================================================================================================================================================================================================= Install 0 Package(s) Upgrade 2 Package(s) Total size: 6.4 M Downloading Packages: Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : subversion 1/4 Updating : subversion 2/4 Cleanup : subversion 3/4 Cleanup : subversion 4/4 Updated: subversion.i386 0:1.6.11-7.el5_6.3 subversion.x86_64 0:1.6.11-7.el5_6.3 Complete!
3. SVN repository생성하기
소스코드의 버전을 관리할 SVN Repository를 생성합니다.
#루트에 "data" directory 생성 [root@localhost /]# mkdir /data # "data" 디렉토리 안에 "svn"디렉토리 생성. "svn"이란 디렉토리가 svn root 디렉토리임. svn 디렉토리 아래에 프로젝트 별로 repository가 생성 됨 [root@localhost /]# mkdir /data/svn [root@localhost /]# cd /data/svn/3. 아파치와 SVN을 연동하기 위한 apache module 설치
# apache가 해당 디렉토리(svn 디렉토리)에 접근해야 함으로 디렉토리 소유자를 아파치로 변경
# cent OS의 경우 yum으로 아파치를 설치하면 apache:apache로 우분투에서는 www-data:www-data로 변경
[root@localhost /]#chown -R apache:apache svn
#svn Repository를 생성한다. svnadmin create [저장타입(현재는 파일시스템)] [RepositoryName] #저장타입은 파일시스템 타입과 버클리db타입이 있는데, 버클리db는 버그가 있기 때문에 파일 시스템으로 주로 선언합니다. #버클리db로 설정하려면 svnadmin create --fs-type bcb [RepositoryName] 으로 하면 됩니다. [root@localhost svn]# svnadmin create --fs-type fsfs svn_test #svn_test repository가 생성된걸 볼수 있다. [root@localhost svn]# ls -al 합계 8 drwxr-xr-x 6 root root 4096 5월 20 08:11 svn_test
[root@localhost svn]# yum install -y mod_dav_svn Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.daum.net * extras: ftp.daum.net * updates: ftp.daum.net Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package mod_dav_svn.x86_64 0:1.6.11-7.el5_6.3 set to be updated --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================================================================================================= Package Arch Version Repository Size ============================================================================================================================================================================================================================================= Installing: mod_dav_svn x86_64 1.6.11-7.el5_6.3 updates 79 k Transaction Summary ============================================================================================================================================================================================================================================= Install 1 Package(s) Upgrade 0 Package(s) Total download size: 79 k Downloading Packages: mod_dav_svn-1.6.11-7.el5_6.3.x86_64.rpm | 79 kB 00:00 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : mod_dav_svn 1/1 Installed: mod_dav_svn.x86_64 0:1.6.11-7.el5_6.3 Complete!
4. 접근할 수 있는 사용자와 비밀번호 추가
#htpasswd [옵션 : -c 파일생성, 맨 처음 파일 생성 할때만 옵션 줌,] [접근권한을 저장한 파일위치 AND 파일이름(파일이름은 사용자 마음데로)] [사용자아이디] #즉 처음엔 -c 옵션을 붙이고, 두번째 사용자 추가 부터는 htpasswd /data/svn/svn_test/.passwd 사용자아이디 #형식으로 추가 하면 됨 [root@localhost svn]# htpasswd -c /data/svn/svn_test/.passwd stylejg New password: Re-type new password: Adding password for user stylejg
5. 아파치 설정
아파치를 yum 으로 설치하게 되면 /etc/httpd에 설정파일이 생기게 됩니다. 이쪽에 있는 아파치 설정파일에 svn 설정을 해주시면 됩니다.
[root@localhost httpd]# cd /etc/httpd/conf.d [root@localhost conf.d]# ls -al 합계 32 -rw-r--r-- 1 root root 392 5월 4 03:54 README -rw-r--r-- 1 root root 566 5월 4 03:54 proxy_ajp.conf -rw-r--r-- 1 root root 1181 4월 14 04:49 subversion.conf -rw-r--r-- 1 root root 299 5월 4 03:54 welcome.conf #subversion.conf 파일에 svn 설정을 넣어줍니다. #subversion.conf 파일에 주석처리 되어있는 설정이 있는데 예제임으로 지우시던지, 아니면 그냥 주석이 남겨진 채로 두시던지 하시면 됩니다. [root@localhost conf.d]# vi subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so #Location 태그 뒤의 path는 물리적인 위치, 즉 svn파일이 저장되어있는 위치가 아니라 #SVN URL을 나태냅니다. 즉 아래와 같이 /svn/test라 하면 http://userdomain.com/svn/test 가 되는 것입니다. #그러므로 Location 의 값은 실제 경로와 맞지 않고, 원하시는데로 작성하시면 됩니다. <Location /svn/test> DAV svn #실제 svn repository의 저장위치를 설정합니다. #여기는 위와는 다르게 실제 물리적인 path를 설정해 주셔야 합니다. SVNPath /data/svn/svn_test AuthType Basic AuthName "Subversion Repository C2" #3번째 단계에서 만들었던 비밀번호가 저장된 파일 위치를 적어줍니다. AuthUserFile /data/svn/svn_test/.passwd #위에서 설정한 파일에 있는 사용자만 다운로드 & 커밋을 할수 있게 해줍니다. Require valid-user </Location>
'Server > CentOS' 카테고리의 다른 글
[CentOS 5] MySQL 5.5.25 컴파일 설치하기 (0) | 2013.11.14 |
---|---|
[Linux] PHP 설치하기 (0) | 2013.11.14 |
Linex(CentOS 5.5) - JDK 설치하기 (0) | 2010.10.03 |
Linux(CentOS 5.5) - MYSQL 설치하기 (0) | 2010.09.18 |
Linux(CentOS 5.5) - telnet 설치하기 (0) | 2010.09.18 |