Tux y OpenERP

Tux y OpenERP
Para obtener información sobre como implantar OpenERP en tu empresa --- contactar con informaticartica@gmail.com ---

domingo, 6 de noviembre de 2011

Conectar a un servidor por SSH y el SCP o copia segura

SSH

SSH es un protocolo que utilizamos para la conexión a máquinas remotas, el significado de las siglas SSH es Secure Shell o lo que en español definiriamos como intérprete de ordenes seguro. Una de las características de este protocolo es que permite copiar datos de manera segura, podemos controlar el equipo remoto sin miedo a ser hackeados ya que la información está cifrada, pero existen métodos de ataque para el SSH, aunque resulta difícil encontrarse con uno de estos. De todas formas, para la tranquilidad del usuario existe la posibilidad de crear un tunel, opción que veremos en otro de los artículos.

Este es el uso de SSH:

# ssh usuario@IPaLaQueConectar

Introducir la contraseña del usuario que se conecta

En Ubuntu podemos conectar por ssh en el entorno gráfico:

Ejecutamos "Conectar con el servidor..." en Lugares

Elegimos en la ventana emergente "Tipo de servicio" SSH , e introducimos IP y Nombre del usuario que se va a conectar tal y como os muestro en la imagen. Una vez introducidos estos datos pulsamos Conectar.


Introducimos la contraseña del usuario que se va a conectar y pulsamos Conectar. Automáticamente se nos abrirá una ventana de Nautilus con el host remoto para que podamos manipularlo grafícamente.

SCP


Mediante el SCP conseguimos copiar archivos o directorios completos de forma segura ya que los datos viajan cifrados. Se puede usar entre un host local y uno remoto o entre 2 host remotos.

Este es el uso de SCP:

# scp archivo usuario@host_remoto:ruta/archivo_remoto

Ejemplo de uso : # scp documento.odt juani@217.217.217.217:/home/usuario/documentos/documento.odt

Copiar un directorio completo:


# scp -r directorio_a_copiar usuario@host_remoto:ruta

Ejemplo de uso:

# scp -r trabajos/ juani@217.217.217.217:/home/usuario/documentos

Esto copiará el directorio completo con todo lo que contiene de nuestro equipo en el host remoto en la ruta designada, es decir dentro de documentos copiará nuestro directorio trabajos con todo lo que contiene.

Ahora os toca probar ;)

sábado, 5 de noviembre de 2011

Instalación de Pywebdav

Algunos módulos de OpenERP requieren de la instalación del pywebdav, aquí os muestro como se ha de hacer:

1- Instalar la librería de python (python-webdav)

$ sudo apt-get install python-webdav

2- Entrar en “www.code.google.com/p/pywebdav/” y seguir las siguientes instrucciones:

$ svn co http://pywebdav.googlecode.com/svn/trunk/ pywebdav
$ cd pywebdav
$ python setup.py develop

NOTA : Si en alguno de los pasos da error, probar anteponiendo "sudo" en las órdenes, quizás vuestro usuario requiere permisos de administrador.

USO DE LA TERMINAL Parte 1 - Comandos básicos -

Remontándome a mis inicios en el mundo de la informática recuerdo como mi primer ordenador (Amstrad PC1512) tenía MS-DOS, yo tenía unos 9 o 10 años y disfrutaba tecleando comandos para poner mis juegos en marcha o para ejecutar programas como el paintbrush. Donde ha quedado ese "arkanoid.exe" jejejej ;).

Más tarde me ofrecieron un programa que se llamaba Gem desktop (un intento de Windows 3.1) y comencé a probar el entorno gráfico, al principio me encantó, todo hay que decirlo. Después pasé al Windows 3.1, Windows 95, 98, Me, 2000,Xp etc... olvidándome por completo de la consola. En la transición entre Windows 98 y Me probé el Linux Mandrake que por cierto me resultó muy agradable, pero por aquel entonces era una odisea el configurar la tarjeta gráfica y la conexión a internet y el software libre no era lo que es hoy en día. Pero seguía echando en falta la fluidez de la terminal o consola y me daba cuenta de que no aprendía informática pura y dura, me había rendido ante la facilidad y estética de Microsoft.

