일거리/os2009. 7. 2. 16:12
1.설치  
 -터미널 모드
먼저 svn 을 다운 받는다.
$sudo apt-get install subversion

SVN을 사용하기 위한 저장소(Repository)를 만든다
$mkdir /home/svn
$cd /home/svn
$svnadmin create --fs-type fsfs data
 저장소 위치를 data로 한다.

2.설정
  - $vi /home/svn/data/conf/svnserve.conf
### This file controls the configuration of the svnserve daemon, if you
### use it to allow access to this repository.  (If you only allow
### access through http: and/or file: URLs, then this file is
### irrelevant.)
### Visit http://subversion.tigris.org/ for more information.
[general]
### These options control access to the repository for unauthenticated
### and authenticated users.  Valid values are "write", "read",
### and "none".  The sample settings below are the defaults.
anon-access = none
auth-access = write
### The password-db option controls the location of the password
### database file.  Unless you specify a path starting with a /,
### the file's location is relative to the directory containing
### this configuration file.
### If SASL is enabled (see below), this file will NOT be used.
### Uncomment the line below to use the default password file.
password-db = passwd
### The authz-db option controls the location of the authorization
### rules for path-based access control.  Unless you specify a path
### starting with a /, the file's location is relative to the the
### directory containing this file.  If you don't specify an
### authz-db, no path-based access control is done.
### Uncomment the line below to use the default authorization file.
# authz-db = authz
### This option specifies the authentication realm of the repository.
### If two repositories have the same authentication realm, they should
### have the same password database, and vice versa.  The default realm
### is repository's uuid.
realm = My First Repository
[sasl]
### This option specifies whether you want to use the Cyrus SASL
### library for authentication. Default is false.
### This section will be ignored if svnserve is not built with Cyrus
### SASL support; to check, run 'svnserve --version' and look for a line
### reading 'Cyrus SASL authentication is available.'
# use-sasl = true
### These options specify the desired strength of the security layer
### that you want SASL to provide. 0 means no encryption, 1 means
### integrity-checking only, values larger than 1 are correlated
### to the effective key length for encryption (e.g. 128 means 128-bit
### encryption). The values below are the defaults.
# min-encryption = 0
# max-encryption = 256

-anon-access = none           아무나 읽지 못하게 한다. none 아니라 read 면 누구나 읽을수 있다
-auth-access = write            인증된 ID만 쓸수 있다
-password-db = passwd       /conf/passwd 파일에서 id를 등록 및 수정 할 수 있다.


- $vi /home/svn/data/conf/passwd
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
## id = pw
entro80 = 1


3.실행 및 확인
 -svn 서버 실행
$svnserve -d -r /home/svn                    
$svn checkout svn://서버 아이피/data
  choecked out revision 0   이 나오면 정상적으로  설정된 것이다.


-실행이 안될시 3690 포트가 열려 있는지 확인해본다
$nmap localhost -p1-9999

Starting Nmap 4.62 ( http://nmap.org ) at 2009-07-02 15:53 KST
Warning: Hostname localhost resolves to 2 IPs. Using 127.0.0.1.
Interesting ports on localhost (127.0.0.1):
Not shown: 9995 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
23/tcp   open  telnet
631/tcp  open  ipp
3690/tcp open  unknow

-3690포트가 없을시
$vi /etc/oops-firewall/filter.conf
 -추가
TCP_ALLOWPORT에 3690 추가한다.
-firewall 재실행
$ service oops-firewall restart


-svn server 종료
$killall svnserve


Posted by 달곰네두목곰