Seite 5 von 10
Re: DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Mo 23. Jan 2012, 14:10
von feissmaik
szonic hat geschrieben:Hmmm..tmp2ram.sh nutze ich nicht, nur Logmini.sh, und das macht einen guten Job.
Ich schaue mir das ganze nachher mal an, und berichte über die Erweiterung der "Sendmail-Funktion".
Wobei ich eh davon ausgehe das es einwandfrei funzen wird!
hehe
tmp2ram.sh würde ich deswegen jedem empfehlen weil dann /tmp und /var/log im RAM liegen - vorallem in /var/log/ wird ständig herrumgeschrieben und wenn das im RAM liegt erhöht sich auch die Lebensdauer einer normalen Festplatte
logmini.sh ist ja nur für logrotation...
Re: DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Mo 23. Jan 2012, 15:57
von szonic
So, tmp2ram ist installiert.
Kann ich die Ordner tmp.save und log.save löschen, und wurden nioch mehr .save ordner angelegt?
Leider funzt das script doch nicht, ich habe es mal testweise in den Abschnitt function show_status() eingebaut, und wolltze den Versand prüfen.
Denke da liegt ein genereller fehler vor, es kommt folgenmde Meldung:
In dem Bereich der zeile 119 liegt die function send_Email:
Code: Alles auswählen
# Verschicke EMail..
function send_EMail() {
MESSAGE=$1
SUBJECT="$Osrcn Problem"
if [ $EMAIL = "yes"]; then
echo "Verschicke EMail.."
send_Email -f $EMAILFROM -t $EMAILTO -u "$SUBJECT" -m "$MESSAGE" -s $EMAILSERVER -xu "$EMAILUSER" -xp "$EMAILPASS"
fi
}
Siehst du den Fehler?
Ich habe bei
send_Email einen Unterstrich zugefügt, der fehlte, half aber auch nicht.
Irgendwo müssen `´ oder [] hin, mehr lese ich aus dem Fehler nicht.
Grüsse
szonic
Re: DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Mo 23. Jan 2012, 16:09
von szonic
FEHLER GEFUNDEN!
))
Der untersstrich war Blödsinn, der muß wieder weg, aber:
Mit dem "yes" gibt es Probleme, ich habe das durch "1" ersetzt, und schon wurde eine Mail gesendet!
Allerdings steht in der mail nur ein Account, nicht beide, aber das bekomme ich bestimmt auch noch hin... oder Du stößt mich drauf!
Grüsse
szonic
Re: DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Mo 23. Jan 2012, 16:11
von feissmaik
ähm nein send_Email gibt es nicht - die funktion kann sich zudem nicht selber aufrufen also bitte nicht durcheinander würfeln!
Nachdem man das Paket " sendEmail " installiert hat steht einem der Shellbefehl " sendEmail " zur Verfügung...
Deine Fehlermeldung sagt aber doch auch aus das irgendwo in zeile 119 ein " ] " fehlen würde?
nun steht in Zeile 119 aber garkein [ also hab ich gerade mal geguckt und hast recht, da ist noch ein "Bug" drin aber quasi nur ein Flüchtigkeitsfehler...
Zum verständniss, gib mal in der Console folgendes ein: [ $USER = "root"] && echo $USER
da müsste er jetzt den gleichen Fehler auswerfen wie du ihn gekriegt hast...
So und nun füge hinter das "root" ein Leerzeichen ein also zwischen "root" und ] sodass es so aussieht:
[ $USER = "root" ] && echo $USER
und das müsste dann gehen.... dh bearbeite DDNSupdater.sh und pass die Zeile 117 an und füge dort ein Leerzeichen zwischen "yes" und ] ein
Sorry
& Danke
Re: DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Mo 23. Jan 2012, 16:47
von szonic
Hehehe, bin gerne Betatester, soll ja laufen und ich habe ebenfalls was davon!
So, das Leerzeichen hatte ich als erstes probiert, hat aber nichts gebracht, also habe ich es wieder rückgängig gemacht.
Nach den letzten Tests, und Deiner Antwort, denke ich das ich es nicht gespeichert hatte, denn nun funzt es mit dem Leerzeichen.
Mit der "1" habe ich es unbewußt wieder eingebaut, daher ging es dann.
Danke für die Aufklärung, Linux ist doch recht anders wie VBA, und die Fehlermeldungen für einen laien nicht ganz so einfach zu deuten...
Nun bekomme ich auch bei "ddns status" Emails, für jeden Account eine, dazu habe ich das gemacht:
function show_status() {
for index in ${!DDNSHOST[*]}; do
get_IPs "$index"
if [ "$DYNIP" != "$CURRENTIP" ]; then
echo "The IP of ${DDNSHOST[$index]} ($DYNIP) does NOT match your current Internet-IP: $CURRENTIP"
echo "You should update immediately! (with: $0 now)"
else
echo "Your host ${DDNSHOST[$index]} with IP $DYNIP is still up to date: $CURRENTIP"
send_EMail "DDNSHOST: ${DDNSHOST[$index]} - DYNIP: $DYNIP - CURRENTIP: $CURRENTIP"
if [ -f "${CHKFILE}_answer" ]; then
answer=$(cat ${CHKFILE}_answer)
echo "Last Answer was: $answer"
fi
fi
echo " "
done
[ -f "$PiDFILE" ] && echo "Script seems to run in background with PID(s): $(cat $PiDFILE)"
}
Ich hoffe morgen bekomme ich eine Update Mail, dann bin ich schon glücklich:
function do_update() {
index=$1
# Replace %USER% , %PASS% , %HOST%
URL=${URL[$index]}
URL=${URL//%USER%/`proc_url_encode "${USERNAME[$index]}"`}
URL=${URL//%PASS%/`proc_url_encode "${PASSWORD[$index]}"`}
URL=${URL//%HOST%/${DDNSHOST[$index]}}
wget -q -O ${CHKFILE}_answer $URL
answer=$(cat ${CHKFILE}_answer)
echo "DDNSHOST: ${DDNSHOST[$index]} - DYNIP: $DYNIP - CURRENTIP: $CURRENTIP - answer: $answer"
LOG_msg "DDNSHOST: ${DDNSHOST[$index]} - DYNIP: $DYNIP - CURRENTIP: $CURRENTIP - answer: $answer"
send_EMail "DDNSHOST: ${DDNSHOST[$index]} - DYNIP: $DYNIP - CURRENTIP: $CURRENTIP - answer: $answer"
}
Ich glaube dann ist es auch bald "stable" oder?
Grüsse und Danke
szonic
Re: [GELÖST] - DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Sa 24. Mär 2012, 17:11
von feissmaik
kollege ausm anderen board meint grad das ich noch ein paar sonderzeichen in der function proc_url_encode vergessen habe:
Code: Alles auswählen
# Simple URL encoding
function proc_url_encode() {
out=${1//%/%25}; out=${out//\{/%7B}; out=${out//\}/%7D}; out=${out//|/%7C};
out=${out//\\/%5C}; out=${out//^/%5E}; out=${out//~/%7E}; out=${out//[/%5B};
out=${out//]/%5D}; out=${out//\`/%60}; out=${out//#/%23}; out=${out//>/%3E};
out=${out//\$/%24}; out=${out//&/%26}; out=${out//+/%2B}; out=${out//,/%2C};
out=${out//\//%2F}; out=${out//:/%3A}; out=${out//;/%3B}; out=${out//=/%3B};
out=${out//\?/%3F}; out=${out// /%20}; out=${out//</%3C};
echo $out
}
... da nutze ich zZt leider nur: % { } | \ ^ ~ [ ] ` # > $ & + , / : ; = ? und <
Auf folgender Seite stehen alle:
http://www.w3schools.com/tags/ref_urlencode.asp .. normale buchstaben und zahlen kann man aber weglassen...
Es würden also noch sowas wie folgendes fehlen: ! " @ ' ( ) * - _ . € ... alle anderen nutzt man glaub ich mal eher nicht...
Vor das jeweilige Zeichen sollte auch ein Escape-char
\ gesetzt werden damit es vom Script ignoriert wird
Code: Alles auswählen
# Simple URL encoding
function proc_url_encode() {
out=${1//%/%25}; out=${out//\{/%7B}; out=${out//\}/%7D}; out=${out//|/%7C};
out=${out//\\/%5C}; out=${out//^/%5E}; out=${out//~/%7E}; out=${out//[/%5B};
out=${out//]/%5D}; out=${out//\`/%60}; out=${out//#/%23}; out=${out//>/%3E};
out=${out//\$/%24}; out=${out//&/%26}; out=${out//+/%2B}; out=${out//,/%2C};
out=${out//\//%2F}; out=${out//:/%3A}; out=${out//;/%3B}; out=${out//=/%3B};
out=${out//\?/%3F}; out=${out// /%20}; out=${out//</%3C};
out=${out//\!/%21}; out=${out//\"/%22}; out=${out//\@/%40}; out=${out//\'/%27};
out=${out//\(/%28}; out=${out//\)/%29}; out=${out//\*/%2A}; out=${out//\-/%2D};
out=${out//\_/%5F}; out=${out//\./%2E}; out=${out//\€/%80};
echo $out
}
Re: [GELÖST] - DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Do 5. Apr 2012, 11:47
von feissmaik
DDNSupdater2.sh aktuallisiert auf v2.02 ... sonderzeichen erweitert sowie 2 bugs behoben
Re: [GELÖST] - DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Do 5. Apr 2012, 22:16
von rolu2
Kann es sein das es noch nicht online ist?
Nutze das DDNSupdater.sh mit der version 1.093 und wollte wechseln
Kannst es ja hier auch noch mal anhängen
Re: [GELÖST] - DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Fr 6. Apr 2012, 10:47
von feissmaik
doch, DDNSupdater2.sh ist über
i os verfügbar allerdings muss ich davon leider noch abraten, hab gestern erst einen üblen Bug entdeckt wodurch er bei "now" nichts macht solange die DYNIP noch der CURRENTIP entspricht .. siehe dazu
http://ipc.pebkac.at/forum/viewtopic.ph ... 4396#p4396
sorry
/EDIT: also das script funktioniert soweit schon, allerdings macht es nur was wenn die ip der dyndns nicht der aktuellen ip des internetanschlusses entspricht - forcen funktioniert also derzeit nicht....
Re: [GELÖST] - DDNSupdater.sh läuft scheinbar nicht richtig
Verfasst: Sa 14. Apr 2012, 15:06
von szonic
Hast Du schon eine Lösung für das Problem?