← Back to team overview

sslug-teknik team mailing list archive

Qmail -- unattended script?

 

Hej SSLUG'ere

langt om længe er det lykkedes mig at få Qmail til at virke. Ved at
hugge et script fra en eller anden HOWTO henter/sender jeg post via
kommandoer i ip-up.local scriptet (se herunder). Dette virker fint, men
problemet er, at jeg ved denne metode ikke aner hvornår den er færdig
med at udveksle post. Således er det jeg egentligt ønsker en måde at
isolere postudvekslingen i en batch-fil, som jeg så kan kalde,
eksempelvis:

ppp-on
exchange-mail  # mit postudvekslingsscript
ppp-off

Herved ville jeg vide hvornår postudvekslingen er færdig. Mit problem er
at der i ip-up.local bliver overført nogle environment variable $1 $2 $3
$4 fra pppd -- heriblandt min tildelte IP adresse hos min ISP. Uden
disse environment variable kan jeg ikke sende post. Således har jeg
forsøgt at lave et sådant exchange-mail script, men jeg kan ikke hente
værdierne fra disse pppd env variable. Er der nogen der kan hjælpe? Er
der alternative måder at gøre det på?

Mange hilsner

Jesper Honig Spring

#!/bin/bash

exec > /etc/ppp/mail.log
exec 2>&1


#
# Print date and time to the log file
#
date

     
#
# Qmail controlfiles are in
#
QCD='/var/qmail/control'
     

#
# Find own hostname; dynamically assigned!
# $4 is the assigned ipaddress, passed along by pppd
#

ME=`host $4 |head -1|cut -d" " -f5`
echo "$ME" > $QCD/HOSTNAME

#  
# Send batched mail to ISP
#
/usr/local/bin/maildirsmtp ~alias/pppdir alias-ppp- smtp.mail.dk $ME
     

#
#
# Get mail from ISP
su $USER -c '/usr/bin/fetchmail -f $HOME/.fetchmailrc'