Convirtiendo fecha Unix a fecha regular

February 4th, 2010

Algunos logs de ciertos servicios solamente proveen fecha Unix, lo cual hace un poco difícil hacerse la idea de que fecha/hora exactamente se trata.

Pero la conversión en la consola es sumamente sencilla:

Convirtiendo fecha Unix a fecha regular:

$ date -d @1265312185

Convirtiendo una fecha específica a fecha Unix:

$ date --date "Thu Feb  4 13:36:25 CST 2010" +%s

Convirtiendo fecha actual a fecha unix:

$ date +%s

Script rápido para ver uso de memoria por programa

January 29th, 2010

Hace un buen tiempo alguien me mostró un mini script con el cual se visualiza el uso de memoria en un equipo con GNU/Linux , el cual es el siguiente:

$ ps aux  | awk '{print $6" "$11,$12,$13,$14}' | egrep -v "0.*\[.*\]" | awk '{print $1/1024" Mb --> "$2,$3,$4,$5}' | sort -g

Cuya salida es parecida a la siguiente:
....
6.39062 Mb --> gnome-screensaver
6.85547 Mb --> /usr/libexec/vino-server --sm-disable
7.22656 Mb --> /usr/libexec/multiload-applet-2 --oaf-activate-iid=OAFIID:GNOME_MultiLoadApplet_Factory --oaf-ior-fd=18
7.27344 Mb --> /usr/libexec/gnome-settings-daemon
7.98438 Mb --> C:\windows\system32\explorer.exe /desktop
8.35547 Mb --> /usr/libexec/gnome-volume-manager --sm-disable
10.8438 Mb --> metacity
11.1094 Mb --> c:\Archivos de programa\Alcatel\A4980\Alcatel 4980\a4980.exe
14.7305 Mb --> vinagre
20.1914 Mb --> gnome-terminal
20.6758 Mb --> planner
21.2227 Mb --> c:\Archivos de programa\Alcatel\A4980\Alcatel 4980\a4980.exe
24.2578 Mb --> gnome-panel
25.5977 Mb --> nautilus
31.6602 Mb --> claws-mail
91.875 Mb --> gedit
109.188 Mb --> /usr/bin/X :0 -audit 0
144.84 Mb --> /usr/bin/firefox

Por cierto no recuerdo quien fue el autor original de dicho script, y si lo conocen haganmelo saber para darle crédito :D

Curiosa imitación de Windows 3.11

January 24th, 2010

Yo comencé a utilizar computadoras  con el añejo Windows 3.1x, y recuerdo que a pesar de todo, era muy estable como sistema operativo.

Pues bien, resulta que encontré por ahí un link con una imitación de Windows 3.11 el cual ha utilizado JavaScript, XHTML y Ajax y me sorprende el hecho de los grandes pasos que ha dado la informática desde los inicios de los 90s.

Y bueno, el sitio en cuestión es http://www.michaelv.org/ . Es obvio que no imita completamente el comportamiento de Windows 3.11 , pero al utilizar la "interfaz" da la sensación de estar en el viejo 3.11 .

Y me compré una cámara fotográfica

January 8th, 2010

Bueno, al fin compré una cámara y después de mucho preguntar me hice de una Canon Powershot SX120 IS , la cual es suficiente para un novato en el mundo de la fotografía como yo :D .

Canon SX120 IS

Para ser sincero, realmente desconozco el tema de las fotografías así que si alguien tiene alguna guía puntual para este mundo fotográfico, se lo agradecería mucho.

Además cree una cuenta de flickr, donde espero poner fotos de vez en cuando, he aquí una foto:

December 23rd, 2009

Seguramente muchos se sentirán identificados...howfanboysseeoperatingsystems...aunque la verdad, no deja de ser gracioso

Activando soporte Oracle Instant Client + PHP5 en Debian Linux

November 27th, 2009

Para conectarse a una base de datos Oracle con PHP 5, se puede hacer a través del "Oracle Instant Client" y el modulo oci8 de pear.

Primero se debe descargar los paquetes "Basic" y "SDK" desde http://www.oracle.com/technology/tech/oci/instantclient/instantclient.html. En mi caso, los archivos fueron

  • instantclient-basic-linux32-10.2.0.3-20061115.zip
  • instantclient-sdk-linux32-10.2.0.3-20061115.zip

Creamos directorios y descomprimimos

# mkdir -p /opt/oracle/instantclient
# cd /opt/oracle/instantclient
# unzip instantclient-basic-linux32-10.2.0.3-20061115.zip
# unzip instantclient-sdk-linux32-10.2.0.3-20061115.zip

Agregamos las librerías de oracle a las librerías del sistema

# echo /opt/oracle/instantclient >> /etc/ld.so.conf
# ldconfig

Creamos los vínculos simbólicos en caso de que el comando anterior no lo haya hecho:

