Newsgroup: it.comp.os.linux.sys
Titolo: Fetchmail, procmail e smistamento intelligente

Salve gente,
non me ne vogliate per questo post a questa ora disumana, ma ho
googlato, ho letto le man-pages ma non riesco a venirne fuori.
Dunque, il fatto è questo: possiedo più account di posta qua e la
nella Grande Rete, e voglio scaricare tutte le e-mail con fetchmail
per poi smistarle con procmail.
Adesso: per forza di cose, il mio file .fetchmailrc si comporrà di
diverse quaterne con queste linee :

 diverse quaterne con queste linee :
poll nomeaccount via 
mail.server.org
with proto PROTO
user "USER...@SERVER.TLD" there with password
"PASSWORDMOLTODIFFICILE" is "UTENTELOCALE" here options keep ssl
mda "procmail -d %T"
Bene, quello che voglio fare io è mettere questa quaterna tante volte
quanti sono gli account che devo gestire, modificando ogni volta
opportunamente i dati di login, server, protocollo ed opzioni ma
SOPRATTUTTO l'ultima linea, quella che dice come richiamare procmail.
per ogni account voglio una linea diversa, del tipo
poll nomeaccount via 
mail.server.org
with proto PROTO
user "USER...@SERVER.TLD" there with password
"PASSWORDMOLTODIFFICILE" is "UTENTELOCALE" here options keep ssl
mda "procmail procmail-SERVER.TLD -d %T"
poll accountDUE via 
mailhost.grandesito.net
with proto PROTO
user "USER...@GRANDESITO.TLD" there with password
"PASSWORDMOLTODIFFICILE" is "UTENTELOCALE" here options keep ssl
mda "procmail procmail-GRANDESITO.TLD -d %T"
Ok.
All'interno dei file procmail-SERVER.TLD e procmail.GRANDESITO.TLD,
almeno all'inizio, ci ho messo qualcosa come:
Maildir=$HOME/Mail/<nomeaccount>
# <nomeaccount>, ovviamente, è una parte variabile che dipende se è il
file di uno o dell'altro account
:0
* .*
Inbox
Dove sta il problema?
che la posta viene scaricata e smistata, ma mutt non la legge.
Una rapida verifica con l'utility file mi riporta, sul file delle e-
mail appena creato:
file Inbox
Mail/Diahane/Inbox: smtp mail text
lo stesso comando, su un file mbox _regolare_ e _funzionante_,
riporta:
file Mail/Inbox
Mail/Inbox: Non-ISO extended-ASCII mail text, with very long lines,
with LF, NEL line terminators
Che posso fare?
Sto operando su:
      ** Slackware 12.1
      ** fetchmail 6.3.8+SSL.NLS
      ** procmail 3.22
      ** mutt 1.4.2.3i
Chi sa dirmi cosa posso fare?
Per chi me lo stia per dire: No, non voglio usare thinderbird.
Grazie in anticipo,
Emanuele

 Che posso fare?
Vedere se c'č qualche parametro di procmail che consenta di specificare
qualche formato di mbox diverso. Ma sinceramente non sono convinto che il
problema sia lě.
-- 
Flavio Visentin
Scientists have finally discovered what's wrong with the female brain:
On the left side, there is nothing right, and on the right side, there
is nothing left.

Con fetchmail usa un MTA che poi mista a procmail, come ti hanno detto. Se
vuoi saltare questo passo ti consiglio getmail.
Comunque perché modificare l'invocazione di procmail?
configuralo con le sue opzioni
Io uso getmail e procmail su slackware come te, ed ho tante regole su una
unica invocazione di procmail, che al suo interno ha le regole per i vari
account, per le mailing list, etc...
Se non ti basta la direttiva ^TO_ ricordo che fetchmail permetteva di
inserire un header per sapere da quale casella hai preso la posta.
Dici che mutt non la legge, ma come è configurato? Cosa legge?
Insomma, la direttiva file dice poco, se non che quei file sono leggermente
diversi
Per esempio nel mio caso
$ file inbox
inbox: Non-ISO extended-ASCII mail text, with very long lines
$ file spam
spam: ASCII mail text
mutt li legge entrambi senza problemi
-- 
cf

 che la posta viene scaricata e smistata, ma mutt non la legge.
Detta così, non saprei, viste le mie scarse competenze...
Tuttavia un buon consiglio potrebbe essere quello di postare
anche parte del file .mutttrc. Visto che il problema
potrenne stare li...
Saluti  :-)

 Saluti  :-)