Hace unos años me decidí a tener Windows y Linux y así no dejar de lado ninguno de los sistemas. Pasé por Fedora, Knoppix, Debian , entre otros ,... y acabé en Ubuntu y sin Windows por varias razones que ya comentaré en otra ocasión cuando hablemos más a fondo de las ventajas de Ubuntu.

En este primer tutorial veremos los comandos más básicos para el uso de la terminal y en futuros tutoriales ampliaremos la información de cada comando con sus diferentes parámetros de uso. Al final incluiré un video para que veais los comandos en acción y los entendais mejor.


COMANDOS BÁSICOS

# ls -> Lista los elementos que contiene el directorio
# cd -> Nos movemos al directorio que designemos
             Ejemplos de uso :
             # cd /home/usuario/documentos -> Usamos la ruta absoluta para ir directamente a ese directorio.
             # cd home -> Nos movemos a uno de los directorios de arriba
             # cd .. -> Nos movemos atras o hacia abajo por los directorios
# pwd -> Nos muestra la ruta actual
# mkdir -> Creamos un nuevo directorio
# cp -> Mediante este comando podemos copiar archivos y carpetas de un lugar a otro
             Ejemplos de uso:
             # cp trabajo.odf /home/usuario/documentos -> Copiamos el documento "trabajo.odf" que se encuentra en el directorio actual al directorio documentos.
             # cp /home/usuario/Descargas/trabajo.odf /home/usuario/documentos -> Lo mismo, pero esta vez introducimos cual es la ruta absoluta en la que se encuentra el documento
             # cp /home/usuario/Descargas/* /home/usuario/documentos -> Mediante el * indicamos que queremos copiar todo lo que hay en Descargas a la ruta de destino
# rm -> Este comando sirve para borrar archivos y directorios.
              Ejemplos de uso:
              # rm trabajo.odf -> Si está en la ruta actual
              # rm /home/usuario/documentos/trabajos.odf -> Le damos la ruta absoluta en la que se encuentra el archivo a borrar
              # rm -R /home/usuario/Descargas -> Borramos el directorio Descargas con todo lo que tiene dentro, el parámetro -R indica que el borrado sea recursivo y borre también todo lo que hay dentro.

# touch -> Mediante este archivo creamos un archivo
               Ejemplos de uso:
               # touch NuevoArchivo.txt
               # touch /home/usuario/documentos/NuevoArchivo.txt

Nota: Si pulsais la tecla TAB (Tabulador) al introducir una ruta autorrellena el dato y si hay más de una coincidencia te muestra las opciones posibles.

jueves, 3 de noviembre de 2011

Administrar ambientes en OpenERP (OERPEnv)

Acabo de leer una noticia en el blog de Christian S. Rocha un artículo sobre su último desarrollo "OpenERP Environment Administrator".

http://cristiansrocha.blogspot.com/#!/2011/10/administrar-ambientes-openerp.html

Muy interesante la noticia.
Gracias Christian.

miércoles, 2 de noviembre de 2011

Servidor FTP en Ubuntu Server y document_ftp en OpenERP


En este tutorial vamos a ver como configurar el módulo document_ftp de OpenERP para que podamos tener alojados los archivos adjuntos en nuestro servidor ftp. Vamos a partir de la idea de que no disponemos de servidor ftp y queremos crear uno. El tutorial está basado en Ubuntu Server 10.04 LTS.



INSTALACIÓN DEL SERVIDOR FTP


Para montar nuestro propio ftp vamos a usar el programa “vsftpd”, para instalarlo abrimos la terminal y tecleamos:

# sudo apt-get install vsftpd

Una vez instalado, tendremos todos los paquetes disponibles y los script de arranque y parada. Los comandos para inciar, detener o reiniciar el servicio son los siguientes:

# service vsftpd start / stop / restart

Si no existiera el grupo ftp lo creamos de la siguiente manera:

# groupadd ftp

También crearemos los usuarios que estimemos necesarios para nuestro ftp:

