Ejecute Thunderbird en el arranque sin iniciar session

El objective es usar Thunderbird en mi server como un filter para mis correos. Entonces Thunderbird siempre debe ejecutarse en segundo plano después del inicio, sin que yo inicie session.

Tengo este script a continuación, que quiero poner en rc.local . El problema ahora es que no tengo una pantalla especificada y no puedo especificar una, ya que estoy conectado a través de ssh sin reenvío de X.

 me@desktop ~ $ echo $DISPLAY me@desktop ~ $ 

Pero no necesito especificar una pantalla, ya que no planeo interactuar con la GUI de todos modos. Sin embargo, sospecho que tengo que especificar uno.

Intentando iniciar Thunderbird:

 #!/bin/bash su - me -c "/usr/bin/thunderbird" & 

¿Cómo puedo hacer que esto funcione?

Tiene dos requisitos que entran en conflicto entre sí, por lo que la respuesta corta es que no puede lograr su objective con Thunderbird sin iniciar session.

El uso de un cliente de GUI interactivo como un process de server de background para filtrar el correo no es la mejor solución. Thunderbird no se ejecuta sin una pantalla. Sin embargo, si su server registra "usted" en un entorno de escritorio después del inicio, puede configurar Thunderbird para que se inicie automáticamente. Las instrucciones para esto dependerán del escritorio que prefiera, gnome / kde / etc. Aun así, no recomendaría este enfoque.

Procmail (que su distribución de Linux podría haber instalado por defecto) está diseñado con el objective de filtrar el correo electrónico y no necesita una pantalla. Puede encontrar un tutorial simple y directo aquí; http://www.panix.com/~elflord/unix/procmail.html

Se proporcionan ejemplos para configurar el filter, integrarlo con su MTA y crear reglas para reenviar, archivar o descartar posts.

En pocas palabras, su MTA debe comprender los files .forward en su directory $ HOME. Este file contiene un command para llamar a procmail. También necesitará un directory ~ / .procmail para mantener las reglas y los files de configuration que usará procmail para realizar sus tareas. Y finalmente un file ~ / .procmailrc para definir algunas preferences, valores pnetworkingeterminados, location de sus recetas de filtrado y su directory de correo pnetworkingeterminado.

En su directory personal, la preparación es la siguiente …

mkdir ~/.procmail; echo "|IFS=' ' && exec /usr/bin/procmail || exit 75 #your_user_name" >> ~/.forward

Lo anterior supone que tu file ejecutable de procmail se encuentra en / usr / bin.

~ / .procmailrc (contenido copydo del enlace panix.com arriba)

 VERBOSE=off MAILDIR=$HOME/mail # elm users might use $HOME/Mail instead PMDIR=$HOME/.procmail DEFAULT=/var/spool/mail/elflord LOGFILE=$PMDIR/log INCLUDERC=$PMDIR/general.rc # INCLUDERC=$PMDIR/other.rc # add as many INCLUDERC's as you like # end of .procmailrc 

Filtros reales …

Para archivar correo en una carpeta llamada facturar por posts de Bill.

 :0 * ^From.*bill@example\.com bill 

Para save / mantener posts en su bandeja de input para usuarios en su mismo dominio.

 :0 * ^From.*example\.com $DEFAULT 

Para separar los posts de su list de correo de su bandeja de input, archive en una carpeta llamada my-lists.

 * ^From.*my.*subscribed.*list.*@ my-lists 

Para reenviar el post que coincide con el filter a otra dirección.

 * ^Subject.*something-or-other ! another@address.com 

Para combinar varias acciones en el mismo filter, la syntax no cambia mucho. Esto mantendrá una copy en su bandeja de input y el file en otra carpeta.

 :0 * ^Cc.*joe@somewhere.org * ^Cc.*me { :0 c $DEFAULT :0 SOME_FOLDER } 

Teniendo en count que esto no responde a su pregunta específica, "cómo hacer que esto funcione", proporciona una solución alternativa a sus necesidades subyacentes, para filtrar el correo electrónico.