Ok, ok. ho la vaga impressione di non essermi spiegato.
Forse il fatto che abbia spedito il post alle 5 di mattina mi ha reso
un po' difficile spiegare le cose.
Ora in altro post le spiego bene bene.
Grazie comunque dell'aiuto.
Emanuele

Ok, iniziamo da capo.
Bene, il fatto è: io ho più account di posta quà e la per La Rete.
Voglio fare in modo che fetchmail scarichi la posta da tutti i miei
account e poi la smisti in cartelle diverse in base all'account dal
quale la sto scaricando, appoggiandosi per questo a procmail,
ovviamente.
Quindi, partendo dal fatto che nel file ~/.fetchmailrc ci sono entry
del
tipo:
	poll $account via $server
	with proto $proto
	user $utente there with password $password is $local_user here
	options keep ssl
	mda "procmail -d %T"
dove ovviamente $account, $sito, $proto, $utente, $password e
$local_user sono tutti valori variabili.
Adesso, per rendermi il tutto più facile ho deciso di mettere nel mio
file file ~/.fetchmailrc  più entry, una per ogni account.
Le uniche cose che dovranno cambiare, oltre alle impostazioni ed ai
dati
di login saranno le impostazioni di procmail, in modo da poter
specificare un file di regole per ogni account e poter gestire
modularmente ed efficacemente tutta la mia posta: del tipo, se sbaglio
le regole di un account gli altri non ne risentono, o se qualche
server
è down gli altri account non ne risentono e via dicendo.
Dov'è il problema?
Ho trovato come passare questa cosa a procmail:
	procmail <$file_di_conf> <altre_opzioni>
(correggetemi se sbaglio!)
però si verifica una cosa strana: dopo che procmail smista la posta, i
file creati non sono leggibili da mutt, ed esaminandoli con l'utility
file quest'ultima mi dice che non sono file mbox ma semplici "smtp
mail
text".
Ed ho la vaga impressione che negli account dove specifico un diverso
file
di configurazione vengano eliminate le prime tre o quattro linee di
ogni
e-mail, rendendo il file incompatibile con il formato mbox e quindi
illegibile
da  mutt.
Qualcuno ha qualche idea da suggerirmi ?
Spero di essere stato chiaro o che qualcuno mi capisca.
Ho tuttavia l'impressione che sia un bug di procmail, voi che ne
pensate?
Potrebbe essere ?
Grazie,
Emanuele

 Una cosa modulare, diciamo.
come me, ma abbiamo visioni diversi del "modulare". Tu lo fai per mailbox,
io per categorie.
Perché per esempio voglio che finisca nella casella di un
determinato "cliente" tutte le mail che questi mi manda, magari da o verso
indirizzi diversi. Così per mailinglist, etc... 
Aspettiamo comunque l'howto e il post dove spieghi bene.
Anche io dal post ho capito che era un po' incasinata la tua soluzione.
-- 
cf

 
Premesso che non avevo letto questo quando ho script il post di prima,
continuo a non capire,
usa maildir se pensi che sia colpa del formato mbox
Poi come ti è stato detto è *sconsigliato* passare le mail a procmail
direttamente.
Usi Slackware hai detto, io ho fatto anche i pacchetti con dei bugfixes che
Pat non ha inserito nel pacchetto originale, ma Pat scrive
chiaramente "fetchmail is probably not secure."
Poi naturalmente come ti ho detto fai come credi, magari arriva qualcuno che
ti capisce e trovi una soluzione. Io purtroppo non ho ben capito quel che
fai, nonostante abbia usato fetchmail+postifx+mutt per tanti anni.
Ora sono passato a getmail per evitare proprio il passaggio postfix, cosa
che tu fai con fetchmail ma che mi è sempre parsa poco sicura. 
-- 
cf


Ma il fatto è che il mio setup con un solo account dal quale viene
scaricata
la posta ha sempre funzionato per bene. :-\
Emanuele


No, imho non è poco sicura.
Colgo comunque l'occasione per dire che NON era come dicevi tu e gli
altri.
Quello che volevo fare io SI PUÒ FARE e ci sono riuscito.
A breve pubblicherò in un post sul mio blog tutti i dettagli, e poi
linkerò qui
su it.comp.os.linux.sys il mio blog in modo che tutti possiate vedere
che
si può fare anche diversamente da come fate tutti voi.
Solo, ho dovuto rimpiazzare procmail con un'altro programma, dato che
procmail che vive sugli allori e non si aggiorna dal 2002, non è
neanche
capace di gestire altri files di configurazione oltre a quello di
default.
Il mio è un setup modularizzato, ma modularizzato per bene.
Emanuele