Archivo de la categoría: linux

[Alfresco Tip] Crear un servicio de alfresco en linux

Buenas.

¿No os ha ocurrido a veces que te encuentras una instalación en el que Alfresco no arranca al iniciar el sistema operativo? Hay una opción sencilla para hacerlo y es creando un demonio o servicio dentro del sistema operativo que dispongáis. En mi caso os voy a explicar cómo hacerlo para Ubuntu 14.04 LTS

Los pasos que vamos a realizar son:

  • Creamos el script que se encargará de levantar nuestro alfresco
  • Configuramos las variables que nos interesan de acuerdo con nuestra instalación
  • Creamos y damos permisos a los archivos necesarios
  • Refrescamos los servicios a nivel de sistema operativo
  • ¡A probar!

¡Manos a la obra!

Antes de nada comprobaremos que no esté creado en el sistema, para ello listaremos los que existen actualmente con el siguiente comando:

ls -l /etc/init.d/

Os devolverá algo similar a estas entradas:

-rw-r–r– 1 root root 4290 mar 12  2013 apache2
-rwxr-xr-x 1 root root 6173 abr 13  2012 bluetooth
-rwxr-xr-x 1 root root 4077 may  2  2010 ssh
….

Fijaros que no haya ninguno relativo a alfresco o tomcat. Una vez comprobado que realmente no disponemos de ningún servicio, procedemos a crear uno. Para ello realizamos los siguientes pasos:

    1. $ cd /etc/init.d/
    2. $ sudo nano alfresco
      Se nos abrirá el editor de texto. Deberemos pegar el siguiente contenido:

      #!/bin/sh
      #
      # description: Alfresco init.d startup
      # author: Cristina Martin
      # date: 18.12.15
      #
      ### BEGIN INIT INFO
      # Provides:          alfresco
      # Start:             start
      # Stop:              stop
      # Restart:           restart
      # Status:            status   
      # Description:       Alfresco start|stop|restart|status
      ### END INIT INFO
      
      RETVAL=0
      ALF_USER=alfresco
      ALF_LOGS=/var/log/alfresco
      ALF_HOME=/opt/alfresco-4.2.f
      ALF_CURRENT_USER=`whoami`
      #echo starttt
      #echo $ALF_CURRENT_USER
      start () {
          cd $ALF_LOGS
          if [ $ALF_CURRENT_USER = $ALF_USER ] ; then
             $ALF_HOME/alfresco.sh start $2
          else
             su $ALF_USER -c "$ALF_HOME/alfresco.sh start $2"
          fi
          #$ALF_HOME/alfresco.sh start $2
          #/opt/alfresco/alfresco.sh start "$2"
          RETVAL=$?
          if [ -d "/var/lock/subsys" ] && [ `id -u` = 0 ] && [ $RETVAL -eq 0 ] ; then
              touch /var/lock/subsys/alfresco
          fi
      }
      
      stop () {
          if [ $ALF_CURRENT_USER = $ALF_USER ] ; then
             $ALF_HOME/alfresco.sh stop $2
          else
             su $ALF_USER -c "$ALF_HOME/alfresco.sh stop $2"
          fi
          RETVAL=$?
      }
      
      
      case "$1" in
          start)
              start "$@"
              ;;
          stop)
              stop "$@"
              ;;
          restart)
              stop "$@"
              start "$@"
              ;;
          *)
          if [ $ALF_CURRENT_USER = $ALF_USER ] ; then
             $ALF_HOME/alfresco.sh $@
          else
             su $ALF_USER -c "$ALF_HOME/alfresco.sh $@"
          fi
          RETVAL=$?
      esac
      exit $RETVAL
      
      
    3. A tener en cuenta las siguientes líneas (cambiadlas por los valores que estéis usando):
      ALF_USER=alfresco
      ALF_LOGS=/var/log/alfresco
      ALF_HOME=/opt/alfresco-5.0.a

      ALF_USER: Es el usuario que se encargará de arrancar el alfresco
      ALF_LOGS: Será la ruta donde se guardaran los logs que genere nuestro servicio
      ALF_HOME: La ruta donde está instalado nuestro Alfresco

    4. Realizamos lo siguiente:
      $ control + x
      $ Y
      $ Tecla «intro»Con esto salvaremos nuestro nuevo fichero
    5. Asignamos permisos a nuestro nuevo archivo:
      sudo chown alfresco /etc/init.d/alfresco
      sudo chmod 755 /etc/init.d/alfresco
    6. Necesitamos crear la carpeta donde salvaremos los logs que se generen con este servicio y dar permisos a nuestro usuario:
      sudo mkdir /var/log/alfresco
      sudo chown alfresco /var/log/alfresco
    7. Lo siguiente es decirle a nuestro Sistema que hemos introducido este nuevo servicio y que queremos cargarlo cuando se inicie el sistema, para ello ejecutamos la siguiente orden:
      sudo update-rc.d alfresco defaults
    8. Reiniciar el sistema para probar que funciona y se inicia Alfresco correctamente con el comando reboot

Y con esto tendremos configurado nuestra instalación de Alfresco como servicio, de forma que si el servidor sufre alguna caída, Alfresco pueda levantarse automáticamente.

Espero que os haya servido este tip ;-)

Un saludo.

[Alfresco] Como conectarse desde linux por Webdav sin perder la vida en ello

El titulo creo que lo indica todo. Os voy a mostrar una forma para conectaros através de wevdab a vuestro Alfresco, la idea es montar una unidad en vuestro equipo.

Lo primero que tenéis que hacer es instalaros davfs2 y así podemos montar «la unidad» en nuestro equipo, para ello teclead en una terminal como root:

sudo aptitude install davfs2

Una vez instalado ya podemos montarla de la siguiente forma:

mkdir /home/usuario/webdavAlfresco320
sudo mount.davfs 'http://localhost:8080/alfresco/webdav' /home/usuario/webdavAlfresco320/

¡Y listo!

Lo único que he observado es que no se puede escribir con un usuario normal (por ejemplo si queremos subir un archivo no nos dejaría). Para poder tener permisos por completo debemos ser root o hay una opción que sería poner de propietario del webdav que montemos a vuestro usuario tecleando lo siguente:

chown usuario\: -R /ruta/webdavAlfresco320/
chmod 777 /ruta/webdavAlfresco320/

Espero que os sirva de ayuda =)

Fuente: Blog de fegor.