Usando Linux para muchas cosas y disfrutando de videojuegos, en dispositivos moviles, consolas y pc. Using Linux for many things and enjoying video games, mobile devices, consoles and pc

Como capturar la pantalla de tu celular Android

A veces requerimos capturar un pantallazo de nuestro celular android para compartirlo con un amigo o simplemente para explicar o mostrar una aplicacion que tenemos en el. Bueno, ya hay una aplicacion que lo permite, gratuita y con el unico pero de que el celular Android debe estar "rooted"
Instalemos por el bazar Android ShootMe y listo ya podremos capturar la pantalla en formato png.
Les comparto algunas de las imágenes del proceso en mi celular Motorola BackFlip Android 2.1 rooted






Share/Bookmark

Joomla 1.7 en Centos

Necesitan o estan pensado hacer una pagina web, no se quieren compllicar para despues mantenerla actualizada, les recomiendo Joomla, uno de los mejores CMS (content management system - sistema de manejo de contenido). Hoy veremos como se instala y configura Joomla 1.7

Requerimientos usados:
Centos 6
php 5.3
mysql 5.1
server de prueba: 192.168.1.41

-Iniciamos mysql y le colocamos una contraseña a la cuenta root de mysql
service mysqld start
/usr/bin/mysqladmin -u root password 'pass-de-entrada'
/usr/bin/mysqladmin -u root -h vej.testjoomla.com password 'pass-de-entrada'

-Activamos el inicio automático de mysqld y httpd
chkconfig mysqld on
chkconfig httpd on

-Instalamos requerimientos
yum install php-mysql

-Descargamos Joomla 1.7 y lo descomprimimos
cd /var/www/html
wget -c http://joomlacode.org/gf/download/frsrelease/15278/66554/Joomla_1.7.0-Stable-Full_Package.tar.gz

mkdir joo
cd joo
tar xzvf ../Joomla_1.7.0-Stable-Full_Package.tar.gz
rm ../Joomla_1.7.0-Stable-Full_Package.tar.gz

-Comenzamos la instalación navegando a donde lo descomprimimos
http://192.168.1.41/joo/installation/index.php

-Hacemos cambios en el php
vi /etc/php.ini
output_buffering =Off

service httpd restart

-Creamos la db en mysql
mysql -u root -p
create database joo;
exit

-La instalacion es muy automatizada, damos siguiente hasta que nos pregunte los datos de base de datos:

Tipo de base de datos: MySQL
Hospedaje: localhost
Usuario: root
Contraseña: pass-de-entrada
Base de datos: joo

Opcional: Activar capa FTP

-Nuestros datos para la pagina web

Nombre del sitio: www.sitiodeejemplo.com
Su correo electronico: pepe@gmail.com
Nombre de usuario del administrador: admin
Contraseña del administrador: pass-de-entrada
Confirmar contraseña del administrador:  pass-de-entrada

Opcional: Instalar los datos de ejemplo

Eliminar carpeta de Instalación

Y con esto ya queda instalado, pudiendo entrar a la interfaz administrativa o a la pagina web ejemplo que genera de comienzo.
Share/Bookmark

Cluster PostgreSQL 9 con Centos

Los sistemas de hoy en día requieren alta disponibilidad para poder sobrevivir a la competencia, en esto nos pueden ayudar los clusteres. Esta vez les mostrare como instalar y configurar un cluster PostgreSQL de 4 nodos con Centos. Todo el trabajo se realizara desde la cuenta root.

Requerimientos:
Centos 5.6
PostgreSQL 9.0.4

Servidores:
vepg1 - 192.168.1.37 - nodo
vepg2 - 192.168.1.38 - nodo
vepg3 - 192.168.1.39 - nodo
vepg4 - 192.168.1.40 - nodo
vepgp - 192.168.1.41 - manejador de cluster

-Instalamos, actualizamos y configuramos los 5 servers Centos 5.6
-Activar localtime en todos los servers ya que deben tener la misma hora

-Cambios en vepgp

-Descargamos e instalamos pgpool
wget -c ftp://ftp.pbone.net/mirror/ftp.pramberger.at/systems/linux/contrib/rhel5/i386/pgpool-II-3.0.4-1.el5.pp.i386.rpm
wget -c ftp://ftp.pbone.net/mirror/ftp.pramberger.at/systems/linux/contrib/rhel5/i386/pgpool-II-libs-3.0.4-1.el5.pp.i386.rpm

rpm -vi pgpool-II-libs-3.0.4-1.el5.pp.i386.rpm
rpm -vi pgpool-II-3.0.4-1.el5.pp.i386.rpm

rpm -qa|grep pgpool
pgpool-II-3.0.4-1.el5.pp
pgpool-II-libs-3.0.4-1.el5.pp

-Modificamos el file hosts del server vepgp
vi /etc/hosts
::1 localhost.localdomain localhost
127.0.0.1 localhost.localdomain localhost
# Auto-generated hostname. Please do not remove this comment.
192.168.1.41    vepgp.hyettemail.com    vepgp
192.168.1.37    vepg1.hyettemail.com    vepg1
192.168.1.38    vepg2.hyettemail.com    vepg2
192.168.1.39    vepg3.hyettemail.com    vepg3
192.168.1.40    vepg4.hyettemail.com    vepg4

-Copiamos el conf de replicacion
cd /etc/pgpool-II
cp pgpool.conf.sample-replication pgpool.conf

-Lo modificamos
vi pgpool.conf
listen_addresses = '*'
backend_hostname0 = 'vepg1'
backend_port0 = 5432
backend_weight0 = 1
backend_data_directory0 = '/data'
backend_hostname1 = 'vepg2'
backend_port1 = 5432
backend_weight1 = 1
backend_data_directory1 = '/data'
backend_hostname0 = 'vepg3'
backend_port0 = 5432
backend_weight0 = 1
backend_data_directory0 = '/data'
backend_hostname1 = 'vepg4'
backend_port1 = 5432
backend_weight1 = 1
backend_data_directory1 = '/data'

Salimos guardando y lo ejecutamos

service pgpool start

-Hacemos algunos cambios
touch /tmp/pgpool_status
chown postgres.postgres /tmp/pgpool_status
touch pool_passwd
chown postgres.postgres pool_passwd

-Descargamos pgpoolAdmin y lo descomprimimos en /var/www/html. En mi caso lo descomprimo en /var/www/html/pgpadm/

wget -c http://pgfoundry.org/frs/download.php/2964/pgpoolAdmin-3.0.3.tar.gz
chown -R apache.apache /var/www/html/pgpadm/

-Creamos un password en MD5

pg_md5 passworddeprueba
vi /etc/pgpool-II/pcp.conf
user:72b5d515911cc4e30d4696e333573727

-Instalamos php
yum install php-cli php-mbstring php-pdo php php-pgsql php-gd php-soap php-mysql php-pear php-common php-devel

-Damos restart al httpd
service httpd restart

-Apuntamos con un browser a http://192.168.1.41/pgpadm/install/phpinfo.php y verificamos que Multibyte Support y PostgreSQL Support estan Enabled

-Cambiamos permisos
chmod 777 /var/www/html/pgpadm/templates_c/
chown apache /etc/pgpool-II/pgpool.conf
chmod 644 /etc/pgpool-II/pgpool.conf
chown apache /etc/pgpool-II/pcp.conf
chmod 644 /etc/pgpool-II/pcp.conf
chown apache /etc/pgpool-II