# sudo adduser –no-create-home –shell /bin/bash [usuario] (En usuario introducimos el nombre del usuario a crear)
# useradd -d /home/ftp/juani -s /sbin/nologin \ > juani (En este caso le decimos cual va a ser el directorio de trabajo del usuario juani y le decimos también que no va a ser usuario del sistema)

Añadimos el usuario al grupo ftp:

# sudo addgroup [usuario] ftp

Ahora crearemos 2 archivos en el directorio /etc que son necesarios para la gestión de usuarios, los archivos en cuestión son “vsftpd.user_list” y “vsftpd.chroot_list”.

# cd /etc
# touch vsftpd.user_list 
 
Este archivo define los usuarios a los que vamos a enjaular. Basta con añadir el nombre de los usuarios dentro del archivo.

# touch vsftpd.chroot_list

Este otro archivo define los usuarios que harán uso del acceso de invitado.
Para editar ambos archivos podemos usar el siguiente comando:

# sudo nano vsftpd.user_list
# sudo nano vsftpd.chroot_list

El archivo de configuración de vsftpd se encuentra en el directorio /etc y se llama vsftpd.conf. Vamos a ver las opciones más importantes que tiene este archivo:


anonymous_enable=YES/NO → YES para habilitar el acceso anónimo y NO para negarlo
local_enable=YES/NO → YES para habilitar la autenticación de un usuario local y NO para negarlo
write_enable=YES/NO → YES para habilitar la escritura en el servidor ftp y NO para negarlo
ftpd_banner=Bienvenido al servidor FTP de Avanzosc → Se establece un banner de bienvenida
chroot_list_enable=/etc/vsftpd.chroot_list → Indicamos la ruta al archivo chroot_list
anon_upload _enable=YES/NO → YES para habilitar el subir contenido a un usuario anónimo y NO para negarlo
anon_mkdir_write_enable=YES/NO → YES para habilitar la creación de directorios a un usuario anónimo y NO para negarlo
local_umask=022 → Los archivos subidos quedarán con los permisos 022 (recomendado 664)
anon_max_rate=10240 → Se puede limitar la tasa de transferencia para los usuarios anónimos
local_max_rate=10240 Se puede limitar la tasa de transferencia para los usuarios autenticados
Con esto ya tenemos básicamente el servidor ftp montado, para más opciones o configuraciones se puede consultar la documentación de vsftpd (https://security.appspot.com/vsftpd/vsftpd_conf.html).

INSTALACIÓN Y CONFIGURACIÓN DOCUMENT_FTP (OPENERP)

Instalamos document_ftp en OpenERP, por defecto nos configura el servidor de ftp con la IP local y abriendo el puerto 8021.

Puede ocurrir que no este cogiendo bien la IP que le digas en el asistente, porque no grabe el cambio en el python, si ocurre esto debemos de ir al directorio de los addons, y dentro del módulo document_ftp abrir el archivo “ftpserver.py” del directorio “ftpserver”. Buscamos una línea que dice:

address = ('', 8021) → Es la línea 3095

Como podreís observar no aparece la IP del servidor ftp, donde están las comillas simples introducimos la IP del servidor y guardamos los cambios.

Nos vamos al siguiente menu: Conocimiento → Configuración → Documentos → Medio de almacenamiento. Por defecto tenemos un medio de almacenamiento definido que se llama “Database storage” y guarda los documentos en base de datos. Nosotro hemos de configurar un nuevo medio de almacenamiento que se llame por ejemplo “Documentos_ftp_prueba” el tipo lo definimos como de almacenamiento externo y en ruta definimos la raiz en la cual vamos a ir almacenando los documentos.
Haga click para ampliar

En Conocimiento → Configuración → Documentos → Directorios podemos definir diferentes directorios para nuestros documentos, tenemos que tener en cuenta de definir bien el medio de almacenamiento.
Haga click para ampliar
 
Una vez hecho esto,cualquier documento que adjuntemos a un directorio que tenga como medio de almacenamiento el que hemos definido por ejemplo nosotros como “Documentos_ftp_prueba” automáticamenta será enviado al servidor ftp.
Como nota final añadir que es IMPORTANTE que tengamos en cuenta los permisos de los directorios a usar por OpenERP.


Script para bajarse cualquier video de youtube, google video, vimeo,... etc

En este artículo os voy a enseñar un pequeñito y sencillito script que me monté para poder descargar videos de internet.

Hace unos meses me ocurrió algo que era inconcebible en mi rutina diaria, estar durante 1 mes y medio sin internet en casa. Una noche que estaba en casa de mi madre viendo algunos videos empecé a buscar algun programa para bajar videos pero ninguno me convencía del todo, y como quería tener algunos videos en mi disco duro para visualizarlos más tranquilo en mi casa se me encendió la bombilla.

Pensé que cuando está cargando el video se tiene que estar guardando en algún sitio, miré por los distintos directorios de ubuntu sin obtener resultado alguno, miré en algunas páginas donde podía estar guardándosé pero nada. Entonces se me ocurrió mirar los procesos por si encontraba el proceso que se estaba cargando.



Una vez hemos sabido cual es el proceso pensé en ir a mirar...


Y ... por fin, si entrais al directorio fd veréis que se cargan los videos en ese directorio.




Siempre sigue la misma secuencia, en mi caso el primer video siempre es el 16.

Con estos datos ya tenemos suficiente para montar nuestro pequeño script. Os escribo a continuación el script :

#! /bin/bash
    #=============================================================================================================
    # Script para bajar cualquier video online como los de youtube CREADO POR JUANI UBEDA
    # ============================================================================================================

## BEGIN CONFIG ##                                         
PROCESO=$(pidof plugin-container)
DIR_VIDEOS=/home/juani/Videos
VIDEO=cometa_elenin
NUM=16
## END CONFIG ##

cd /proc/$PROCESO/fd
cp $NUM $DIR_VIDEOS
cd $DIR_VIDEOS
mv $NUM $VIDEO.flv
sudo chmod 777 $VIDEO.flv

echo "COPIA REALIZADA"



Instrucciones para los que no sabeis crear y ejecutar un script:

Copiais el código de arriba en un editor de texto y lo guardais con un nombre, por ejemplo "bajavideos.sh", después vais al directorio donde lo tengais guardado y lo ejecutais. Imaginad que lo guardais en /home/juani/scripts.

# cd /home/juani/scripts
# sh bajavideos.sh

Y con esto ya está ;)

