Categorías :: Cambios :: Indice :: Login :: Guegue.Com :: Búsqueda:

Revision [872]

Most recent edit made on 2008-07-10 14:49:21 by JavierWilson

Additions:
En cyrus con delete mailbox dm... (sam... es necesario para hacerlo como usuario cyrus en cyradm):
NOTA: este proceso es importante porque nos puede ahorrar gigas de espacio en el disco


Deletions:
En cyrus con delete mailbox dm... (sm... es necesario para hacerlo como usuario cyrus en cyradm):
NOTA2: este proceso es importante porque nos puede ahorrar gigas de espacio en el disco




Revision [871]

Edited on 2008-07-10 14:48:35 by JavierWilson

Additions:
Ver SysBorrarCuenta para una explicación completa sobre borrado de cuentas en general.
Borrando info@example.org:
Las entradas de más de mysql con:
DELETE FROM user WHERE username='info' AND realm='example.org'%%


Deletions:
Borrando info@example.org
Las entradas de mas de mysql con:
DELETE FROM user WHERE user='info@example.org'%%




Revision [862]

Edited on 2008-07-10 14:35:29 by JavierWilson

Additions:
Revisar código de check_mbox_cyrus.pl




Revision [861]

Edited on 2008-07-10 14:25:21 by JavierWilson

Deletions:
al momento de escribir esto existian 81 errores.




Revision [860]

Edited on 2008-07-10 14:23:41 by JavierWilson

Additions:

Buzones fantasmas en Mysql

Buzones fantasmas en Cyrus



Deletions:

Errores en Mysql

Errores en Cyrus





Revision [858]

Edited on 2008-07-10 14:18:11 by JavierWilson

Additions:
Para ver si los usuarios de mysql tienen su correspondiente en cyrus usamos check_mbox_mysql.pl. Para listar solo errores, es decir usuarios solo ingresados en mysql pero cuyo mailbox no existe:
./check_mbox_mysql.pl 

Revisar código de check_mbox_mysql.pl
El proceso inverso es mas complicado, pues cyrus no es sencillo de hacer consultas. Para listar todos los mailboxes de cyrus (los que tienen hijos, asumimos todos los mailboxes ppales tienen hijos):
./cyrus_list.pl |sort |uniq >cyrus_users.txt

Revisar código de cyrus_list.pl


Deletions:
Para ver si los usuarios de mysql tienen su correspondiente en cyrus:
./check_mbox_mysql.pl

para listar solo errores, es decir usuarios solo ingresados en mysql pero cuyo mailbox no existe:
./check_mbox_mysql.pl |grep ERROR

revisar código de check_mbox_mysql.pl
El proceso inverso es mas complicado, pues cyrus no es sencillo de hacer consultas. para listar todos los mailboxes de cyrus (los que tienen hijos, asumimos todos los mailboxes ppales tienen hijos):
./cyrus_list.pl > cyrus_users.txt




Revision [857]

Edited on 2008-07-10 13:55:07 by JavierWilson

Additions:
./cyrus_list.pl > cyrus_users.txt

Finalmente para ver que limpiar de cyrus, es decir listar mailboxes fantasmas (que no existen ya en mysql) usando el archivo que acabamos de crear cyrus_users.txt:
./check_mbox_cyrus.pl |grep ERROR


Deletions:
./cyrus_list.pl

para listar solo aquellos de dominio virtual (todos los de mysql corresponden a dominios virtuales al menos hasta la fecha), ordenarnolos alfabeticamente (por domino y usuario) y ponerlos en un archivo:
./cyrus_list.pl |sort|cut -f2 -d" ">cyrus_users.txt

finalmente para ver que limpiar de cyrus, es decir listar mailboxes fantasmas (que no existen ya en mysql) usando el archivo que acabamos de crear cyrus_users.txt:
./check_mbox_cyrus.pl
./check_mbox_cyrus.pl |grep ERROR




Revision [856]

Edited on 2008-07-10 13:54:06 by JavierWilson

Additions:
./cyrus_list.pl |sort|cut -f2 -d" ">cyrus_users.txt


