Jun 23

Escrito por: Daniel Ardila

Para el manejo de versionamiento de nuestros documentos y trabajos podemos crear repositorios que podrán ser accesibles por varios usuarios gestionándose correctamente y evitándonos trabajar con documentos desactualizados.

Para instalar el servidor podemos seguir los siguientes pasos:

  • Ejecutar: yum install subversion
  • Ejecutar: /usr/sbin/useradd svn y luego passwd svn
  • Ejecutar: su svn
  • Ingresar en /srv con: cd /srv/
  • Creamos un directorio con: mkdir svn
  • Ingresamos en el directorio: cd svn/
  • Ejecutamos: svnadmin create undermedia
  • Ingresamos en: cd undermedia/
  • Ejecutamos: ls -l
    Nos debe mostrar:
    -rw-rw-r– 1 svn svn 229 Nov 21 16:58 README.txt
    drwxrwxr-x 2 svn svn 1024 Nov 21 16:58 conf
    drwxrwsr-x 6 svn svn 1024 Nov 21 16:58 db
    -r–r–r– 1 svn svn 2 Nov 21 16:58 format
    drwxrwxr-x 2 svn svn 1024 Nov 21 16:58 hooks
    drwxrwxr-x 2 svn svn 1024 Nov 21 16:58 locks
  • Editamos el siguiente archivo: nano conf/svnserve.conf
  • Insertamos las siguientes líneas luego de [general]
    anon-access = none
    auth-access = write
    password-db = passwd
    realm = undermedia
  • Editamos el archivo de contraseñas con:nano conf/passwd
  • Ingresar al final del archivo lo siguiente:
    # Será el usuario y la contraseña para ingresar al repositorio
    #[user] = [password]
    daniel = alonso
  • Para que nuestro SVN se inicio como servicio debemos ejecutar:cd /etc/init.d/svnserve
  • Se creará un archivo vacío donde debemos insertar el siguiente código:
    #!/bin/bash
    # /etc/rc.d/init.d/subversion
    # Starts the Subversion Daemon
    # chkconfig: 2345 90 10
    # description: Subversion Daemon
    # processname: svnserve
    # pidfile: /var/lock/subsys/svnserve
    source /etc/rc.d/init.d/functions
    [ -x /usr/bin/svnserve ] || exit 1
    RETVAL=0
    prog="svnserve"
    desc="Subversion Daemon"
    pidfile="/var/run/$prog.pid"
    OPTIONS="-r /srv/svn/"
    start() {
    echo -n $"Starting $desc ($prog): "
    daemon $prog -d $OPTIONS --pid-file $pidfile
    RETVAL=$?
    if [ $RETVAL -eq 0 ]; then
    touch /var/lock/subsys/$prog
    fi
    echo
    }
    obtainpid() {
    pidstr=`pgrep $prog`
    pidcount=`awk -v name="$pidstr" 'BEGIN{split(name,a," "); print
    length(a)}'`
    if [ ! -r "$pidfile" ] && [ $pidcount -ge 2 ]; then
    pid=`awk -v name="$pidstr" 'BEGIN{split(name,a," "); print
    a[1]}'`
    echo $prog is already running and it was not started by the init
    script.
    fi
    }
    stop() {
    echo -n $"Shutting down $desc ($prog): "
    if [ -r "$pidfile" ]; then
    pid=`cat $pidfile`
    kill -s 3 $pid
    RETVAL=$?
    else
    RETVAL=1
    fi
    [ $RETVAL -eq 0 ] && success || failure
    echo
    if [ $RETVAL -eq 0 ]; then
    rm -f /var/lock/subsys/$prog
    rm -f $pidfile
    fi
    return $RETVAL
    }
    restart() {
    stop
    start
    }
    forcestop() {
    echo -n $"Shutting down $desc ($prog): "
     kill -s 3 $pid
    RETVAL=$?
    [ $RETVAL -eq 0 ] && success || failure
    echo
    if [ $RETVAL -eq 0 ]; then
    rm -f /var/lock/subsys/$prog
    rm -f $pidfile
    fi
     return $RETVAL
    }
    status() {
    if [ -r "$pidfile" ]; then
    pid=`cat $pidfile`
    fi
    if [ $pid ]; then
    echo "$prog (pid $pid) is running..."
    else
    echo "$prog is stopped"
    fi
    }
    obtainpid
    case "$1" in
    start)
    start
    ;;
    stop)
    stop
    ;;
    restart)
    restart
    RETVAL=$?
    ;;
    condrestart)
    [ -e /var/lock/subsys/$prog ] && restart
    RETVAL=$?
    ;;
    status)
    status
    ;;
    forcestop)
    forcestop
    ;;
    *)
    echo $"Usage: $0 {start|stop|forcestop|restart|condrestart|status}"
    RETVAL=1
    esac
    exit $RETVAL
    

  • Ejecutamos: chkconfig svnserve on
    Podemos utilizar las funciones generales de servicios como start, restart o stop
  • Reiniciamos nuestro equipo: shutdown –r now

Otros post


Este post ha sido visto 796 veces

Escribe tú comentario

Switch to our mobile site