Joom!Fish config error: Default language is inactive!
 
Please check configuration, try to use first active language

Discalis - Blog
Discalis - Blog
Eliminar el último salto de línea de un archivo de texto
Sharing knowledge!
DATE_FORMAT_LC2
El siguiente comando elimina el último salto de línea de un archivo de texto:
$ awk '{q=p;p=$0}NR>1{print q}END{ORS = ""; print p}' archivo.txt
Esto es:
  • imprime por pantalla todas las líneas del archivo menos la última ({q=p;p=$0}NR>1{print q})
  • imprime la última línea sin el "separador de registros" (ORS = ""), es decir, sin el caracter de nueva línea
  •  
    Aumentar todas las secuencias de un esquema en una base de datos Oracle
    Sharing knowledge!
    DATE_FORMAT_LC2
    Por ejemplo, para aumentar todas las secuencias del esquema SCHEMA1 en 100000:
    select 'alter sequence '||t.sequence_name||' increment by 100000;' from all_sequences t where sequence_owner='SCHEMA1 ';

    select 'select '||t.sequence_name||'.nextval from dual;' from all_sequences t where sequence_owner='SCHEMA1 ';

    select 'alter sequence '||t.sequence_name||' increment by 1;' from all_sequences t where sequence_owner='SCHEMA1 ';
    LAST_UPDATED2
     
    Depurar errores en filtros Servlet en Tomcat
    Sharing knowledge!
    DATE_FORMAT_LC2
    Cuando ocurre algún error en la inicialización de un filtro en Tomcat (como por ejemplo cuando hay algún fallo en la inicialización de Spring) lo único que nos dice el log es:
    SEVERE: Error listenerStart

    Para tener un stacktrace tenemos que añadir en el directorio WEB-INF/clases de nuestra webapp un archivo logging.properties con lo siguiente:
    org.apache.catalina.core.ContainerBase.[Catalina].level = INFO
    org.apache.catalina.core.ContainerBase.[Catalina].handlers = java.util.logging.ConsoleHandler

    Con eso tendremos mucha más info en el log de la webapp

     
    Instalar servidor de rsync en CentOS
    Sharing knowledge!
    DATE_FORMAT_LC2
    1. Asegurarnos de que tenemos el software necesario instalado:
      yum -y install xinetd rsync

    2. Configuramos el servicio para que se inicie automáticamente al arrancar el sistema operativo:
      chkconfig --level 345 xinetd on

    3. Habilitamos rsync editando
      /etc/xinetd.d/rsync
      para que ponga disable = no.
      # default: off
      # description: The rsync server is a good addition to an ftp server, as it \
      # allows crc checksumming etc.
      service rsync
      {
      disable = no
      socket_type = stream
      wait = no
      user = root
      server = /usr/bin/rsync
      server_args = --daemon
      log_on_failure += USERID
      }

    4. Crear el archivo de configuración del demonio,
      /etc/rsyncd.conf
      . No hay ninguna plantilla en la instalación de CentOS, pero sí debería aparecer algo de ayuda en
      man rsyncd.conf
      . Un ejemplo básico:
      log file = /var/log/rsyncd.log
      pid file = /var/run/rsyncd.pid
      lock file = /var/run/rsync.lock
      [ejemplo]
      path = /una/ruta/local
      uid = nobody
      gid = nobody
      read only = no
      list = yes
      auth users = usuario_rsync
      secrets file = /etc/rsync.secrets

      En ese ejemplo podremos acceder al recurso compartido ejemplo por rsync, que se corresponderá con la ruta /una/ruta/local del servidor. Tendremos que autenticarnos con el usuario usuario_rsync, cuyos datos de acceso constan en el archivo /etc/rsync.secrets, en la forma usuario:password. Por ejemplo:
      # cat /etc/rsync.secrets
      usuario_rsync:1234

    5. Ajustamos permisos
      # chown root.root /etc/rsync*
      # chmod 600 /etc/rsync*

    6. Tras reiniciar xinetd (service xinetd restart) ya deberíamos poder conectarnos al servidor de rsync. Podemos hacer una prueba rápida con telnet:
      # telnet localhost 873
      Trying 127.0.0.1...
      Connected to localhost.localdomain (127.0.0.1).
      Escape character is '^]'.
      @RSYNCD: 29