# cd instantclient_10_2
# ln -s libclntsh.so.10.1 libclntsh.so
# ln -s libocci.so.10.1 libocci.so

Instalamos paquetes necesarios para la configuración del módulo oci8, entre ellos Pear

# apt-get install php-pear php5-dev build-essential

En teoría el comando pecl install oci8 debería de funcionar, pero aparentemente no puede trabajar con las librerías de Oracle Instanclient, así que procedemos a ejecutar los pasos manualmente

# mkdir -p /usr/local/src
# cd /usr/local/src
# pecl download oci8
# tar xfz oci8-1.3.5.tgz
# cd oci8-1.3.5
# phpize
# ./configure --with-oci8=shared,instantclient,/opt/oracle/instantclient/instantclient_10_2
# make
# make install

El nombre del archivo oci8-1.3.5.tgz cambiará dependiendo de nuevas versiones

Luego activamos el módulo oci8 en el archivo php.ini (/etc/php5/apache2/php.ini and /etc/php5/cli/php.ini), con la siguiente línea:

extension=oci8.so

Este paso tarde o temprano tendrá que ejecutarse, asi que mejor de una vez configuramos el archivo  tnsnames.ora

#  mkdir -p /opt/oracle/instantclient/instantclient_10_2/network/admin

Editamos el tnsnames.ora de acuerdo a nuestras necesidades.

# vi /opt/oracle/instantclient/instantclient_10_2/network/admin/tnsnames.ora

Ahora se procede a reiniciar Apache y listo :) , podemos auxiliarnos de phpinfo() para comprobar que el módulo oci8 está cargado.

Desactivando el “beep” o “pitido” de la consola

November 23rd, 2009

Algunas distribuciones Linux traen activado por defecto el "pitido" de la consola el cual despu és de un tiempo se hace un poco molesto.

La solución es sencilla y consiste en agregar o descomentar la siguiente linea del archivo /etc/inputrc

set bell-style none

Detalle de la instalación de snmpd en Debian

November 14th, 2009

La instalación y configuración del servicio de snmp es de lo más sencillo, pero en mi caso personal se complicó más de la cuenta en un servidor Debian.

El caso era que no funcionaba snmpwalk desde ningún otro host que no fuera el propio servidor, para lo cual revisé y modifiqué numerosas veces /etc/snmp/snmpd.conf , además de hacer múltiples pruebas para ver si había problemas con el tráfico UDP.

La solución vino del lugar más inesperado, en específico del archivo /etc/default/snmpd el cual contiene la siguiente línea:

SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'

Ese 127.0.0.1 hace que el servicio solamente funcione en localhost , ignorando cualquier directiva agentaddress que pudiera estar en /etc/snmp/snmpd.conf .

Como se puede sospechar, la solución es un

# sed -i -e 's/127.0.0.1//g' /etc/default/snmpd

Lo que me llama la atención es la posible intención de la persona que mantiene este paquete,  al hacer un cambio de este tipo sin ninguna notificación al momento de instalar snmpd.

Será que no estoy acostumbrado al modo Debian de hacer las cosas?

Nacimiento de Grupo PostgreSQL Centroamérica

November 6th, 2009

Bueno, la verdad esta es noticia vieja, ya que el Grupo PostgreSQL de Centroamérica nació a finales del 2008 , pero hasta hace poco ya tenemos un espacio en postgresql.org con una lista de correo disponible en http://archives.postgresql.org/am-central-pug/ y un portal de comunidad disponible en http://pugs.postgresql.org/view/amcentralpug , este último obviamente necesita contenido (se aceptan voluntarios).

El grupo nació con la idea de compartir ideas,  conocimientos y experiencias entre centroamericanos en base a este gran Sistema Gestor de Base de Datos

Multiples barras de tarea en Gnome

October 22nd, 2009

En la computadora del trabajo utilizo Gnome, tengo a mi disposición 2 monitores, y desde un inicio pensé que sería fantástico si Gnome soportara una barra de tareas por cada escritorio.
Al pasar del tiempo eso se me hizo necesario debido a la cantidad de consolas que utilizo (alrededor de 20) y lo incómodo que era utilizar solo la barra de tareas del monitor izquierdo.

Pues bien, la funcionalidad existe desde hace tiempo (suspiro) y es tan sencillo como lo siguiente:

1. Click derecho sobre un área despejada de la barra de tareas, "New Panel"
2. Arrastrar el panel al monitor deseado auxiliándose de la tecla Alt y el mouse
3. Click derecho sobre ese panel, seleccionando "Add to Panel"
3. Seleccionar "Window list", click en "Add"
4. Disfrutar la nueva barra.

Realmente es tan fácil como debería de ser y resulta muy cómodo
PD: Tengo mi Gnome en Inglés