728x90
반응형
우분투 환경에서 SVN Server를 설치하겠습니다.
OS Version : Ubuntu 20.04
○ Subversion 설치
> sudo apt-get install subversion
○ 경로 지정 ( Repository )
mkdir /data
mkdir /data/svn
mkdir /data/svn/repository
○ 저장소 생성하기
> cd /data/svn/repository
> svnadmin create test
repository 밑에 test 폴더가 생김니다.
○ 권한 설정
> cd ./test/conf
> vi passwd
[users]
test = 1
○ Service 파일 생성
> cd /etc/init.d
> sudo vi svnserve
#! /bin/sh
### BEGIN INIT INFO
# Provides: svnserve
# Required-Start: $local_fs $syslog $remote_fs
# Required-Stop: $local_fs $syslog $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start svnserve
### END INIT INFO
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="svnserve"
NAME=svnserve
DAEMON=/usr/bin/$NAME
DAEMON_ARGS="-d -r /data/svn/repository"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
[ -x "$DAEMON" ] || exit 0
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
. /lib/init/vars.sh
. /lib/lsb/init-functions
do_start()
{
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
|| return 1
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_ARGS \
|| return 2
}
do_stop()
{
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
[ "$?" = 2 ] && return 2
rm -f $PIDFILE
return "$RETVAL"
}
case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
restart|force-reload)
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
exit 0
DAEMON_ARGS 경로를 자신의 repository 경로로 지정해 줍니다.
○ Service 등록 / 실행
파일 실행 권한 추가 / service 등록 / 실행
> sudo chmod 755 svnserve
> sudo update-rc.d svnserve defaults
> sudo service svnserve start
Service 상태 확인
> sudo service svnserve status
● svnserve.service - LSB: Start svnserve
Loaded: loaded (/etc/init.d/svnserve; generated)
Active: active (running) since Tue 2021-04-13 05:44:44 UTC; 1min 55s ago
Docs: man:systemd-sysv-generator(8)
Process: 1955 ExecStart=/etc/init.d/svnserve start (code=exited, status=0/SUCCESS)
Tasks: 1 (limit: 38421)
Memory: 1.8M
CGroup: /system.slice/svnserve.service
└─1963 /usr/bin/svnserve -d -r /data/svn/repository
Apr 13 05:44:44 nurier systemd[1]: Starting LSB: Start svnserve...
Apr 13 05:44:44 nurier svnserve[1961]: DIGEST-MD5 common mech free
Apr 13 05:44:44 nurier systemd[1]: Started LSB: Start svnserve.
Process 확인
> ps -ef | grep svnserve
root 1963 1 0 05:44 ? 00:00:00 /usr/bin/svnserve -d -r /data/svn/repositoryr
○ 접속 시도
이제 svn 접근이 가능합니다.
svn://192.168.40.100/test
728x90
반응형
'공부 > 기타' 카테고리의 다른 글
[IDE] IntelliJ, Eclipse 자주 쓰는 단축키 모음 (0) | 2024.12.24 |
---|---|
[Ubuntu] SSH Key 접속하기 (SSH 자동접속) (0) | 2021.04.15 |
[Ubuntu] 우분투 네트워크 설정 ( 고정 IP ) (0) | 2021.04.13 |
[Windows10] 윈도우10에서 ubuntu 설치 ( WSL ) (0) | 2021.04.12 |