Si, mi riferivo a Clarkconnect, è semplicissimo da configurare ed era perfetto per un utonto come me, ma oggi ho deciso di evolvermi.
bravo
modificando a mano il file /etc/fetchmail il template non lo aggiorna (o aggiusta) ad ogni riavvio della macchina o del servzio?
viene modificato solo se modifichi da web le sue impostazioni oppure se "scateni" un evento invocandolo.. al riavvio questo file non viene aggiornato..
Ho trovato una piccola, ma piccolissima spiegazione qui
http://forums.contribs.org/index.php/topic,39169.0.html
no, non era quello..
sarò breve e.. circonciso
allora.. SME, a differenza di tutte (non sono a conoscenza di cose simili) le altre distribuzioni linux, ha uno strato sw tra l'interfaccia web ed i file di configurazione..
questi ultimi sono generati "alla bisogna" sulla base di template (a loro volta spezzettati in frammenti) e di dati memorizzati nei db
i template sono in /etc/e-smith/templates/* e, come potrai vedere, la struttura delle direcorty sotto quel punto è identica a quella degli omologhi file di conf in /etc, /home ecc (non sempre, ci sono delle eccezioni)
i db sono in /home/e-smith/db/ e sono dei file di testo formattati opportunamente
l'interfaccia web o opportuni comandi da shell permettono di elaborare i dati nei db e, tramite gli eventi (il famoso signal-event nome-evento), di modificare i file di configurazione, di abilitare/disabilitare i servizi e così via
questa infrastruttura permette di fare il backup di pochissimi dati (i db pesano poche decine di k) e di poter ripristinare un server esattamente come era in poco tempo (naturalmente devi anche fare il backup dei dati degli utenti ecc

)
inoltre, è stata prevista la possibilità di customizzare il sistema in modo da adattarlo alle esigenze più specifiche.. proprio come nel tuo caso
quindi adesso, come dimostrazione/lezione pratica, ti faccio modificare i template ed i db per ottenere quello che vuoi
poi starà a te studiarti il sistema
se digiti
config show fetchmail
dovresti avere qualcosa del tipo:
fetchmail=service
FreqOffice=every15min
FreqOutside=every15min
FreqWeekend=every15min
Method=multidrop
SecondaryMailAccount=popaccount
SecondaryMailEnvelope=X-Rcpt-To:
SecondaryMailPassword=poppassword
SecondaryMailServer=mail.myisp.xxx
status=enabled
allora.. adesso inseriamo una nuova variabile
config setprop fetchmail SecondaryMailEnvelope2 X-MDRcpt-To:
se ridai il comando show, vedrai che la nuova variabile è stata inserita correttamente
[root@smeserver ~]# config show fetchmail
fetchmail=service
FreqOffice=every15min
FreqOutside=every15min
FreqWeekend=every15min
Method=multidrop
SecondaryMailAccount=popaccount
SecondaryMailEnvelope=X-Rcpt-To:
SecondaryMailEnvelope2=X-MDRcpt-To:
SecondaryMailPassword=poppassword
SecondaryMailServer=mail.myisp.xxx
status=enabled
a questo punto dobbiamo modificare il comportamento del template..
andiamo in /etc/e-smith/templates/etc/fetchmail e vediamo il contenuto
[root@smeserver ~]# cd /etc/e-smith/templates/etc/fetchmail
[root@smeserver fetchmail]# ls -la
total 20
drwxr-xr-x 2 root root 4096 Nov 25 00:17 .
drwxr-xr-x 72 root root 4096 May 31 2001 ..
-rw-r--r-- 1 root root 261 Jul 22 2005 20disabled
-rw-r--r-- 1 root root 721 Jun 19 2003 50ETRN
-rw-r--r-- 1 root root 1964 Dec 26 2007 50multi-drop
lrwxrwxrwx 1 root root 51 Nov 25 00:17 template-begin -> /etc/e-smith/templates-default/template-begin-shell
ok.. esiste un frammento di template che si occupa del multidrop
a questo punto lo modifichiamo.. ma non direttamente (non si fa
MAI).. prima creiamo una directory analoga in /etc/e-smith/templates
-custom e ci copiamo dentro il frammento
[root@smeserver fetchmail]# mkdir -p /etc/e-smith/templates-custom/etc/fetchmail
[root@smeserver fetchmail]# cp ./50multi-drop /etc/e-smith/templates-custom/etc/fetchmail/
[root@smeserver fetchmail]# cd /etc/e-smith/templates-custom/etc/fetchmail
[root@smeserver fetchmail]# ls -la
total 12
drwxr-xr-x 2 root root 4096 Jan 20 12:22 .
drwxr-xr-x 3 root root 4096 Jan 20 12:22 ..
-rw-r--r-- 1 root root 1964 Jan 20 12:22 50multi-drop
adesso che siamo nella directory giusta sotto templates-custom, editiamo il file con pico
pico 50multi-drop
e quello che vediamo è uno script in perl.. riporto qui le parti a noi interessanti
my $envelopeSpec =
$fetchmail{"SecondaryMailEnvelope"};
my $SecondaryMailServer =
$fetchmail{"SecondaryMailServer"};
my $SecondaryMailAccount =
$fetchmail{"SecondaryMailAccount"};
my $SecondaryMailPassword =
$fetchmail{"SecondaryMailPassword"};
$envelopeSpec = defined $envelopeSpec ?
"envelope "$envelopeSpec" " : "";
....
$OUT .= " ";
$OUT .= "poll $SecondaryMailServer ";
$OUT .= $envelopeSpec;
$OUT .= " protocol $protocol ";
in pratica, come puoi vedere, lo script preleva le variabili dal db e le schiaffa in un file
adesso modifichiamo il file "alla bisogna" (le righe inserite hanno davanti -> che naturalmente NON è da mettere)
my $envelopeSpec =
$fetchmail{"SecondaryMailEnvelope"};
-> my $envelopeSpec2 =
-> $fetchmail{"SecondaryMailEnvelope2"};
my $SecondaryMailServer =
$fetchmail{"SecondaryMailServer"};
my $SecondaryMailAccount =
$fetchmail{"SecondaryMailAccount"};
my $SecondaryMailPassword =
$fetchmail{"SecondaryMailPassword"};
$envelopeSpec = defined $envelopeSpec ?
"envelope "$envelopeSpec" " : "";
-> $envelopeSpec2 = defined $envelopeSpec2 ?
-> "envelope "$envelopeSpec2" " : "";
....
$OUT .= " ";
$OUT .= "poll $SecondaryMailServer ";
$OUT .= $envelopeSpec;
-> $OUT .= $envelopeSpec2;
$OUT .= " protocol $protocol ";
chiudi il file e lo salvi
adesso vediamo la "magia"
il file /etc/fetchmail prima della modifica (senza l'header che ho segato):
# multi-drop configuration; fetchmail retrieves all mail from a remote POP mailbox:
/usr/bin/fetchmail --syslog --silent --auth password --fetchmailrc - <<EOF
set postmaster "postmaster@mycompany.local"
set bouncemail
set properties ""
poll mail.myisp.xxx
envelope "X-Rcpt-To:"
protocol POP3
no dns
localdomains mycompany.local
username "popaccount" password "poppassword" to * here
smtphost 127.0.0.200
fetchall
forcecr
EOF
ok.. adesso espandiamo il template:
expand-template /etc/fetchmail
e vediamo come è cambiato il file:
# multi-drop configuration; fetchmail retrieves all mail from a remote POP mailbox:
/usr/bin/fetchmail --syslog --silent --auth password --fetchmailrc - <<EOF
set postmaster "postmaster@mycompany.local"
set bouncemail
set properties ""
poll mail.myisp.xxx
envelope "X-Rcpt-To:"
envelope "X-MDRcpt-To:"
protocol POP3
no dns
localdomains mycompany.local
username "popaccount" password "poppassword" to * here
smtphost 127.0.0.200
fetchall
forcecr
EOF
fatto..
e tale modifica rimarrà anche se cambio le impostazioni da web..
l'approccio è estendibile a tutti i template/variabili
spero che l'esempio sia stato illuminante su cosa significhi il templating dei fle di conf su SME
che ne pensi se il manuale lo traduciamo tutti un po' basta solo un super visionatore che potresti essere tu.
se avete tempo/voglia, va benissimo.. occhio che il manuale per sviluppatori (dove si trattano questi argomenti) è abbastanza tosto
Ciao
Stefano