Acceso a SQLServer desde Ubuntu

Para acceder a una base de datos SQLServer o Sybase la mejor opción es instalar los drivers TDS (Tabular Data Stream) http://en.wikipedia.org/wiki/Tabular_Data_Stream.

Hay que recordar que SQLServer de Microsoft es una versión propia de la base de datos de Sybase, por lo que comparte algunas de sus características, entre las cuales se encuentra la posibilidad de acceder a ellas mediante el driver TDS de ODBC.

Instalación de paquetes

Instalamos tdsodbc y también sqsh, que es un shell de consultas SQL pensado para sustituir al antiguo isql que se usaba originalmente para hacer querys a las bases de datos de Sybase.

$ sudo apt-get install libsybdb5 freetds-common php5-sybase sqsh unixodbc unixodbc-bin tdsodbc
/etc/init.d/apache2 restart

Ficheros de configuración

/etc/odbcinst.ini

[ODBC Drivers]
     TDS = Installed

[TDS]
     Driver = /usr/lib/odbc/libtdsodbc.so
     Setup = /usr/lib/odbc/libtdsS.so

/etc/odbc.ini

[ODBC Data Sources]
     SQLSERVER_ODBC = TDS

[SQLSERVER_ODBC]
     Driver = /usr/lib/odbc/libtdsodbc.so
     Description = Test ODBC
     Host = localhost
     ServerType = SQLServer
     FetchBufferSize = 00
     Username = UserHM
     UID = UserHM
     Password = HMuser8520
     Database = HostMonitor
     ServerOptions =
     ConnectOptions =
     Options =
     ReadOnly = no

/etc/freetds/freetds.conf

[global]
     # TDS protocol version
     tds version = 4.2

[SQLSERVER_TDS]
     # Version 8.0 para SQL Server 2000
     # Version 7.0 para SQL Server 7
     # Version 6.0 para SQL Server 6
     host = 194.179.23.1
     port = 1433
     tds version = 8.0

Prueba de conectividad TDS

$ sqsh -S 194.179.23.1 -U usuario -P password -D database
sqsh-2.1 Copyright (C) 1995-2001 Scott C. Gray
This is free software with ABSOLUTELY NO WARRANTY
For more information type 'warranty'
1>

Prueba de conectividad ODBC

$ isql -v SQLSERVER_ODBC usuario password
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>

Acceso desde PHP

$sock=mssql_connect("SQLSERVER_TDS","usuario","password");
mssql_select_db("database",$sock);
$SQL = "select * from tabla";
$result= mssql_query($SQL);
while ($row = mssql_fetch_array($result)) {
        echo $row['id_tabla'] . " " . $row['campo1'] . " " . $row['campo2'] . "n";
}

Cómo arreglar Plymouth en Ubuntu 10.10

Tras la instalación del driver de video en Ubuntu 10.10, el plymouth sufre una desagradable modificación, perdiendo su adecuada y debida resolución cambiando la animación original por texto o imágenes de otros temas. Según tengo entendido, esto es un bug que “no tuvieron tiempo de solucionar”. Así que a continuación les dejo 6 pasos para solucionarlo.

Ejecutamos en una terminal los siguientes comandos y modificaciones:

sudo apt-get install v86d

sudo gedit /etc/default/grub

Reemplazamos la línea 9

GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”

Por esto

GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash nomodeset video=uvesafb:mode_option=1280×1024-24,mtrr=3,scroll=ywrap”

Reemplazamos la línea 18

#GRUB_GFXMODE=640×480

Por esto

GRUB_GFXMODE=1280×1024

sudo gedit /etc/initramfs-tools/modules

Agregamos al final y guardamos los cambios

uvesafb mode_option=1280×1024-24 mtrr=3 scroll=ywrap

echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash

sudo update-grub2

sudo update-initramfs -u

Reiniciamos y listo! ahora nuestro plymouth debe verse con la configuración original

Se puede “jugar” con la resolución (poner la misma en todos los archivos) hasta elegir la más adecuada para tu hardware.

Ahora si de lo que se trata es cambiar el tema con el que inicia el plymouth lo que debemos hacer es instalar los temas disponibles en el repositorio.

sudo apt-get install plymouth-theme*

