Use /etc/init.d/fetchmail com o arquivo personnal ~ / .fetchmailrc

2

Agora, tenho dois usuários no meu sistema que usam fetchmail com um% pessoal_de_cada% e sincronizo os e-mails com o comando ~/.fetchmailrc (em um cron, mas isso não é importante).

Então, eu gostaria de usar o serviço fetchmail -kv --uidl -m '\''/usr/bin/procmail -d %T'\ , mas sempre com o /etc/init.d/fetchmail pessoal desses usuários de reboque. Eu não gostaria de usar o conf de fetchmailrc global. Isso é possível?

Eu sei a possibilidade de fazer um cron global, mas antes eu saberia se o que eu disse é possível ou não.

    
por fauve 02.03.2014 / 00:35

1 resposta

2

Não há realmente nada de imediato que eu saiba com fetchmail , mas você pode facilmente construir algo assim.

Se você tivesse uma seção start) em seu /etc/init.d/fetchmail service:

start)
        # Start daemons.
        echo -n "Starting fetchmail: "
        update_boot_stage 'Starting email fetching service'
    conffile=/etc/fetchmail.conf
    [ -f "$conffile" ]  &&  FETCHMAILHOME=$fetchmailddirs daemon --user=$fetchmailuser /usr/bin/fetchmail --daemon 60 --syslog --fetchmailrc "$conffile"
    if [ ! -d "$fetchmailddir" ];  then
        mkdir "$fetchmailddir"
        chown $fetchmailuser:$fetchmailgroup "$fetchmailddir"
        chmod 700 "$fetchmailddir"
    fi
        for conffile in /etc/fetchmail.conf.d/*.conf;  do
        bname=$(basename "$conffile")
        fetchmailddirsub=$fetchmailddir/$bname
        if [ ! -d "$fetchmailddirsub" ];  then
            mkdir "$fetchmailddirsub"
            chown $fetchmailuser:$fetchmailgroup "$fetchmailddirsub"
            chmod 700 "$fetchmailddirsub"
        fi
        [ -f "$conffile" ]  &&  FETCHMAILHOME=$fetchmailddirsub daemon --user=$fetchmailuser /usr/bin/fetchmail --daemon 60 --syslog --fetchmailrc "$conffile"
        done
        touch /var/lock/subsys/fetchmail
        success "fetchmail started"
        echo
        ;;

Você pode criar links do diretório /etc/fetchmail.conf.d/ para o arquivo .fetchmailrc de cada usuário. Isso permitiria que um único fetchmail incluísse todo o potencial do usuário.

 $ ln -s /home/userX/.fetchmailrc /etc/fetchmail.conf.d/userX.conf

Esta é uma ideia aproximada que provavelmente precisará de alguns ajustes. Você terá que se certificar de que os arquivos .fetchmailrc podem ser executados desta maneira, mas deve ser possível.

Um exemplo completo do script stop / start está disponível aqui.

por 02.03.2014 / 01:59