Germán Poó Caamaño wrote: >El mié, 09-11-2005 a las 18:25 -0400, Jose Miguel Vidal Lavin escribió: > > >>Señores >> >> Por fin tuve el tiempo y máquina nueva para migrar un server pop3 a >>imap con todos los chiches que traen y definitivamente es la mejor >>opción, el tema es que debo migrar las cuentas de correo que estan en >>pop3 hacia el imap y he usado fetchmail para leer las cuentas desde el >>server antiguo pero me deja los correos en un solo archivo >>/var/mail/usuario y como como la estructura de imap que seria >>/var/spool/cyrus/mail/letra/cuenta, tambien he probado con: >> >> cat usuario | formail +1 -ds maildrop -d usuario; >> >>pero el resultado es el mismo, he estado todo el dia entre rtfm y stfw y >>nada aun, no se como derivar esos correos a imap y no a pop3 >>alguna ayuda? >> >> > >IMHO, no has encontrado información porque estas enfrentando (o quizás >entendiendo) mal el problema. > >No estás migrando de POP3 a IMAP. Los buzones de los usuarios pueden >ser accedidos vía POP3 o IMAP, indistintamente. La salvedad es que >con POP3 sólo verán *un* buzón, no así carpetas; a la vez que tienen >un conjunto más reducido de operaciones a realizar. > >Tanto UW-IMAP, cyrus, dovecot, etc. te proveen ambas funcionalidades. > >Luego, lo que estas haciendo es migrar de un sistema que almacena los >buzones en formato mailbox a uno que lo hace en formato maildir (cyrus). >Con la instrucción que indicas no estas logrando mucho, por lo mismo. >En cyrus, cada mensaje es 1 archivo; y se requieren manejar mas >comandos, como reconstruir la carpeta, actualizar la cuota, etc. > >Después de esta perorata, te sugiero leer: >http://www.onid.orst.edu/docs/technical/cyrusmigration.shtml > >Los scripts debes ajustarlos a tus necesidades. El que hace el >trabajo sucio es migrate_user_mail.pl. Básicamente toma un >buzón, crea el usuario (cyrus maneja un espacio de usuarios >distinto), crea un archivo con cada mensaje (usando formail >y otros scripts), reconstruye los índices en cyrus y >reconstruye la cuota. > >Por cierto, antes debes asegurarte que cyrus está bien >instalado y funcionando correctamente. Si no funciona, >revisa la configuración de sasl; ahí casi siempre están >los problemas, porque cyrus en sí no es complicado. > > > se le agradece por el dato, el tema era tal cual lo decias, quieero cambiar el formato de almacenamiento de los mails, tengo ya sasl, cyrus y todos los demas sistemas configurados bien y funcionando asi que leeré atentamente ese doc para ver el tema de la migración y cambio de formato de almacenamiento.
de ahi les cuento si tuve algun drama pd: andaba mas perdido que la revista de linux chilena ;) saludos From [EMAIL PROTECTED] Thu Nov 10 13:03:38 2005 From: [EMAIL PROTECTED] (NYARLATHOTEP El Caos Reptante) Date: Thu Nov 10 13:00:23 2005 Subject: OT: Subproceso hijo con modperl Message-ID: <[EMAIL PROTECTED]> Hola Lista... He estado leyendo e informandome sobre como realizar un proceso hijo llamado desde apache con mod_perl; bueno, la situacion actual es la siguiente: 1 Tengo un *.pm que se encarga de mostrar y generar la pagina, el cual posee una subrutina que crea el proceso hijo 2 Tengo un script (llamado generador_archivos.pl con permisos 755 )que al ejecutarlo desde la bash funciona perfectamente, utilizando y manipulando la base de datos y que a la vez escribe en un archivo. la subrutima del *.pm que crea el proceso hijo es la siguiente: sub generar_info { my $self = shift; my $arg = "ACT" if param("ACT"); $arg = "CHB" if param("CHB"); $arg = "CHL" if param("CHL"); $arg = "INTER" if param("INTER"); $arg = "REENV" if param("REENV"); $arg = "REINT" if param("REINT"); warn "Generando INFO\n"; warn "Ejecutando /desa/my_site/bin/generador_archivos.pl $arg \n"; use strict; use POSIX 'setsid'; use Apache::SubProcess; my $r = Apache->request; $SIG{CHLD} = 'IGNORE'; defined (my $kid = fork) or die "Cannot fork: $!\n"; if ($kid == 0) { warn "Preparando proceso hijo!\n"; $r->cleanup_for_exec(); # untie the socket chdir '/' or die "Can't chdir to /: $!"; open STDIN, '/dev/null/' or die "Can't read /dev/null: $!"; open STDOUT, '>/dev/null' or die "Can't write /dev/null: $!"; open STDERR, '>/tmp/log' or die "Can't write /dev/null: $!"; setsid or die "Can't start a new session: $!"; select STDERR; local $| = 1; #ejecutar script externo system "/desa/my_site/bin/generador_archivos.pl $arg" or die "Ups! $!"; } } Pero que al momento de llamar al script generador_archivos.pl no sucede nada... ¿Alguna idea? Gracias -- No trate nunca de verificar una condición de error que no sepa manejar.