A continuación debemos elegir el tema que vamos a utilizar:

sudo update-alternatives –config default.plymouth

Guardamos el cambio para el inicio del sistema

sudo update-initramfs -u

Reiniciamos y listo!

Generar y cargar respaldo de cliente de correo Evolution

Les quiero compartir como realizar un respaldo de nuestro cliente de correo Evolution, esto es muy util cuando necesitamos cambiar nuestro equipo o distribucion, a fin de no perder nuestros mails, tareas, contactos, calendarios y de mas.

Anteriormente solo con copiar la carpeta .evolution de nuestro home bastaba, pero ahora ya no es así, les dejo la receta:

Sistema origen:

Versión de Ubuntu: 10.10 32 bits

Versión de evolution: 2.32.2

Sistema destino

Versión de Ubuntu: 11.04 64 bits

Versión de evolution: 2.26.1

Procedimiento

Desde una linea de comandos en nuestro directorio home:

$evolution –force-shutdown
$tar -cvzf evolution.tar.gz .evolution .gconf/apps/evolution

Con esto hemos respaldado la carpeta .evolution de nuestro home, asi como las configuraciones personales, tales como firmas y contactos.

Ahora en nuestro equipo destino dentro de nuestro directorio home solo bastara realizar:

$evolution –force-shutdown

$gconftool-2 –shutdown

$tar -xvzf evolution.tar.gz

Abrimos evolution y pues todo esta ahi.

Espero ayude a quien necesite ó requiera probar otra distro y/o va a cambiar de equipo.

Instalar soporte para BD Informix en Ubuntu Server 10.04 y XAMPP 1.7.4 como modulo de PHP

La instalación del PDO_INFORMIX funciono pero la experiencia con el PDO no es lo que esperaba (nunca lo había usado) así que como extraño mis connect, fetch_array y fetch_assoc, aqui les dejo como hechar a volar el modulo de Informix en PHP 5.2

Primero el ambiente:

Ubuntu Server 10.04

XAMPP for Linux 1.7.4 con su respectiva versión de desarrollo (xampp-linux-devel-1.7.4)

Despues asignamos la variable de entorno para el informix en el .profile

export INFORMIXDIR=/opt/IBM

PATH=$PATH:$INFORMIXDIR/bin

Esta debe estar seteada antes de instalar el cliente para compilar despues el modulo de informix para PHP

informix:~# export INFORMIXDIR=/opt/IBM

El cliente de informix requiere un usuario de sistema y un grupo antes de ser instalado

informix:~# addgroup –system informix

informix:~# adduser –system informix –ingroup informix

Los paquetes que debemos instalar son: default-jdk rpm make subversion

El cliente de Informix viene con una JVM pero a mi dio error al instalarlo, asi que instalar el ambiente de Java funciono bien para mi.

informix:~# apt-get install default-jdk rpm make subversion

Creamos las carpetas para instalar el cliente de Informix y php_infomix

informix:# mkdir informix_client

infomix:# mkdir php_informix

Descargamos el cliente de Informix en el directorio, hasta donde se no hay manera de realizar esto por consola, yo me registre en IBM y descargue un free trial, el paquete que use lo encontre en el serach del site de IBM como IBM Informix Client SDK V3.00.FC3 for Linux (x86) RHEL 4, 64bit

El archivo que descargue fue clientsdk.3.00.FC3DE.LINUX.tar, el cual despues pase por usb a mi Ubuntu server en el directorios de informix client.

Descomprimimos el cliente

informix:~/informix_client# tar -xvf clientsdk.3.00.FC3DE.LINUX.tar

Corremos el instaaldor del installclientsdk.

informix:~/informix_client# ./installclientsdk

Es necesario cambiar la ruta de instalacion yo utilice /opt/IBM/

De nuevo debemos aceptar un acuerdo de licencia y avanzar en el installer.

Una ves instaaldo el cliente nos movemos al directorio de php_informix.

informix:~/informix_client# cd ../php_informix

Aqui descragamos lso fuentes de php_informix desde svn.

informix:~/php_informix# svn checkout http://svn.php.net/repository/pecl/informix/trunk/

nos movemos al directorio trunk

informix:~/php_informix# cd trunk