IMPORTANTE: En el código teneis que configurar la variable DIR_VIDEOS con la ruta donde quereis guardar vuestros videos y en VIDEO el nombre que le quereis poner.

Espero que os haya parecido interesante y útil.

Error 2 en jasper reports

Para los que os habeis encontrado con este error al ejecutar un informe jasper he de deciros que la solución es bien sencilla. Normalmente podemos encontrarnos con un par de errores, uno al subir el informe jasper al servidor , y el error suele ser el siguiente:


Este error nos dice que no tiene permisos para escribir dentro del directorio jasper_reports, exactamente en el directorio custom_reports, podemos solucionarlo estableciendole permisos menos restringentes, por ejemplo:

    # sudo chmod 777 -R jasper_reports

o bien

    # sudo chmod 777 -R jasper_reports/custom_reports

Tambien puede suceder que cuando vamos a generar nuestro informe jasper nos de el error 2 al que estamos haciendo referencia en este artículo. El error es el siguiente:


 El fatídico error 2 que te puede traer de cabeza, pues bien, la solución es bien sencilla como comentaba al principio del artículo -> Instalar el jdk en nuestro servidor, el comando es el siguiente:

    # sudo apt-get install sun-java6-jdk

Pues como veis la solución es bastante sencilla y tonta, pero el dichoso error 2 trae más de un dolor de cabeza XD

martes, 1 de noviembre de 2011

Bienvenidos a Informática ártica

El origen de este blog radica en compartir los conocimientos adquiridos en torno al software libre, en principio los pilares de las publicaciones serán Ubuntu ( Distribución Linux ) y OpenERP ( Sistema de Gestión Integral para empresas).

Espero que todo lo compartido sea de gran interés para la comunidad.

Juani