Script para combinar grep y tail

Este script es muy interesante, nos permite con el comando “tail” ver en tiempo real el contenido de un fichero y con “grep” resaltar en colores las palabras clave por las que busquemos.

La forma de usarlo es: flowgrep fichero_donde_buscar patron_de_busqueda.

Ejemplo: ./flowgrep event.log [0-9]+ (este ejemplo es para ver diferenciados en el tail todos los numeros que salgan en el log)

Nota: le tendremos que dar antes de todo permisos de ejecucion 😀 chmod +x flowgrep

#!/bin/bash
[ $# -lt 2 ] && echo "$0 file \"pattern\"" && exit 0
tail -f $1|while read line; do echo $line|egrep --color "$2"; done

Gestionar la cola de correo en Qmail con QmHandle

La cola de correo es algo que cualquier administrador de sistemas se acostumbra a lidiar con ello. Normalmente no dá problemas y se regula muy bién por si misma si está bién configurada y optimizada para las necesidades de cada servidor. Ahora, cuando se detecta un spammer o un cliente envía email con una de sus listas, la cola de mensajes empieza a subir y los envios de emails se pueden retrasar hasta que la cola se normalice.

El sintóma típico de que suba es alguien haciendo spam. Para localizar el spammer podemos seguir los pasos comentados en este otro post.

Y para gestionar la cola de correo y limpiarla de los emails “malos” a mi me gusta mucho qmHandle.

qmHandle es una herramienta (script) escrita en perl que sirve para manejar la cola de correo de Qmail.
La última versión puede ser descargada aquí, paso a describir las distintas opciones de las que dispone:

Utilización:

qmhandle <opción>

Opciones de Qmhandle:

-a : Enviar todos los mensajes pendientes de la cola
-l : Listar las colas de correo
-L : Listar cola de correo local
-R : Listar cola de correo remota
-s : Mostrar por pantalla estadísticas
-mN : Mostrar mensaje N
-dN : Borrar mensaje N
-Stext : Borrar todos los mensajes cuyo asunto contenga «text»
-D : Borrar todos los correos de la cola (remota y local)
-V : Sacar versión por pantalla
-c : Resultados con colores
-N : Listar solo números (identificadores) de mensaje

Primero listamos cuantos mensajes en la cola (sobre todo la remota) existen.
Si hay miles, hay un spammer seguro.

Primero listo los mensajes en remoto:

# ./qmHandle -R | less

y miro los que se repiten, es habitual que hayan muchos emails con el mismo asunto. SI ves que hay
centenas de mensajes repetidos y que además vienen devueltos, lo más sencillo y rápido es borrarlos

# ./qmHandle -S”texto-a-buscar-en-asunto-y-eliminar”

Si por ejemplo el subject es “Win lottery now”, lo colocas en S”texto” y te los borrará automaticamente.
Si buscasa la palabra “failure” en el subject, ya te cargas unos cuantos.

Cuidado porque Qmhandle para el servicio qmail y si tiene algún problema lo deja parado y no lo arranca.

Como usar aplicaciones de Android en Ubuntu

Paso 1.- Descargamos – Android SDK 1.5 (160 MB )

Paso 2.- Instalaremos todos los paquetes necesarios, para ello abre una terminal y teclea

sudo apt-get install openjdk-6-jre

Paso 3.- Extraemos el archivo que descargamos en el paso 1 lo guardamos en nuestra carpeta personal y en la terminal tecleamos:

cd ~/android-sdk-linux_x86-1.5_r2/tools

Paso 4.- Crearemos una tarjeta SD virtual de 2GB:

./mksdcard 2048M SDCard1

Paso 5.- Ahora vamos a crear nuestro dispositivo virtual Android:

./android create avd -n virtualandroid -t 2

Nota: Puedes ponerle el nombre que desees reemplazando virtualandr por lo que tu quieras.

Paso 6.- Crearemos un lanzador para acceder fácilmente a nuestro dispositivo virtual, para ello ve al Escritorio y haz clic derecho en un espacio libre, selecciona la opción «Crear un lanzador».

Se abrirá una ventana con varias opciones, en el área de Comando escribe la siguiente línea, reemplazando las palabras en negrita por las que correspondan:

/home/TUUSUARIO/android-sdk-linux_x86-1.5_r2/tools/emulator @kaeltas -sdcard /home/TUUSARIO/android-sdk-linux_x86-1.5_r2/tools/SDCard1

Listo eso es todo, ahora para ejecutar aplicaciones en Android bastará con hacer doble clic en el lanzador y se iniciará el emulador de Android.

Usar HTC Magic G2 como modem y sin acceso root

En este pequeño how to os voy a enseñar como usar el HTC MAGIC G2 como modem y sin necesidad de tener acceso de root ni hacer cosas complicadas para unos y fáciles para otros, yo opto por hacer las cosas lo más faciles posibles y para todo el mundo, a si que intentare hacer este how to lo más ameno posible para todo el mundo.
Requerimientos mínimos antes de empezar:

  • Cable miniUSB para conectar HTC MAGIC G2 con el ordenador
  • Descargamos el programa en cuestion que va a hacer compartir la conexíon de internet nuestro móvil HTC Magic G2 con el ordenador

http://azilink.googlecode.com/files/azilink-2.0.2.apk

  • Descargamos OpenVPN v2.1 que va a ser el encargado de que el ordenador realice la conexión con el software Azilink que es el que comparte la conexión en el HTC Magic G2
  • Si tenemos ya bajado el Android SDK e instalado los drivers para el interface ADB y su shell correspondiente no hace falta que nos bajemos http://azilink.googlecode.com/files/azilink-2.0.2.zip que contiene la linea de comandos ADB y los drivers correspodientes para la interface ADB de nuestro HTC Magic G2

Pasos a seguir para usar HTC MAGIC G2 como modem sin acceso root

  • Instalamos por completo OpenVPN (con todas las opciones que nos da en la instalación), al terminar la instalacion procederemos a hacer el archivo de configuración con el que OpenVPN cuando le demos a «Connect» realizara la conexión con el HTC Magic G2.

El archivo de configuración yo lo copie de la sección About dentro del Azilink debido a que me lo preinstale para ver como funcionaba y tal el Azilink pero vosotros lo podeis copiar y pegar el archivo azilink.ovpn dentro del azilink-2.0.2.zip que nos hemos bajado antes y ponerlo dentro de la carpeta de instalación del OpenVPN que normalmente en windows esta en C:\Archivos de programa\OpenVPN\config

  • Activamos el modo DEPURACIÓN USB (USB DEBUGGING) en el HTC Magic G2 desde Ajustes > Aplicaciones – Desarrollo – Depuración USB  (Activado con stick marcado en verde)
  • Instalamos el driver de nuestro HTC MAGIC G2 (nos pasamos este paso si lo tenemos ya correctamente funcionando)

Os dejo este link para los que no hayan conectado el HTC Magic al ordenador ni hayan instalando ningun driver en su ordenador, sigan los pasos de este pequeño manual http://www.unandroideenvodafone.com/noticia.php?id_post=34

  • Instalamos el Azilink en nuestro HTC Magic G2, yo conozco dos formas una es por la shell ADB que posteriormente vamos a tener que usar para abrir los puertos de nuestro HTC Magic G2 y hacer link con el ordenador y la otra que es la mas fácil es poner nuestra htc magic en modo de almacenamiento que es cuando activamos el modo USB en nuestra htc magic y subimos el archivo http://azilink.googlecode.com/files/azilink-2.0.2.apk a nuestra SD dentro de la HTC MAGIC, desactivamos el modo almacenamiento nos vamos al gestor de ficheros que tengamos instalado en nuestra htc magic g2, vamos a la carpeta donde pone sdcard\ y ally tenemos el archivo azilink.apk lo instalamos el programita (no ocupada casi nada) y listo ya tenemos el azilink instalado en nuestro HTC MAGIC G2
  • Abrimos los puertos de HTC MAGIC G2 que azilink usara para compartir la conexión con el ordenador.

Abrimos una cmd de windows y nos vamos a la ruta donde tengamos el adb.exe que hemos instalado con el SDK de android o hemos extraido mediante el zip de http://azilink.googlecode.com/files/azilink-2.0.2.zip
una vez nos situamos en la misma ruta que el adb.exe tipeamos «adb forward tcp:41927 tcp:41927» sin las comillas. despues de tipear eso no nos debe salir «error: device not found» si nos saliese eso esque no tenemos instalados correctamente los drivers de nuestro HTC Magic G2 y por consiguiente el interface ADB que se nos debe de mostrar en el administrador de dispositivos de windows

  • En el HTC Magic abrimos Azilink y marcamos Service active
  • Vamos al ordenador abrimos OPENVPN GUI (esta en INICIO – PROGRAMAS – OPENVPN)(se nos muestran dos iconos nuevos a mano derecha al lado del reloj de windows, uno es de la tarjeta de red virtual que nos ha instalado el OpenVPN y otro icono parecido al de la tarjeta de red es del OpenVPN que si le clicamos con el boton derecho del raton tiene muchas opciones una de ellas Connect, Disconnect,Show status, View log, Edit config….) pues bien le damos a Connect si el OpenVPN vemos que esta parado y el icono esta con las dos pantallas en rojo, cuando el OpenVPN se conecta sale un pequeño globito que dice «config is now connect Assigned IP : 192.168.56.2″ y las dos pantallitas del icono se ponen en verde, si miramos nuestro el Azilink en HTC Magic G2 vemos que pone Status Connected to host y abajo nos pone los bytes recividos, bytes enviados, bytes totales…

y nada esto es todo amigos 😀 ya podemos usar nuestro HTC MAGIC G2 como modem y sin tener acceso root


NOTA: en un ordenador con Linux conectar nuestro htc magic con OpenVPN sera igual no tiene porque cambiar la configuración, solamente cambia la manera de instalar del driver para el htc magic en linux e posteriori instalar la interface ADB para posteriormente abrir los puertos con la shell ADB

raiola manda y no el panda

Replicación y ditribución de carga de MySQL

Replicación es la copia sincronizada entre dos o más servidores de bases de datos, de forma de que cualquiera de ellos puede entregar los mismos resultados a sus clientes. Se basa en un esquema «maestro-esclavos», en el que el maestro mantiene la base de datos original y los esclavos las copias.

El funcionamiento es el siguiente: los servidores esclavos se conectan al maestro para consultar sus logs y asg mantenerse informados de las operaciones de modificación que ha realizado (insert, delete, update, …) para a su vez poder realizarlas también ellos y mantener una replica exacta de la base de datos del servidor maestro. Los servidores esclavos sólo sirven para consultas.

Esto nos proporciona:

  • Replica automática de los datos en máquinas remotas.

  • Balanceo de la carga (de las consultas).

  • Alta disponibilidad mediante redundancia de servidores.
  • Si cae el maestro

  • Copias de seguridad en esclavos sin interrumpir maestro.
Continuar leyendo «Replicación y ditribución de carga de MySQL»