Ahora demos configurar e instalar el modulo de Informix.

informix:~/php_informix/trunk# /opt/lampp/bin/phpize –with-php-config=/opt/lampp/bin/php-config

informix:~/php_informix/trunk# ./configure –with-php-config=/opt/lampp/bin/php-config

Antes de seguirnos de filo con el make del modulo, debemos editar el Makefile para asegurarnos que el modulo esta ligado con la libreria de Informix checkapi.o, de otra manera si usamos el modulo nos mandar error de undefined symbol: ifx_checkAPI.

Editamos el Makefile y reemplazamos el valor de la directiva INFORMIX_SHARED_LIBADD con:

-Wl,-rpath,/opt/IBM/informix/lib/esql -L/opt/IBM/informix/lib/esql -Wl,-rpath,/opt/IBM/informix/lib -L/opt/IBM/informix/lib -lifsql -lifasf -lifgen -lifos -lifgls -ldl -lcrypt /opt/IBM/lib/esql/checkapi.o -lifglx

Ahora si podemos construir e instalar el modulo Informix:

informix:~/php_informix/trunk# make && make install

Este debera de instalarse en /usr/lib/php5/20060613. Debemos verificar que este apunta correctamente a la libreria de Informix checkapi.o, parea esto usamos el comando nm , el resultado debe arrojarnos algo como:

informix:~/php_informix/trunk# nm /usr/lib/php5/20060613/informix.so | grep ifx_checkAPI

000000000000bef0 T ifx_checkAPI

Para agregar y habilitar el modulo debemos editar el archivo php.ini que se encuentra en /opt/lampp/etc/

informix:/# nano /opt/lampp/etc/php.ini

# configuration for php INFORMIX module
extension=informix.so

El valor puede ser informix.so o si les manda error traten con “informix.so”

Por supuesto para lograr una conexión aun debemos editar /opt/IBM/etc/sqlhosts, /etc/hosts, y /etc/services todos estos deben tener la configuración para apuntar al server de informix. Además es necesario setear la variable de ambiente para apache INFORMIXDIR en /etc/apache2/apache2.conf.

Instalar soporte para BD Informix en Ubuntu Server 10.04 y XAMPP 1.7.4 usando conexion como PDO

A continuación detallo los pasos necesarios para habilitar las funciones de Informix para PHP en un equipo con Ubuntu 10.04 y XAMPP 1.7.4

  1. Instalar CSDK 3.00.UC1 (o posterior)
  2. Descargar y extraer el paquete XAMPP 1.7.4
  3. Descargar y extraer PDO_INFORMIX 1.1.0
  4. Configurar PDO_INFORMIX
  5. Actualizar el archivo de configuración de PHP
  6. Validar Y PROBAR el soporte de INFORMIX en PHP

1.Instalación de Informix Client SDK

Si no está instalado, debemos instalar el Client SDK de INFORMIX y establecer INFORMIXDIR como variable de entorno que apunte a la ruta donde se encuentra instalado el CSDK.

Para instalar Informix CSDK, debemos extraer los archivos del producto y ejecutar como root installclientsdk. Siguiendo las instrucciones en pantalla.

Importante: Este tutorial solo funciona en instalaciones Linux-x86 es decir Linux de 32 bits ya que no existen versiones de XAMPP para 64 bits.

2.Descargar XAMPP y extraer los archivos.

Debemos instalar tanto la versión de servidor como la versión de desarrollo

Importante: El paquete de desarrollo es necesario para poder compilar el driver PDO_INFORMIX.

Para instalar, solo debemos descomprimir los paquetes de XAMPP en el directorio /opt utilizando el comando

       tar xvfz xvfz xampp-linux-1.7.4.tar.gz -C /opt
       tar xvfz xampp-linux-DEVEl-1.7.4.tar.gz -C /opt

 

  • Nuestro servidor XAMPP se encuentra ahora instalado en el directorio /opt/lampp

3.Descargar y extraer PDO_INFORMIX

  • Descomprimimos el archivo PDO_INFORMIX en el directorio /opt/lampp/lib/php/extensions
     tar xvfz PDO_INFORMIX-1.1.0.tgz -C /opt/lampp/lib/php/extensions/