Deletions:
./cyrus_list.pl |grep "@"|sort|cut -f2 -d" ">cyrus_users.txt




Revision [854]

Edited on 2008-07-10 13:49:52 by JavierWilson

Additions:
revisar código de check_mbox_mysql.pl


Deletions:
revisar código de CheckMboxMysql




Revision [853]

Edited on 2008-07-10 13:49:37 by JavierWilson

Additions:
revisar código de CheckMboxMysql


Deletions:
Las herramientas aqui usadas check_mbox_mysql.pl, cyrus_list.pl, check_mbox_cyrus.pl las cree para facilitar estas tareas y estan en el home del root en beta.
al momento de escribir esto habian 5 errores.




Revision [591]

The oldest known version of this page was edited on 2007-12-13 18:21:44 by JavierWilson

HOWTO: integridad cyrus-mysql


Este HOWTO explica como mantener la integridad entre los datos de cuentas de correo en Mysql y en Cyrus. Pueda que existan cuentas en Cyrus porque han sido borradas desde la adminitración o panel (mysql) pero no han sido borradas usando cyradm. También al revés aunque esto sería menos común. Es importante sobretodo eliminar las cuentas fantasmas de cyrus pues cada una puede ocupar hasta 500mb.

Las herramientas aqui usadas check_mbox_mysql.pl, cyrus_list.pl, check_mbox_cyrus.pl las cree para facilitar estas tareas y estan en el home del root en beta.

Errores en Mysql

Para ver si los usuarios de mysql tienen su correspondiente en cyrus:

./check_mbox_mysql.pl


para listar solo errores, es decir usuarios solo ingresados en mysql pero cuyo mailbox no existe:

./check_mbox_mysql.pl |grep ERROR


al momento de escribir esto habian 5 errores.

Errores en Cyrus

El proceso inverso es mas complicado, pues cyrus no es sencillo de hacer consultas. para listar todos los mailboxes de cyrus (los que tienen hijos, asumimos todos los mailboxes ppales tienen hijos):

./cyrus_list.pl


para listar solo aquellos de dominio virtual (todos los de mysql corresponden a dominios virtuales al menos hasta la fecha), ordenarnolos alfabeticamente (por domino y usuario) y ponerlos en un archivo:

./cyrus_list.pl |grep "@"|sort|cut -f2 -d" ">cyrus_users.txt


finalmente para ver que limpiar de cyrus, es decir listar mailboxes fantasmas (que no existen ya en mysql) usando el archivo que acabamos de crear cyrus_users.txt:

./check_mbox_cyrus.pl
./check_mbox_cyrus.pl |grep ERROR


al momento de escribir esto existian 81 errores.

Como corregir los errores?


Borrando info@example.org

Las entradas de mas de mysql con:

# mysql -p mail
DELETE FROM user WHERE user='info@example.org'


En cyrus con delete mailbox dm... (sm... es necesario para hacerlo como usuario cyrus en cyradm):

# cyradm --user cyrus localhost
> sam user/info@example.org cyrus c
> dm user/info@example.org


NOTA: es posible generar un script en perl que genere las lineas sam y dm necesarias en los casos de ERROR y luego solo dar copy and paste en cyradm. Un intento con dos lineas en el shell:

Genera las lineas sam (esto aplicamos luego en cyradm):

./check_mbox_cyrus.pl |grep ERROR|cut -f1 -d" "|sed -e 's/^/sam user\//g'|sed -e 's/$/ cyrus c/g'


Genera las lineas dm (esto aplicamos luego en cyradm):

./check_mbox_cyrus.pl |grep ERROR|cut -f1 -d" "|sed -e 's/^/dm user\//g'


O ambas con awk:

./check_mbox_cyrus.pl |grep ERROR|cut -f1 -d" "|awk '{print "sam user/"$1" cyrus c\ndm user/"$1}'


NOTA2: este proceso es importante porque nos puede ahorrar gigas de espacio en el disco



CategorySysAdmin
Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki
Page was generated in -0.2903 seconds