-Ejecutamos el instalador en http://192.168.1.41/pgpadm/install/index.php

-Eliminamos el instalador despues de terminar de instalar
rm -Rf /var/www/html/pgpadm/install

-Cambios en nodos
-Excluimos los rpm de postgresql para que solo se instalen de PGDG

 cd /etc/yum.repos.d/
 vi CentOS-Base.repo

agregamos a  [base] y [updates]
exclude=postgresql*

Salimos guardando

-Instalamos el rpm del repositorio yum
wget -c http://yum.pgrpms.org/reporpms/9.0/pgdg-centos-9.0-2.noarch.rpm
rpm -vi pgdg-centos-9.0-2.noarch.rpm

yum install postgresql90-server postgresql90-plperl postgresql90-contrib compat-postgresql-libs postgresql90-odbc-debuginfo postgresql90-debuginfo postgresql90-libs postgresql90-test postgresql90-plpython postgresql90-devel postgresql90-odbc postgresql90-docs postgresql90 postgresql90-pltcl

Si nos da error:
Transaction Check Error:
  file /usr/lib/libpq.so.4.1 from install of compat-postgresql-libs-4-1PGDG.rhel5.i686 conflicts with file from package postgresql-libs-8.1.23-1.el5_6.1.i386

rpm -e --nodeps postgresql-libs

-Iniciamos posgresql en los 4 nodos
service postgresql-9.0 initdb

-Modificamos los conf para permitir conexiones desde el manejador
vi pg_hba.conf
local all all trust
host all all 127.0.0.1/32 trust
host all all 192.168.1.0/24 trust

vi postgresql.conf
listen_addresses = '*'
port = 5432

-Iniciamos el servicio de postgresql
service postgresql-9.0 start

-Creamos una db de pruebas para verificar este funcionando el cluster. Desde cualquiera de los nodos ejecutamos.

createdb -h 192.168.1.41 -p 9999 -U postgres --no-password dbtest

Si cae en el prompt sin dar ningun mensaje es que ya creo la db perfecto y el pgpool ejecuto la orden en todos los nodos creando la db replicada.





Con esto finalizamos, espero les sirva




Share/Bookmark

Como cambiar tu telefono android de 3G a 2G

Los teléfonos celulares manejan varios protocolos de datos, siendo 3G uno de los últimos implementados, este es muy bueno y con buena velocidad pero consume la batería de los teléfonos mas rápido ademas de que en algunos sitios aun no tiene soporte por parte de los operadores o carriers. 2G es mas viejo y confiable haciendo un mejor uso de la batería.
Probado en un Motorola BackFlip con Android 2.1 rooted
Descargamos del bazar Android la aplicacion gratuita AnyCut  y la instalamos.
-Ejecutamos AnyCut y elegimos New shortcut
-Elegimos Activity
-Buscamos y elegimos Phone info
-Nos saldra una ventana diciendonos el nombre que le colocara al shortcut en nuestro desktop Home del telefono, a nuestro gusto cambiamos el nombre o dejamos el default y damos Ok. Esto creara el shortcut, salimos a Home y ejecutamos el shortcut.
-Buscamos la opcion Set preferred network type y cambiamos de WCDMA only a GSM only
-Verificamos que el icono de internet cambie de 3G a E

Con este ultimo paso nuestro teléfono duplicara su capacidad de batería. Espero les sirva como a mi.

Share/Bookmark

Pagina recomendada de apk para android

Bueno, en estos dias tuve el problema de que se desaparecio el market place de mi motorola backflip Android. 
Buscando y buscando encontre una pagina muy interesante que me permitio descargar en el pc el apk del market place, enviarmelo por email y abrirlo en el motorola corrigiendo asi el problema.
Dejo esto por escrito para que igual que me sirvio a mi, les pueda ayudar a uds en algun momento.
Share/Bookmark

Comienzode Campus party 2011 Colombia

Hoy comienza una semana de Campus Party en Bogota, Colombia. Llegue a las 12.40 y me encontre la sorpresa de una fila de mas de 400 metros de largo, caras nuevas, no tan nuevas. Esperemos sea espectacular como los pasados años.
Share/Bookmark

Agregar barracuda DNSBL

En un articulo anterior les mostre como instalar y configurar un server de email con varias herramientas para hacerlo seguro y cuidarnos lo mas posible del spam. Pero todos los dias ellos se inventan mas y mas formas de burlar nuestros filtros asi que nunca esta de mas poder agregar un DNSBL mas a nuestro server.
Que ventajas nos da esto. Sencillo, nuestro server puede consultar con varios DNSBL las ip's y dominios de los equipos que conectan para enviarnos mails (incluido el de barracuda), en caso de dar positivo se rechaza la conexion y el mail no entra a nuestro server siendo mas rapido que tener que permitir que nuestras herramientas chequeen el mail (spamassassin, clamav, etc).
Este servicio es gratuito. Comenzamos creandonos una cuenta en este URL.
Hay que dar una cuenta de email activa porque ahi nos llegara un mail para confirmar la cuenta y colocar las ip's publicas de nuestros DNS, esto es importante ya que se les permitira las consultas.
Cuando ya tengamos nuestra cuenta creada nos conectamos a nuestro email server como root y hacemos los siguientes cambios.

vi /etc/postfix/main.cf

smtpd_recipient_restrictions    =  permit_mynetworks,permit_sasl_authenticated,reject_non_fqdn_hostname,reject_non_fqdn_sender,reject_non_fqdn_recipient,reject_unauth_destination,reject_unauth_pipelining,reject_invalid_hostname,reject_rbl_client list.dsbl.org,reject_rbl_client bl.spamcop.net,reject_rbl_client sbl-xbl.spamhaus.org,reject_rbl_client b.barracudacentral.org

Salimos guardando los cambios.

Reiniciamos MailScanner para que tome los cambios.

service MailScanner reload

Verificamos que este funcionando el cambio (dependiendo del trafico puede o no demorar en mostrarnos algo)

host 2.0.0.127.b.barracudacentral.org
2.0.0.127.b.barracudacentral.org has address 127.0.0.2

tail -f /var/log/maillog |grep barracuda

Share/Bookmark

Verifique su MX

En este articulo quiero recomendar el uso de un sitio para verificar la buena configuración de un dominio internet. Lo mismo para colocar una pagina web que si queremos tener email en el, nuestra zona DNS debe estar impecable o algunos sitios rechazaran nuestros mails llegando a tener una mala reputación o perdiendo información.
MXToolBox es un sitio gratuito que cuenta con una serie de herramientas para probar un dominio o ip publica.
Entre otras podremos hacer pruebas de:
SMTP
DNS
BlackList
SPF
etc, solo con escribir un dominio internet o ip publica.
Muy recomendado para los que lidiamos a diario con zonas DNS.

Si te resulto útil este articulo, se social, compártelo con otros por medio de los botones.
Disfrútenlo.
Share/Bookmark

Correccion en MailWatch

En mi nuevo server de email me ocurria que en la seccion Message Operations de Reports no me funcionaba correctamente, dandome una pagina en blanco cuando tratata de entrenar el spamassassin con varios mails de una vez.
El cambio a hacer es editar el file do_message_ops.php y cambiar la linea 41, seria:

quitar
$id = $Regs[1];
colocar
$id = str_replace("_",".",$Regs[1]);