4.Configurar PDO_INFORMIX

  • Establecer INFORMIXDIR como variable de entorno apuntando a la ruta donde el Informix Client SDK está instalado.
  • Asegúrense de que los archivos ejecutables PHP y phpize se encuentran en la ruta /opt/lampp/bin
  • Para configurar el módulo PDO_INFORMIX,  debemos ejecutar los siguientes comandos:
      cd/opt/lampp/lib/php/extensions/PDO_INFORMIX-1.1.0
      /opt/lampp/bin/phpize
      ./configure --with-php-config=/opt/lampp/bin/php-config
      make
      make install

Los comandos nos deben mostrar estas pantallas de salida

/opt/lampp/bin/phpize

Esta ilustración es una captura de pantalla después de ejecutar el directorio / opt / lampp / bin / phpize.

./configure

Esta ilustración es una captura de pantalla después de ejecutar el comando. / Configure.

make y make install

Esta ilustración es una captura de pantalla después de ejecutar los comandos de hacer.

  • Después de ejecutar «make install«, debemos verificar que se genero el archivo pdo_informix.so en el directorio /opt/ lampp/lib/php/extensións/no-Debug-nen-zTS-20060613 /

Nota: Mas información acerca del desarrollo del controlador PDO_INFORMIX en la pagina DeveloperWorks.

5.Actualizar el archivo de configuración de PHP (Php.ini)

Debemos ir ala ruta /opt /lampp/etc y abrimos el archivo php.ini con un editor de texto para habilitar el controlador Informix PDO:

    1. Buscamos la sección «Dynamic Extensions» dentro del archivo php.ini y agregamos la información de la extensión PDO_INFORMIX.

extension = «pdo_informix.so»

    1. Debemos también modificar el parámetro memory_limit e incrementarlo a por lo menos 256 MB.

Memory_limit = 256M

Instalar metasploit en Ubuntu

Después de un rato sin postear y haciendo honor a mi ultima visita al Ecuador les dejo este tutorial de como instalar metasploit en Ubuntu.

El Proyecto Metasploit es un proyecto open source de seguridad informática que proporciona información acerca de vulnerabilidades de seguridad y ayuda en tests de penetración y en el desarrollo de firmas para Sistemas de Detección de Intrusos.

Su subproyecto más conocido es el Metasploit Framework, una herramienta para desarrollar y ejecutar exploits contra una máquina remota. Otros subproyectos importantes son la bases de datos de opcodes (códigos de operación), un archivo de shellcodes, e investigación sobre seguridad. Inicialmente fue creado utilizando el lenguaje de programación de scripting Perl, aunque actualmente el Metasploit Framework ha sido escrito de nuevo completamente en el lenguaje Ruby.

En este primer articulo voy a explicar de manera sencilla como instalarlo, lo primero es instalar las dependencias necesarias, por lo tanto en una consola y como superusuario (root)

#apt-get install ruby1.8 libopenssl-ruby1.8 rails

Con lo cual tendremos las dependencias instaladas.

Ahora el segundo paso es descargar el trackball desde la pagina oficial del proyecto

Descar Metasploit

Una vez descargado vamos a tener que darle permisos de ejecución, con el siguiente comando

#chmod +x framework-3.3.3-linux-i686.run

Luego hacer que se ejecute el instalador (.run)

# ./framework-3.3.3-linux-i686.run

El instalador nos pregunta si queremos que cree un directorio para la aplicación a lo que debemos responder un si, y luego preguntara si queremos actualizarlo a la ultima versión que se encuentra en internet, otra vez mas diremos que si, y luego de unos minutos (dependiendo de la conexión a internet que tengan) vamos a tener instalado y funcionando el framework de metasploit. Para ejecutarlo haremos lo siguiente

desde la carpeta /opt/framework-3.6.0/msf3

#./msfconsole

En algunos casos, por alguna razón nos deja dentro de la carpeta del framework la carpeta msf en un archivo .zip, el cual solo debemos de descomprimir para tener acceso a la consola y demás comandos del metasploit.

Aptana Studio 2.0.5 en ubuntu

