Leyendo un post del amigo Oliver en http://orvtech.com/ titulado Los zombis podrían estar consumiendo tu procesador en este instante, lo encontré bastante interesante. y pues quise llegar un poco mas allá de lo que nos menciona nuestro amigo.

Oliver sostiene que “un proceso zombi es un proceso que ha completado su ejecución pero aun tiene una entrada en la tabla de procesos. Esta entrada aun es necesitada para permitir la lectura del estado de su estado de salida. El Termino zombi se deriva de la definición de un muerto viviente (se acuerdan de esa película?). Para ponerlo en términos simples y un poco mas técnicos, un proceso hijo ha terminado pero aun no se ha eliminado de la tabla de procesos y el comando kill no tiene efectos sobre él”.

Para identificarlos lo que tienes que teclear el comando “top” en su consola:

user@equipo$ top

Y obtendras en la parte superior un item que describe las tareas, entre las que encontramos la etiqueta Zombie, y la cantidad encontrados.

Oliver nos menciona que los procesos que tiene estado Z son los que estamos buscando, y pueden ser listados de la siguiente manera:

user@equipo$ ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]' 

Obteniendo el pid del proceso. Pero a los Zombies no podemos “killiarlos” con un simple kill, y es por esto que utilizaremos el parametro “hub”, para darles funckete de la siquiente manera.

user@equipo$ kill -HUP `ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]' | awk '{print $2}'`

Y listo.. ya hemos matado los zombies de nuestro equipo. Solo me he dado a la tarea de dar a conocer como matar el proceso, pero recomiendo que eches un vistazo al post de Oliver en el siguiente link Articulo de Zombis de Orvtech

… Saludos

El sábado 03 de marzo @calugos y yo estuvimos realizando el Curso de Robótica Didáctica con Hardware Libre, el mismo fue dictado por Joan Espinoza, gran activista del movimiento Software Libre y  Promotor del Proyecto Nacional de Hardware Libre PingüinoVE y dictado en las instalaciones de NetLynx.

El curso cuenta con un contenido bastante amplio, que va desde la concientización del uso de la tecnología y apropiación del conocimiento como parte de la educación que se debe tener en el país, para las nuevas generaciones que se están formando en el país.

Luego de la concientización, continua con una breve pero muy completa explicación de lo que es Pingüino y sus componente electrónicos, siguiendo con la respectiva programación que debe realizarse para hacerlo funcionar y la aplicación adaptada para ello, finalizando con la construcción del Robot Didacta.-

De los principales detalles que quiero resaltar están: 
*- primero la sencillez con que se realiza tanto el armado del robot como la programación del mismo, principalmente por la manera como Joan Espinoza plantea el contenido, presentando además las utilidades prácticas del mismo, 
*- segundo, aún cuando no se tengan mayores conocimientos electrónicos o de programación no son impedimento para entender y salir con las herramientas para llevar a cabo los objetivos del curso, armar tu robot,
*- tercero, la importancia que le da Joan Espinoza al idioma español, eso es algo que aplaudo al 100%, es entendible que la mayoría de las guías, instrucciones, manuales, entre otros, están en ese idioma, es importante saberlo y entenderlo pero precisamente hasta cuando mas inglés, donde quedan las personas que por razones ajenas a su voluntad no ha tenido la oportunidad de aprenderlo, es IMPORTANTE hacer documentación en español, es importante llevar el mensaje en nuestra lengua principal y asi abrir espacios para tod@s.-

Extensivas felicitaciones a NetLynx por dictar este tipo de cursos y a PingüinoVE por llevar esta iniciativa a todos los rincones del país, es 100% necesario... GRACIAS TOTALES.-

Para información del curso en Caracas: NetLynx
Página del Proyecto: http://www.pinguino.org.ve/
PingüinoVE en identica: @pinguinove
PingüinoVE en twitter: @pinguinove
Debconf 12

Debconf 12

Pues eso, ya tengo los tiquetes comprados y la gestión en la empresa para asistir a la Debconf 12 en Nicaragua, del 8 al 14 de Julio de 2012 (Aunque planeo llegar el 5 de Julio). Espero además colaborar de alguna manera con el equipo local.

Aún hay muchas formas de ayudar a la realización de este evento, así no asistas: http://debconf12.debconf.org/helpus.xhtml

Tengo ya unos días tratando de recordar y averiguar cuando fue que empecé a usar Twitter y solo consigo paginas que no me inspiran mucha confianza, que se ofrecen para darte esta información.

Revisando la documentación de la API de esta red social, conseguí como hacerlo aunque no esta explícitamente documentado. Esta información del usuario se envía cada vez que uno hace una petición por su timeline usando grep, awk, tr y curl fácilmente se puede ver cuando se creó la cuenta.

cuando fue creada una cuenta en twitter

Este script muestra cuando fue creada la cuenta además de cuantas personas sigue, cuantos lo siguen y cuantos twits ha publicado:

#!/bin/bash
curl -s "https://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=true&screen_name=$1&count=0" | tr ',' '\n' | grep  \"created_at\" | tail -n 1
curl -s "https://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=true&screen_name=$1&count=0" | tr ',' '\n' | grep -m2 -E 'friends_count|statuses_count|followers_count'

Como ven el script acepta un parámetro que para que funcione correctamente debe de ser el handle que en mi caso es orvtech, para ver mi información pueden ejecutar:

./twitter-creado.sh orvtech "created_at":"Thu Apr 12 21:35:06 +0000 2007" "friends_count":236 "statuses_count":5065 "followers_count":251

Estoy seguro que se puede optimizar incluso remplazar esas dos peticiones web por una sola y remplazar el tr, grep y el tail con una sola instrucción de awk pero solo quería demostrar como hacerlo. Si quieren aprender mas del API de twitter pueden visitar https://dev.twitter.com/docs.