reiniciamos apache
service httpd restart

y listo, ya funciona la opción como debe ser.

Otra correcion a hacer es para la carga de los codigos de paises GeoIP

Editamos
vi /var/www/html/mailscanner/geoip_update.php

Modificamos

dbquery("LOAD DATA INFILE

por

dbquery("LOAD DATA LOCAL INFILE

Guardamos el file y salimos. Con esto ya debe cargar correctamente. Share/Bookmark

Como actualizar su RoundCube

Ud ya tiene su webmail RoundCube instalado y funcionando pero le han reportado algunos errores, mira el site del RoundCube y ve que hay una nueva versión que corrige esos errores, entonces, actualicemos.
Suponemos que tenemos instalado y configurado según el pasado articulo. Todos los comandos los ejecutamos desde la cuenta root.
Primero descargamos la ultima versión, en mi caso la ultima en este momento es la 0.5.1

cd /var/www/html
wget -c  http://downloads.sourceforge.net/project/roundcubemail/roundcubemail/0.5.1/roundcubemail-0.5.1.tar.gz

Hacemos un backup de la configuración actual copiando el directorio y haciendo un dump de la db en mysql

cp -R roundcubemail roundcubemail.old
mysqldump -u root -p roundcubemail > /home/vmail/downloads/roundcubemail.sql

Descomprimimos la nueva versión

tar xzvf roundcubemail-0.5.1.tar.gz
mv roundcubemail-0.5.1 roundcubemail

Modificamos la conf

cd roundcubemail/config
cp db.inc.php.dist db.inc.php
cp main.inc.php.dist main.inc.php
chown -R apache.apache roundcubemail

Editamos db.inc.php y modificamos segun el backup de nuestra anterior instalacion

$rcmail_config['db_dsnw']

Editamos main.inc.php y modificamos según el backup de nuestra anterior instalación

$rcmail_config['smtp_server']
$rcmail_config['login_lc'] = false;
$rcmail_config['des_key']
$rcmail_config['product_name']
$rcmail_config['message_sort_col']
$rcmail_config['list_cols'] 
$rcmail_config['preview_pane']
$rcmail_config['logout_purge']
$rcmail_config['mime_param_folding']

Actualizamos la db en caso de cambiarse algo en su estructura, para esto miramos en el directorio SQL si hay un mysql.update.sql (en este caso porque usamos mysql) y solo ejecutamos los comandos para el upgrade de la version anterior que teniamos a la actual que estamos configurando. En mi caso estoy actualizando de la 0.4.2 asi que busco ejecutar los comandos desde 

-- Updates from version 0.4.2

Ejecutamos los comandos

mysql -u root -p
mysql>use roundcubemail;
mysql>ALTER TABLE `users` DROP INDEX `username_index`;
mysql>ALTER TABLE `users` ADD UNIQUE `username` (`username`, `mail_host`);
mysql>ALTER TABLE `contacts` MODIFY `email` varchar(255) NOT NULL;
mysql>TRUNCATE TABLE `messages`;
mysql>exit;

Y esto es todo, en caso de no funcionar el cambio, aun tenemos el backup del roundcubemail anterior con su db y podríamos devolvernos.
Share/Bookmark

Android SDK en Ubuntu y root de Motorola BackFlip

Me hice de un nuevo juguete, un celular Motorola Android BackFlip el cual viene con Android 1.5. En los siguientes temas les mostrare como actualizarlo para una version mas nueva de Android.
OJO, actualizar o cambiar el OS de un teléfono hará que pierda la garantía y si no tiene cuidado puede hasta dañar el teléfono así que mucho cuidado.
El primer paso es instalar el SDK de Android en un pc, la forma mas sencilla es hacerlo en un pc Windows, pero nosotros lo haremos en Linux. Todos los pasos los haremos desde la cuenta root.

Requerimientos:

-Linux Ubuntu 10.10 actualizado
-Sun Java JDK 6

-Descargamos el SDK y lo descomprimimos

cd /usr/local
wget -c http://dl.google.com/android/android-sdk_r07-linux_x86.tgz
tar xzvf android-sdk_r07-linux_x86.tgz
rm android-sdk_r07-linux_x86.tgz
cd android-sdk-linux_x86

-Ejecutamos el manager
tools/android

-Damos click en Available Packages e instalamos el repositorio para que nos aparezcan los demas paquetes disponibles.


-Click en Install Selected y aceptamos la licencia para comenzar a descargarlos e instalarlos.



-Descargamos el software Moto_MSN_Root.zip para hacerle root al teléfono desde este URL
-Lo descomprimimos en un directorio que nos creamos

cd /usr/local/
mkdir moto-root

-Despues debe darnos un listado parecido

drwxr-xr-x  2 root root 4096 2010-11-15 20:53 1.5
drwxr-xr-x  2 root root 4096 2010-11-15 20:53 2.1
-rw-r--r--  1 root root  325 2010-08-27 14:06 install-root.sh
-rw-r--r--  1 root root 5392 2010-08-25 04:42 rageagainstthecage-arm5.bin

-Verificamos que en la configuracion de nuestro telefonos tenemos USB degugging enabled

-Conectamos el telefono con un cable USB y debe quedar en PC Mode (Charge Only)

-Nos cambiamos al directorio donde descargamos el SDK de Android
cd /usr/local/android-sdk-linux_x86/tools/

-Verificamos conexion con el teléfono. Si responde lo siguiente, esta ok

./adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
TA537003M3    device

-Copiamos 4 archivos. OJO, colocar el ./ delante de adb o agregar el directorio al path.

./adb push /usr/local/moto-root/2.1/Superuser.apk /sdcard/Superuser.apk
535 KB/s (196521 bytes in 0.358s)

./adb push /usr/local/moto-root/2.1/su /sdcard/su
655 KB/s (26264 bytes in 0.039s)

./adb push /usr/local/moto-root/rageagainstthecage-arm5.bin /data/local/tmp/rageagainstthecage-arm5.bin
93 KB/s (5392 bytes in 0.056s)

./adb push /usr/local/moto-root/install-root.sh /data/local/tmp/install-root.sh
6 KB/s (325 bytes in 0.051s)

-Nos conectamos a un shell en el teléfono (debe caer en un $) y cambiamos atributos

./adb shell
cd /data/local/tmp
chmod 0755 rageagainstthecage-arm5.bin
chmod 0755 install-root.sh

-Aun con el telefono conectado vamos al bazar Android en el y descargamos e instalamos un terminal. Segun recomendaciones instale ConnectBot. Ya instalado lo ejecutamos, escojemos Local en el combobox y colocamos cualquier nombre para la seccion. Ejecutamos lo siguiente.

cd /data/local/tmp
./rageagainstthecage-arm5.bin

-Saldran varios mensajes, no hacemos nada hasta que nos aparezca un msg parecido.
[+] Forked 2036 childs.

-Damos enter y exit para cerrar la terminal

-Volvemos a abrir un terminal (si vamos bien debe caer en un #) y ejecutamos

/data/local/tmp/install-root.sh

-Si no imprime nada, funciono ok y ya hicimos "root" del telefono.
Share/Bookmark

Acelerando nuestro website php

Esta vez instalaremos y configuraremos eaccelerator, un software que acelera el proceso de vizualizar paginas php a tenerlas en un cache en modo compilado.
Todo lo haremos desde la cuenta root y se supone que ya tenemos funcionando un server apache u otro httpd server que funcione con php. En mi caso usare:

Centos 5.5 actualizado
php -v
PHP 5.2.10 (cli) (built: Nov 13 2009 11:24:03)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies

Apache 2.2.3-43

-Comenzamos descargando el zip mas actual de eaccelerator

cd /usr/local
wget -c http://bart.eaccelerator.net/source/0.9.6.1/eaccelerator-0.9.6.1.zip
unzip eaccelerator-0.9.6.1.zip
rm eaccelerator-0.9.6.1.zip
mv eaccelerator-0.9.6.1 eaccelerator
cd  eaccelerator

-Ejecutamos

phpize
Configuring for:
PHP Api Version:         20041225
Zend Module Api No:      20060613
Zend Extension Api No:   220060519


./configure

make

-Agregamos el directorio de modulos

vi /etc/ld.so.conf
/usr/local/eaccelerator/modules

-Activamos los modulos

ldconfig

-Instalamos


make install
Installing shared extensions:     /usr/lib/php/modules/

-Copiamos el ini

cp eaccelerator.ini /etc/php.d/

vi /etc/php.d/eaccelerator.ini
zend_extension="/usr/lib/php/modules/eaccelerator.so"
eaccelerator.shm_size = "16"
eaccelerator.cache_dir = "/tmp/eaccelerator"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.check_mtime = "1"
eaccelerator.debug = 0
eaccelerator.filter = ""
eaccelerator.shm_ttl = "0"
eaccelerator.shm_prune_period = "0"
eaccelerator.shm_only = "0"

-Creamos el directorio de cache

mkdir /tmp/eaccelerator
chmod 0777 /tmp/eaccelerator

-Damos restart al httpd

service httpd restart

-Verificamos este trabajando

php -v
PHP 5.2.10 (cli) (built: Nov 13 2009 11:24:03)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
    with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator

Con eso terminamos, disfruten un sitio php rapidooooooo :-) Share/Bookmark

RoundCube en Centos 5.5

El dia de hoy instalaremos y configuraremos roundcubemail, un webmail para nuestros emails server. En esta instalación usare el MySQL Server en Cluster que ya explique en un anterior articulo.
Todo lo haremos desde la cuenta root y contaremos con el siguiente software

Centos 5.5 actualizado
MySQL Cluster

-Descargamos la ultima versión stable a la fecha

wget -c  http://downloads.sourceforge.net/project/roundcubemail/roundcubemail/0.4.2/roundcubemail-0.4.2.tar.gz

-Descomprimimos el paquete

tar xzvf roundcubemail-0.4.2.tar.gz
mv roundcubemail-0.4.2 roundcubemail
chown -R apache.apache roundcubemail/

-Creamos una db en mysql, si su server MySQL es local, cambiar la ip por localhost

mysql -u root
mysql>CREATE DATABASE roundcubemail /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;
mysql>GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@192.168.0.18 IDENTIFIED BY 'password';
mysql>FLUSH PRIVILEGES;
mysql>quit;

-Creamos las tablas

cd roundcubemail
mysql -u root roundcubemail < SQL/mysql.initial.sql

-Actualizamos php

cd /etc/yum.repos.d
wget dev.centos.org/centos/5/CentOS-Testing.repo

yum --disablerepo=* --enablerepo=c5-testing update php php-xml php-mysql

yum install php-pecl-Fileinfo
pecl channel-update pear.php.net
pecl install fileinfo

-Agregamos a php.ini

vi /etc/php.ini
extension=fileinfo.so

-Reiniciamos httpd

service httpd restart

-Ejecutamos el instalador web


http://192.168.0.18/roundcubemail/installer/

-Si nos dice que todo esta ok, continuamos a la otra pagina. En esta pagina cambiamos el nombre de nuestro Webmail en product_name. Los defaults que trae activos por lo general son suficientes.
Tener especial cuidado al cambiar Database setup con los datos de la db que creamos anteriormente.


default_host =localhost




smtp_server = localhost



-Damos click en CREATE CONFIG con lo que nos permitira descargar los ficheros main.inc.php y db.inc.php y copiarlos en el directorio config
Damos click en Continue y con esto queda configurado nuestro webmail.
Si nos vamos a http://192.168.0.18/roundcubemail/ veremos la entrada para un usuario. Share/Bookmark

Nuevo ubuntu 10.10, mas estable

El día de hoy me decidí a usar Ubuntu 10.10 Maverick Meerkat, el cual salio el pasado mes de octubre como es costumbre cada 6 meses.
Aunque hubiera podido hacer un upgrade de mi 10.04, preferí sacar un backup y hacer una instalación desde 0.
Impresiones. El instalador fue mejorado, ahora mientras uno termina de colocar los datos para personalizar, el ya va instalando paquetes, con lo cual el tiempo de instalación se reduce, algo muy bueno a mi entender. Algo curioso, aunque le marque la opción de que bajara actualizaciones, no las bajo todas, solo los paquetes de idioma.
El mismo desktop de la versión anterior con algunos cambios, otro tipo de letra para los menus, se deja de usar F-spot a favor de Shotwell para el manejo de fotos y ya no se se instala por default gimp para gráficos. Estos programas igual están en los repositorios y solo es instalarlos si son de nuestro gusto.
Al comenzarlo a usar se me bloqueo 2 veces el firefox apagandome el monitor teniendo que dar un hard reset, apenas instale los addons que uso y el flash, el cual detecto correctamente en mi pc de AMD64, este quedo estable.
Por el momento se comporta bien, no hay grandes cambios, imagino que mas estabilidad a lo que ya había mostrado 10.04.
Share/Bookmark

Entrenando a thunderbird

Los clientes de email hoy en día cuentan con filtros para bloquear spam. Thunderbird no es la excepción y cuenta con filtros gestionados por spamassassin. Estos filtros debemos irlos entrenando para que hagan bien su trabajo, marcando los spam en la medida que lleguen y no sean detectados y viceversa, desmarcando de spam los mails ham (mail benignos, no dañinos) llegando asi a tener una buena protección. Aunque una buena protección comienza desde el servidor de email nunca esta demás tener filtros también en el email client.

Configuracion:

-Activamos el filtro en  las opciones de cuentas (Account Settings)

-Si el mail llega y no es marcado y movido automaticamente por los filtros antispam, nos paramos encima del mail dandole click y despues damos click en el boton Junk (spam) con lo cual el mail sera movido a la carpeta Junk o la que hayamos configurado para almacenarlos.
-Si es a la inversa, un mail ham (benigno, no dañino) es marcado y movido a la carpeta Junk por error, vamos a la carpeta Junk, nos paramos encima del mail dandole click y damos click en el boton Not Junk (No spam)
Esto ultimo regresara el mail a la carpeta original y entrenara al spamassassin para que no vuelva a marcar este mail como spam. En la medida que entrenen los filtros, este sera mas exacto y se equivocara menos.





Share/Bookmark

Filtrar mails con imagenes spam

Los spammers cada dia buscan formas nuevas de burlar nuestros filtros antispam y hacernos llegar molestos mails como los de Viagra. Ahora es comun que nos lleguen en formato grafico. Hoy instalaremos FuzzyOCR, un plugin que se agrega al spamassassin para poder parar estos mails.
Usaremos un server Centos 5.5 actualizado, con spamassassin.

-Comenzamos agregando el repositorio de dag.
Para un server i386:

rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

Para un server x86-64

rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm

-Instalamos dependencias

yum install netpbm gifsicle giflib giflib-utils gocr ocrad ImageMagick tesseract perl-String-Approx perl-MLDBM perl-CPAN perl-MLDBM-Sync


-Descargamos la ultima version de fuzzyocr

wget -c http://users.own-hero.net/~decoder/fuzzyocr/fuzzyocr-3.6.0.tar.gz

-Descomprimimos

tar xzvf fuzzyocr-3.6.0.tar.gz

-Copiamos

cd FuzzyOcr-3.6.0
cp FuzzyOcr.cf FuzzyOcr.scansets FuzzyOcr.preps FuzzyOcr.words FuzzyOcr.pm  /etc/mail/spamassassin/

mkdir /etc/mail/spamassassin/FuzzyOcr
cp  FuzzyOcr/* /etc/mail/spamassassin/FuzzyOcr

-Configuramos

vi /etc/mail/spamassassin/FuzzyOcr.cf

focr_global_wordlist /etc/mail/spamassassin/FuzzyOcr.words
focr_bin_helper pnmnorm, pnminvert, pamthreshold, ppmtopgm, pamtopnm
focr_bin_helper tesseract
focr_path_bin /usr/local/netpbm/bin:/usr/local/bin:/usr/bin
focr_preprocessor_file /etc/mail/spamassassin/FuzzyOcr.preps
focr_scanset_file /etc/mail/spamassassin/FuzzyOcr.scansets
focr_enable_image_hashing 2
focr_digest_db /etc/mail/spamassassin/FuzzyOcr.hashdb
focr_db_hash /etc/mail/spamassassin/FuzzyOcr.db
focr_db_safe /etc/mail/spamassassin/FuzzyOcr.safe.db
focr_db_max_days 15

-Probamos este funcionando ok

cd samples
spamassassin --debug FuzzyOcr < ocr-gif.eml > /dev/null

Jul  9 17:16:44.612 [10330] dbg: FuzzyOcr: focr_bin_helper: 'pnmnorm,pnminvert,pamthreshold,ppmtopgm,pamtopnm'
Jul  9 17:16:44.613 [10330] info: FuzzyOcr: Adding <5> new helper apps
Jul  9 17:16:44.613 [10330] dbg: FuzzyOcr: focr_bin_helper: 'tesseract'
Jul  9 17:16:44.613 [10330] info: FuzzyOcr: Adding <1> new helper apps
Jul  9 17:16:44.617 [10330] info: FuzzyOcr: Starting preprocessor parser for file "/etc/mail/spamassassin/FuzzyOcr.preps"...
Jul  9 17:16:44.617 [10330] dbg: FuzzyOcr: line: preprocessor normalize {
Jul  9 17:16:44.617 [10330] dbg: FuzzyOcr: line: command = pnmnorm
Jul  9 17:16:44.617 [10330] dbg: FuzzyOcr: line: }
Jul  9 17:16:44.618 [10330] dbg: FuzzyOcr: line: preprocessor invert {
Jul  9 17:16:44.618 [10330] dbg: FuzzyOcr: line: command = pnminvert
Jul  9 17:16:44.618 [10330] dbg: FuzzyOcr: line: }
Jul  9 17:16:44.618 [10330] dbg: FuzzyOcr: line: preprocessor ppmtopgm {
Jul  9 17:16:44.618 [10330] dbg: FuzzyOcr: line: command = ppmtopgm
Jul  9 17:16:44.618 [10330] dbg: FuzzyOcr: line: }
Jul  9 17:16:44.619 [10330] dbg: FuzzyOcr: line: preprocessor pamtopnm {
Jul  9 17:16:44.619 [10330] dbg: FuzzyOcr: line: command = pamtopnm
Jul  9 17:16:44.619 [10330] dbg: FuzzyOcr: line: }
Jul  9 17:16:44.619 [10330] dbg: FuzzyOcr: line: preprocessor pamthreshold {
Jul  9 17:16:44.619 [10330] dbg: FuzzyOcr: line: command = pamthreshold
Jul  9 17:16:44.619 [10330] dbg: FuzzyOcr: line: args = -simple -threshold 0.5
Jul  9 17:16:44.620 [10330] dbg: FuzzyOcr: line: }
Jul  9 17:16:44.620 [10330] dbg: FuzzyOcr: line: preprocessor maketiff {
Jul  9 17:16:44.620 [10330] dbg: FuzzyOcr: line: command = pnmtotiff
Jul  9 17:16:44.620 [10330] dbg: FuzzyOcr: line: args = -color -truecolor
Jul  9 17:16:44.621 [10330] dbg: FuzzyOcr: line: }
Jul  9 17:16:44.621 [10330] info: FuzzyOcr: Starting scanset parser for file "/etc/mail/spamassassin/FuzzyOcr.scansets"...
Jul  9 17:16:44.621 [10330] dbg: FuzzyOcr: line scanset ocrad {
Jul  9 17:16:44.621 [10330] dbg: FuzzyOcr: line command = $ocrad
Jul  9 17:16:44.621 [10330] dbg: FuzzyOcr: line args = -s5 $input
Jul  9 17:16:44.622 [10330] dbg: FuzzyOcr: line }
Jul  9 17:16:44.622 [10330] dbg: FuzzyOcr: line scanset ocrad-invert {
Jul  9 17:16:44.622 [10330] dbg: FuzzyOcr: line command = $ocrad
Jul  9 17:16:44.622 [10330] dbg: FuzzyOcr: line args = -s5 -i $input
Jul  9 17:16:44.622 [10330] dbg: FuzzyOcr: line }
Jul  9 17:16:44.622 [10330] dbg: FuzzyOcr: line scanset ocrad-decolorize-invert {
Jul  9 17:16:44.623 [10330] dbg: FuzzyOcr: line preprocessors = ppmtopgm, pamthreshold, pamtopnm
Jul  9 17:16:44.623 [10330] dbg: FuzzyOcr: line command = $ocrad
Jul  9 17:16:44.623 [10330] dbg: FuzzyOcr: line args = -s5 -i $input
Jul  9 17:16:44.623 [10330] dbg: FuzzyOcr: line }
Jul  9 17:16:44.623 [10330] dbg: FuzzyOcr: line scanset ocrad-decolorize {
Jul  9 17:16:44.624 [10330] dbg: FuzzyOcr: line preprocessors = ppmtopgm, pamthreshold, pamtopnm
Jul  9 17:16:44.624 [10330] dbg: FuzzyOcr: line command = $ocrad
Jul  9 17:16:44.624 [10330] dbg: FuzzyOcr: line args = -s5 $input
Jul  9 17:16:44.624 [10330] dbg: FuzzyOcr: line }
Jul  9 17:16:44.624 [10330] dbg: FuzzyOcr: line scanset gocr {
Jul  9 17:16:44.625 [10330] dbg: FuzzyOcr: line command = $gocr
Jul  9 17:16:44.625 [10330] dbg: FuzzyOcr: line args = -i $input
Jul  9 17:16:44.625 [10330] dbg: FuzzyOcr: line }
Jul  9 17:16:44.625 [10330] dbg: FuzzyOcr: line scanset gocr-180 {
Jul  9 17:16:44.625 [10330] dbg: FuzzyOcr: line command = $gocr
Jul  9 17:16:44.626 [10330] dbg: FuzzyOcr: line args = -l 180 -d 2 -i $input
Jul  9 17:16:44.626 [10330] dbg: FuzzyOcr: line }
Jul  9 17:16:46.698 [10330] info: FuzzyOcr: Searching in: /usr/local/netpbm/bin
Jul  9 17:16:46.698 [10330] info: FuzzyOcr: Searching in: /usr/local/bin
Jul  9 17:16:46.699 [10330] info: FuzzyOcr: Searching in: /usr/bin
Jul  9 17:16:46.699 [10330] info: FuzzyOcr: Using gifsicle => /usr/bin/gifsicle
Jul  9 17:16:46.700 [10330] info: FuzzyOcr: Using giffix => /usr/bin/giffix
Jul  9 17:16:46.700 [10330] info: FuzzyOcr: Using giftext => /usr/bin/giftext
Jul  9 17:16:46.700 [10330] info: FuzzyOcr: Using gifinter => /usr/bin/gifinter
Jul  9 17:16:46.701 [10330] info: FuzzyOcr: Using giftopnm => /usr/bin/giftopnm
Jul  9 17:16:46.701 [10330] info: FuzzyOcr: Using jpegtopnm => /usr/bin/jpegtopnm
Jul  9 17:16:46.701 [10330] info: FuzzyOcr: Using pngtopnm => /usr/bin/pngtopnm
Jul  9 17:16:46.702 [10330] info: FuzzyOcr: Using bmptopnm => /usr/bin/bmptopnm
Jul  9 17:16:46.702 [10330] info: FuzzyOcr: Using tifftopnm => /usr/bin/tifftopnm
Jul  9 17:16:46.703 [10330] info: FuzzyOcr: Using ppmhist => /usr/bin/ppmhist
Jul  9 17:16:46.703 [10330] info: FuzzyOcr: Using pamfile => /usr/bin/pamfile
Jul  9 17:16:46.703 [10330] info: FuzzyOcr: Using ocrad => /usr/bin/ocrad
Jul  9 17:16:46.704 [10330] info: FuzzyOcr: Using gocr => /usr/bin/gocr
Jul  9 17:16:46.704 [10330] info: FuzzyOcr: Using pnmnorm => /usr/bin/pnmnorm
Jul  9 17:16:46.705 [10330] info: FuzzyOcr: Using pnminvert => /usr/bin/pnminvert
Jul  9 17:16:46.705 [10330] info: FuzzyOcr: Using pamthreshold => /usr/bin/pamthreshold
Jul  9 17:16:46.705 [10330] info: FuzzyOcr: Using ppmtopgm => /usr/bin/ppmtopgm
Jul  9 17:16:46.706 [10330] info: FuzzyOcr: Using pamtopnm => /usr/bin/pamtopnm
Jul  9 17:16:46.706 [10330] info: FuzzyOcr: Using tesseract => /usr/bin/tesseract
Jul  9 17:16:46.706 [10330] dbg: FuzzyOcr: Threshold[max_hash] => 5
Jul  9 17:16:46.707 [10330] dbg: FuzzyOcr: Threshold[c] => 5
Jul  9 17:16:46.707 [10330] dbg: FuzzyOcr: Threshold[s] => 0.01
Jul  9 17:16:46.707 [10330] dbg: FuzzyOcr: Threshold[w] => 0.01
Jul  9 17:16:46.708 [10330] dbg: FuzzyOcr: Threshold[cn] => 0.01
Jul  9 17:16:46.708 [10330] dbg: FuzzyOcr: Threshold[h] => 0.01
Jul  9 17:16:46.709 [10330] dbg: FuzzyOcr: focr_add_score => 1
Jul  9 17:16:46.709 [10330] dbg: FuzzyOcr: focr_autodisable_negative_score => -5
Jul  9 17:16:46.709 [10330] dbg: FuzzyOcr: focr_autodisable_score => 1000
Jul  9 17:16:46.710 [10330] dbg: FuzzyOcr: focr_autosort_buffer => 10
Jul  9 17:16:46.710 [10330] dbg: FuzzyOcr: focr_autosort_scanset => 1
Jul  9 17:16:46.710 [10330] dbg: FuzzyOcr: focr_base_score => 5
Jul  9 17:16:46.711 [10330] dbg: FuzzyOcr: focr_corrupt_score => 2.5
Jul  9 17:16:46.711 [10330] dbg: FuzzyOcr: focr_corrupt_unfixable_score => 5
Jul  9 17:16:46.711 [10330] dbg: FuzzyOcr: focr_counts_required => 2
Jul  9 17:16:46.712 [10330] dbg: FuzzyOcr: focr_db_hash => /etc/mail/spamassassin/FuzzyOcr.db
Jul  9 17:16:46.712 [10330] dbg: FuzzyOcr: focr_db_max_days => 15
Jul  9 17:16:46.712 [10330] dbg: FuzzyOcr: focr_db_safe => /etc/mail/spamassassin/FuzzyOcr.safe.db
Jul  9 17:16:46.713 [10330] dbg: FuzzyOcr: focr_digest_db => /etc/mail/spamassassin/FuzzyOcr.hashdb
Jul  9 17:16:46.713 [10330] dbg: FuzzyOcr: focr_enable_image_hashing => 2
Jul  9 17:16:46.713 [10330] dbg: FuzzyOcr: focr_global_timeout => 0
Jul  9 17:16:46.714 [10330] dbg: FuzzyOcr: focr_global_wordlist => /etc/mail/spamassassin/FuzzyOcr.words
Jul  9 17:16:46.714 [10330] dbg: FuzzyOcr: focr_hashing_learn_scanned => 1
Jul  9 17:16:46.714 [10330] dbg: FuzzyOcr: focr_keep_bad_images => 0
Jul  9 17:16:46.715 [10330] dbg: FuzzyOcr: focr_log_pmsinfo => 1
Jul  9 17:16:46.715 [10330] dbg: FuzzyOcr: focr_log_stderr => 1
Jul  9 17:16:46.715 [10330] dbg: FuzzyOcr: focr_max_height => 800
Jul  9 17:16:46.716 [10330] dbg: FuzzyOcr: focr_max_width => 800
Jul  9 17:16:46.716 [10330] dbg: FuzzyOcr: focr_min_height => 4
Jul  9 17:16:46.716 [10330] dbg: FuzzyOcr: focr_min_width => 4
Jul  9 17:16:46.717 [10330] dbg: FuzzyOcr: focr_minimal_scanset => 1
Jul  9 17:16:46.717 [10330] dbg: FuzzyOcr: focr_mysql_db => FuzzyOcr
Jul  9 17:16:46.717 [10330] dbg: FuzzyOcr: focr_mysql_hash => Hash
Jul  9 17:16:46.718 [10330] dbg: FuzzyOcr: focr_mysql_host => localhost
Jul  9 17:16:46.718 [10330] dbg: FuzzyOcr: focr_mysql_port => 3306
Jul  9 17:16:46.718 [10330] dbg: FuzzyOcr: focr_mysql_safe => Safe
Jul  9 17:16:46.718 [10330] dbg: FuzzyOcr: focr_mysql_update_hash => 0
Jul  9 17:16:46.719 [10330] dbg: FuzzyOcr: focr_mysql_user => fuzzyocr
Jul  9 17:16:46.719 [10330] dbg: FuzzyOcr: focr_no_homedirs => 0
Jul  9 17:16:46.719 [10330] dbg: FuzzyOcr: focr_path_bin => /usr/local/netpbm/bin:/usr/local/bin:/usr/bin
Jul  9 17:16:46.720 [10330] dbg: FuzzyOcr: focr_pdf_maxpages => 1
Jul  9 17:16:46.720 [10330] dbg: FuzzyOcr: focr_personal_wordlist => __userstate__/FuzzyOcr.words
Jul  9 17:16:46.720 [10330] dbg: FuzzyOcr: focr_preprocessor_file => /etc/mail/spamassassin/FuzzyOcr.preps
Jul  9 17:16:46.721 [10330] dbg: FuzzyOcr: focr_scan_pdfs => 0
Jul  9 17:16:46.721 [10330] dbg: FuzzyOcr: focr_scanset_file => /etc/mail/spamassassin/FuzzyOcr.scansets
Jul  9 17:16:46.721 [10330] dbg: FuzzyOcr: focr_score_ham => 0
Jul  9 17:16:46.722 [10330] dbg: FuzzyOcr: focr_skip_bmp => 0
Jul  9 17:16:46.722 [10330] dbg: FuzzyOcr: focr_skip_gif => 0
Jul  9 17:16:46.722 [10330] dbg: FuzzyOcr: focr_skip_jpeg => 0
Jul  9 17:16:46.723 [10330] dbg: FuzzyOcr: focr_skip_png => 0
Jul  9 17:16:46.723 [10330] dbg: FuzzyOcr: focr_skip_tiff => 0
Jul  9 17:16:46.723 [10330] dbg: FuzzyOcr: focr_skip_updates => 0
Jul  9 17:16:46.723 [10330] dbg: FuzzyOcr: focr_strip_numbers => 1
Jul  9 17:16:46.724 [10330] dbg: FuzzyOcr: focr_threshold => 0.25
Jul  9 17:16:46.724 [10330] dbg: FuzzyOcr: focr_timeout => 10
Jul  9 17:16:46.724 [10330] dbg: FuzzyOcr: focr_twopass_scoring_factor => 1.5
Jul  9 17:16:46.725 [10330] dbg: FuzzyOcr: focr_unique_matches => 0
Jul  9 17:16:46.725 [10330] dbg: FuzzyOcr: focr_verbose => 1
Jul  9 17:16:46.725 [10330] dbg: FuzzyOcr: focr_wrongctype_score => 1.5
Jul  9 17:16:46.725 [10330] dbg: FuzzyOcr: focr_wrongext_score => 1.5
Jul  9 17:16:46.726 [10330] info: FuzzyOcr: Loaded preprocessor normalize: /usr/bin/pnmnorm
Jul  9 17:16:46.726 [10330] info: FuzzyOcr: Loaded preprocessor invert: /usr/bin/pnminvert
Jul  9 17:16:46.727 [10330] info: FuzzyOcr: Loaded preprocessor ppmtopgm: /usr/bin/ppmtopgm
Jul  9 17:16:46.727 [10330] info: FuzzyOcr: Loaded preprocessor pamtopnm: /usr/bin/pamtopnm
Jul  9 17:16:46.727 [10330] info: FuzzyOcr: Loaded preprocessor pamthreshold: /usr/bin/pamthreshold -simple -threshold 0.5
Jul  9 17:16:46.728 [10330] info: FuzzyOcr: Loaded preprocessor maketiff: pnmtotiff -color -truecolor
Jul  9 17:16:46.728 [10330] info: FuzzyOcr: Using scan ocrad: /usr/bin/ocrad -s5 $input
Jul  9 17:16:46.729 [10330] info: FuzzyOcr: Using scan ocrad-invert: /usr/bin/ocrad -s5 -i $input
Jul  9 17:16:46.729 [10330] info: FuzzyOcr: Using scan ocrad-decolorize-invert: /usr/bin/ocrad -s5 -i $input
Jul  9 17:16:46.729 [10330] info: FuzzyOcr: Using scan ocrad-decolorize: /usr/bin/ocrad -s5 $input
Jul  9 17:16:46.730 [10330] info: FuzzyOcr: Using scan gocr: /usr/bin/gocr -i $input
Jul  9 17:16:46.730 [10330] info: FuzzyOcr: Using scan gocr-180: /usr/bin/gocr -l 180 -d 2 -i $input
Jul  9 17:16:46.731 [10330] info: FuzzyOcr: Added <43> words from "/etc/mail/spamassassin/FuzzyOcr.words"
Jul  9 17:16:54.025 [10330] info: pyzor: [10345] error: TERMINATED, signal 15 (000f)
Jul  9 17:16:54.374 [10330] dbg: FuzzyOcr: Starting FuzzyOcr...
Jul  9 17:16:54.375 [10330] info: FuzzyOcr: Processing Message with ID "" (Clifton Ballard -> naraya_a@web.de)
Jul  9 17:16:54.376 [10330] dbg: FuzzyOcr: fname: "sbillet" => "sbillet"
Jul  9 17:16:54.377 [10330] info: FuzzyOcr: GIF: [327x549] sbillet (7239)
Jul  9 17:16:54.379 [10330] dbg: FuzzyOcr: Saved: /tmp/.spamassassin10330phhpgvtmp/sbillet
Jul  9 17:16:54.380 [10330] dbg: FuzzyOcr: Saved: /tmp/.spamassassin10330phhpgvtmp/raw.eml
Jul  9 17:16:54.380 [10330] info: FuzzyOcr: Found: 1 images
Jul  9 17:16:54.381 [10330] dbg: FuzzyOcr: pfile => /tmp/.spamassassin10330phhpgvtmp/sbillet.pnm
Jul  9 17:16:54.381 [10330] dbg: FuzzyOcr: efile => /tmp/.spamassassin10330phhpgvtmp/sbillet.err
Jul  9 17:16:54.382 [10330] dbg: FuzzyOcr: Errors to: /tmp/.spamassassin10330phhpgvtmp/raw.err
Jul  9 17:16:54.382 [10330] dbg: FuzzyOcr: File has Content-Type "image/jpeg" and no File Extension
Jul  9 17:16:54.382 [10330] info: FuzzyOcr: Found GIF header name="sbillet"
Jul  9 17:16:54.383 [10330] info: FuzzyOcr: Image has format "GIF" but content-type is "image/jpeg"
Jul  9 17:16:54.410 [10346] dbg: FuzzyOcr: Exec : /usr/bin/giftext /tmp/.spamassassin10330phhpgvtmp/sbillet
Jul  9 17:16:54.413 [10346] dbg: FuzzyOcr: Stdout: >/tmp/.spamassassin10330phhpgvtmp/giftext.info
Jul  9 17:16:54.413 [10346] dbg: FuzzyOcr: Stderr: >>/tmp/.spamassassin10330phhpgvtmp/giftext.err
Jul  9 17:16:54.413 [10330] dbg: FuzzyOcr: Saved pid: 10346
save_execute: Insecure dependency in open while running with -T switch at ../FuzzyOcr/Misc.pm line 92.
save_execute: Insecure dependency in open while running with -T switch at ../FuzzyOcr/Misc.pm line 92.
Jul  9 17:16:54.425 [10330] dbg: FuzzyOcr: Elapsed [10346]: 0.038535 sec. (/usr/bin/giftext: exit 8)
Jul  9 17:16:54.426 [10330] warn: readline() on closed filehandle INFILE at ../FuzzyOcr/Misc.pm line 205.
Jul  9 17:16:54.427 [10330] info: FuzzyOcr: Image is single non-interlaced...
Jul  9 17:16:54.447 [10347] dbg: FuzzyOcr: Exec : /usr/bin/giffix /tmp/.spamassassin10330phhpgvtmp/sbillet
Jul  9 17:16:54.450 [10347] dbg: FuzzyOcr: Stdout: >/tmp/.spamassassin10330phhpgvtmp/sbillet-fixed.gif
Jul  9 17:16:54.450 [10347] dbg: FuzzyOcr: Stderr: >>/tmp/.spamassassin10330phhpgvtmp/sbillet.err
Jul  9 17:16:54.452 [10330] dbg: FuzzyOcr: Saved pid: 10347
save_execute: Insecure dependency in open while running with -T switch at ../FuzzyOcr/Misc.pm line 92.
save_execute: Insecure dependency in open while running with -T switch at ../FuzzyOcr/Misc.pm line 92.
Jul  9 17:16:54.461 [10330] dbg: FuzzyOcr: Elapsed [10347]: 0.031494 sec. (/usr/bin/giffix: exit 8)
Jul  9 17:16:54.483 [10348] dbg: FuzzyOcr: Exec : /usr/bin/giftopnm /tmp/.spamassassin10330phhpgvtmp/sbillet-fixed.gif
Jul  9 17:16:54.484 [10330] dbg: FuzzyOcr: Saved pid: 10348
Jul  9 17:16:54.485 [10348] dbg: FuzzyOcr: Stdout: >/tmp/.spamassassin10330phhpgvtmp/sbillet.pnm
Jul  9 17:16:54.485 [10348] dbg: FuzzyOcr: Stderr: >>/tmp/.spamassassin10330phhpgvtmp/sbillet.err
save_execute: Insecure dependency in open while running with -T switch at ../FuzzyOcr/Misc.pm line 92.
save_execute: Insecure dependency in open while running with -T switch at ../FuzzyOcr/Misc.pm line 92.
Jul  9 17:16:54.496 [10330] dbg: FuzzyOcr: Elapsed [10348]: 0.031541 sec. (/usr/bin/giftopnm: exit 8)
Jul  9 17:16:54.498 [10330] error: FuzzyOcr: /usr/bin/giftopnm: Returned [2048], skipping...
Jul  9 17:16:54.500 [10330] dbg: FuzzyOcr: Remove DIR: /tmp/.spamassassin10330phhpgvtmp
Jul  9 17:16:54.500 [10330] dbg: FuzzyOcr: FuzzyOcr ending successfully...
Jul  9 17:16:54.501 [10330] dbg: FuzzyOcr: Processed in 0.126789 sec.
Share/Bookmark

Importar emails en formato mbox a thunderbird

Hoy se me presento el siguiente problema. Un usuario de webmail descargo todos sus mails en la carpeta Inbox a thunderbird 3 pero los mails en las demas carpetas, quedaron en el servidor. Despues de descargar los mbox al equipo local me sorprendo de que thunderbird bajo Linux en la opcion de Import solo permite hacerlo con Communicator 4.x.
Asi que hice lo siguiente.

Para este ejemplo usamos thunderbird 3.0.4 bajo linux, imagino que para Windows y Mac debe ser parecido en teoria.

Por ejemplo, tenemos 2 mbox:

contructora.mbox
familia.mbox

Las cuales queremos que queden en carpetas separadas bajo Local Folders.

-En Thunderbird creamos las carpetas constructora y familia bajo Local Folders

-Nos cambiamos en una consola al directorio Local Folders de Thunderbird, en mi caso es:

cd .mozilla-thunderbird/9pyl51td.default/Mail/Local\ Folders/

-Verificamos que esten creados los files de constructora y familia

ls -la
total 32984
drwxr-xr-x 3 cabrera cabrera     4096 2010-06-11 17:01 .
drwx------ 8 cabrera cabrera     4096 2010-06-11 09:49 ..
-rw------- 1 cabrera cabrera  2723606 2010-06-11 08:06 backuppc
-rw-r--r-- 1 cabrera cabrera   206035 2010-06-11 16:15 backuppc.msf
-rw------- 1 cabrera cabrera        0 2010-06-11 16:59 constructora
-rw-r--r-- 1 cabrera cabrera     1539 2010-06-11 17:00 constructora.msf
-rw------- 1 cabrera cabrera   313315 2010-06-11 12:26 Drafts
-rw-r--r-- 1 cabrera cabrera     3489 2010-06-11 16:59 Drafts.msf
-rw------- 1 cabrera cabrera        0 2010-06-11 17:01 familia
-rw-r--r-- 1 cabrera cabrera     1534 2010-06-11 17:05 familia.msf
-rw------- 1 cabrera cabrera 14445441 2010-06-11 08:12 Inbox
-rw-r--r-- 1 cabrera cabrera    99413 2010-06-11 15:58 Inbox.msf
-rw------- 1 cabrera cabrera   834883 2010-06-11 13:51 Junk
-rw-r--r-- 1 cabrera cabrera     3874 2010-06-11 17:05 Junk.msf
-rw------- 1 cabrera cabrera  2070306 2010-06-11 13:55 mailscanner
-rw-r--r-- 1 cabrera cabrera   195867 2010-06-11 16:15 mailscanner.msf
-rw------- 1 cabrera cabrera   478726 2010-06-11 13:35 mailwatch
-rw-r--r-- 1 cabrera cabrera    26082 2010-06-11 16:15 mailwatch.msf
-rw-r--r-- 1 cabrera cabrera       25 2010-06-11 15:47 msgFilterRules.dat
-rw------- 1 cabrera cabrera  3192403 2010-05-24 10:36 nintendo
-rw-r--r-- 1 cabrera cabrera     8774 2010-06-11 15:46 nintendo.msf
-rw------- 1 cabrera cabrera   337736 2010-06-08 08:10 proxmox
-rw-r--r-- 1 cabrera cabrera    31478 2010-06-11 16:15 proxmox.msf
-rw------- 1 cabrera cabrera  8007848 2010-06-11 16:18 Sent
-rw-r--r-- 1 cabrera cabrera    47389 2010-06-11 16:19 Sent.msf
-rw------- 1 cabrera cabrera   617482 2010-06-11 10:17 Trash
-rw-r--r-- 1 cabrera cabrera    32638 2010-06-11 16:15 Trash.msf
drwx------ 2 cabrera cabrera     4096 2010-06-11 15:47 Trash.sbd
-rw-r--r-- 1 cabrera cabrera        0 2010-05-04 12:31 Unsent Messages
-rw-r--r-- 1 cabrera cabrera     1990 2010-06-04 13:22 Unsent Messages.msf

-Borramos los files familia y constructora, dejando los msf

rm familia constructora
-Copiamos los mbox constructora y familia ahi dentro. Suponiendo que en nuestro home solo tenemos 2 mbox. OJO, terminamos con un punto .

cp ~/*.mbox .

-Cerramos Thunderbird y lo volvemos a abrir. Nos paramos en una de las carpetas, dependiendo de la cantidad y tamaño de los mails, demorara un poco para mostrar los mails. Al importarlos, todos aparecen como no leídos.
Share/Bookmark