Les comento, que el wine hq después de mucho servir a la causa se amolo y ya ni reinstalándolo me deja correr mi dreamweaver (error en odbc32.dll), así que los errores de las dll’s del windor nos alcanzaron pese a que me aferre hasta con las uñas a no soltar ni mi dreamweaver ni mi fireworks (versiones 8), pero bueno al mal tiempo buena cara, me di a al tarea de buscar un editor wysiwyg tipo dreamweaver, pese a que ya conocía Scream, gphpedit y quanta, la verdad es que no le llegan ni a los talones al dreamweaver (y eso que no he visto ninguna de las versiones nuevas de adobe) pero bueno para mi si es muy importante, ya que me paso el 80% de mi tiempo tirando código pegado al dreamweaver. Me encontré entonces este editor o mas bien IDE o Studio -como lo llaman ellos- Aptana, el cual por cierto si es un IDE ya que incluye soporte para chafa aplicaciones Java, por lo que en un principio lo vi con malos ojos, pero al instalarlo note que el soporte para los distintos lenguajes -tipo phyton, java, php,- y los  manejadores de bases de datos, debe ser instalado como un add on que se debe instalar desde ls fuentes de la misma aplicación, pues sin mas preámbulo vamos a la instalación del producto en ubuntu 10.04

  • Descargamos la version 2.05 del Aptana studio aqui
  • Unzip Aptana Studio a /usr/local/aptana. Nota: revisa tus privilegios si solo root alcanza este directorio entonces solo root podrá ejecutar la aplicación y asegurate que el nombre de la carpeta en /usr/local es aptana, no apatana studio o el nombre con la version,
  • Instalar xulrunner 1.8.* (via Synaptic Package Manager o apt-get install xulrunner.)
    • Para otras distros se puede descargar  la versión 1.8 desde  https://developer.mozilla.org/En/XULRunner
    • Una ves instalado el xulrunner es necesario asegurarse que la variable $MOZILLA_FIVE_HOME apunte al directorio donde se encuentra el xulrunner 1.8
    • También necesitamos tener instalada la librería compat-libstdc++
  • Debemos crear un script que inicie tanto la aplicacion como el ambiente debemos nombrarlo runAptana y debe contener lo siguiente:
export MOZILLA_FIVE_HOME=/usr/lib/xulrunner
/usr/local/aptana/AptanaStudio
  • Le asignamos permisos de ejecución:
$ chmod +x runAptana
  • Y ejecutamos el script

Esto nos abrirá la aplicación en modo gráfico y bueno ya es cosa de picarle un rato para dar de alta los proyectos y el soporte para los diferentes lenguajes, pero de entrada para mi esta jalando súper bien, sin problemas de compatibilidad, buena velocidad, estructura de árbol para cada proyecto o sitio y conexión de ftp para publicación inmediata de código. Hasta este momento buen reemplazo para mi dreamwaver.

Utilizar 4 GB de memoria RAM sobre Ubuntu de 32 bits

Para que nuestro sistema operativo Linux Ubuntu/Kubuntu pueda utilizar los 4 gigas de memoria fisica del hardware solo debemos instalar un Kernel de servidor con soporte para esta cantidad de RAM. Instalamos el kernel del servidor de Ubuntu, tecleando:

sudo apt-get install linux-server linux-headers-server

o

sudo apt-get install linux-restricted-modules-server
sudo apt-get install linux-headers-server
sudo apt-get install linux-image-server linux-server

Reiniciamos el sistema y listo, estamos ejecutando nuestro Ubuntu de 32 bits con 4Gb de RAM. El unico problema que representa utilizar este kernel del servidor de ubuntu es que el driver restringido de nvidia se compilo para el kernel generico de escritorio y con el server no funciona!

Ventanas 3D en Ubuntu 10.04

Me han preguntado mucho acerca de los cambios en el Compiz Fusion en la versión de Ubuntu 10.04 sobretodo «por la falta» de algunos de los plugins mas comunes o mas usados como el cubo deformado o las ventanas 3d. y bueno el tema es realmente que el número de plugins y opciones de compiz a crecido y algunos de estos están dentro de un grupo de paquetes adicional conocido como plugins-extra, para habilitarlos solo debemos instalar el paquete via apt

sudo apt-get install compiz-fusion-plugins-extra