Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

QNAP mail versenden

Frage Sicherheit Backup

Mitglied: bastian42

bastian42 (Level 1) - Jetzt verbinden

23.10.2014, aktualisiert 06.11.2014, 3442 Aufrufe, 12 Kommentare

Hallo Mitadmins,

folgende Ausgangssituation:

Ich habe ein QNAP T-469L mit aktueller Firmware. Hier habe ich per NFS mir ein Laufwerk per NFS gemounted.
Nun mache ich jede Nacht ein Backup mittels tar. Dies funktioniert soweit ganz gut. Was mir jedoch fehlt ist eine
irgendwie geartete Mailbenachrichtigung, ob das Backup funktioniert hat oder nicht.

Um eines vorweg zu nehmen, ich mache das Backup bewusst nicht inkrementel, es handel sich um einige wenige
MB. Somit lohnt der Aufwand meiner Meinung nach nicht.

So sieht das script aktuell aus:

#!/bin/bash
DATE=$(date +%Y-%m-%d-%H%M%S)

BACKUP_DIR="/share/backup-dir/privat/Dokumente"
SOURCE="/share/privat/Dokumente"
tar -cjpf $BACKUP_DIR/backup-$DATE.tar.bz2 $SOURCE

Habt Ihr eine Idee, wie ich das hinbekommen kann?


Besten Dank im Voraus für Eure Hilfe.

gruß
Bastian
Mitglied: colinardo
LÖSUNG 23.10.2014, aktualisiert 24.10.2014
Hallo Bastian,
habe gerade mein QNAP nicht zur Hand, aber das müsste ungefähr so machbar sein. Ich meine Sendmail müsste auf dem QNAP per default die integrierten SMTP-Daten der Mail-Alertfunktion nutzen wenn man sie ohne Parameter aufruft, musst du mal ausprobieren.

01.
#!/bin/bash 
02.
# Mail-Settings ----------- 
03.
MAILFROM="user@domain.de" 
04.
MAILTO="user@domain.de" 
05.
FAILSUBJECT="QNAP Backup fehlgeschlagen" 
06.
FAILBODY="Das Backup des Qnap ist fehlgeschagen mit ErrorCode:" 
07.
SUCCESSSUBJECT="QNAP Backup erfolgreich" 
08.
SUCCESSBODY="Backup wurde erfolgreich abgeschlossen" 
09.
# ------------------------- 
10.
DATE=$(date +%Y-%m-%d-%H%M%S) 
11.
 
12.
BACKUP_DIR="/share/backup-dir/privat/Dokumente" 
13.
SOURCE="/share/privat/Dokumente" 
14.
tar -cjpf $BACKUP_DIR/backup-$DATE.tar.bz2 $SOURCE 
15.
result=$? 
16.
if [[ $result -ne 0 ]] ;then  
17.
  echo -e "To: $MAILTO \nFrom: $MAILFROM \nSubject: $FAILSUBJECT \n\n$FAILBODY $result\n" | sendmail -t 
18.
else 
19.
  echo -e "To: $MAILTO \nFrom: $MAILFROM \nSubject: $SUCCESSSUBJECT \n\n$SUCCESSBODY\n" | sendmail -t 
20.
fi
Grüße Uwe

-edit- gerade auf einem QNAP TS219P getestet.
Bitte warten ..
Mitglied: bastian42
23.10.2014 um 18:42 Uhr
Hallo Uwe,

vielen Dank. Aber wenn ich es richtig verstehe, schickt dieses Ding "nur" eine mail wenn etwas schief läuft.
Ich hätte jedoch auch gerne eine Erfolgsmeldung. Ansonsten weiss ich ja nicht ob es funktioniert hat. Es
könnte ja auch schlicht sein, dass der cronjob nicht aufgerufen wird.

Kannst Du mir da auch noch helfen?

Danke im Voraus.

gruß
Bastian
Bitte warten ..
Mitglied: colinardo
LÖSUNG 23.10.2014, aktualisiert 06.11.2014
Zitat von bastian42:
vielen Dank. Aber wenn ich es richtig verstehe, schickt dieses Ding "nur" eine mail wenn etwas schief läuft.
Ich hätte jedoch auch gerne eine Erfolgsmeldung. Ansonsten weiss ich ja nicht ob es funktioniert hat. Es
könnte ja auch schlicht sein, dass der cronjob nicht aufgerufen wird.

Kannst Du mir da auch noch helfen?
ist im else Teil der IF-Abfrage ergänzt ...
Bitte warten ..
Mitglied: bastian42
23.10.2014, aktualisiert um 19:21 Uhr
Hallo,

danke nochmal.. ging ja echt fix. jetzt hat er nach erfolgreichem backup ein mail gesendet.
leider ist der betreff und der text leer das selbe bei einem Fehler. Er sendet die Mail
aber leider leer.


FehlerMeldung auf der console: tar: Error is not recoverable: exiting now
Wobei der Fehler so provoziert wurde.


gruß
Bastian
Bitte warten ..
Mitglied: colinardo
23.10.2014, aktualisiert um 19:34 Uhr
hmm, kann nur sagen das es hier auf einem QNAP TS219P soweit läuft...
Ruf den tar-Befehl mal manuell auf der Konsole auf und gib direkt danach ein
echo $?
ein, was er dann jeweils als Exitcode ausgibt
Bitte warten ..
Mitglied: bastian42
24.10.2014 um 11:12 Uhr
Danke Dir colinardo. Es funktioniert. Der Fehler lag bei mir.

Gruß
Bastian
Bitte warten ..
Mitglied: bastian42
06.11.2014 um 09:01 Uhr
Hallo,

ich habe leider (wahrscheinlich) ein kleines Problem. Da script läuft und funktioniert.
Wenn ich es jedoch per cronjob laufen lasse schickt er keine Mail, macht aber das
Backup.

Ich habe folgende Einträge ausprobiert

Versuch1:

0 10 * * * /root/backup.sh 2>/dev/null

Versuch2:
0 10 * * * /root/backup.sh

Hat jemand eine Idee, woran es liegen kann?

gruß
Bastian
Bitte warten ..
Mitglied: colinardo
06.11.2014, aktualisiert um 12:30 Uhr
Hat jemand eine Idee, woran es liegen kann?
hmm, auch als Cronjob gehen hier die Mails einwandfrei raus! Wurde auch die richtige Crontab des admin Accounts angepasst ? Was bringt which sendmail für einen Pfad in der Konsole ?
Bitte warten ..
Mitglied: Gersen
06.11.2014, aktualisiert um 12:40 Uhr
Hallo,

mögliche Ursache: CRON gibt nur ein Minimum an Umgebungsvariablen an die aufgerufenen Skripte weiter. D.h., es ist möglich, dass er das "sendmail" (oder einen der anderen Befehle) nicht findet (PATH-Variable).

Lösung: Entweder im Skript (bzw. generell in Crontab-File) die PATH-Variable setzen oder für alle Kommandos absolute Pfade verwenden (siehe auch hier).

Gruß,
Gersen
Bitte warten ..
Mitglied: bastian42
06.11.2014 um 14:58 Uhr
which sendmail
/usr/sbin/sendmail

eingtragen habe ich es als admin mittels crontab -e
Bitte warten ..
Mitglied: colinardo
LÖSUNG 06.11.2014, aktualisiert 07.11.2014
Zitat von bastian42:

which sendmail
/usr/sbin/sendmail
OK der Pfad ist hier ebenfalls gleich; dann trag mal den Pfad oben im Script nach. Anstatt sendmail -t also /usr/sbin/sendmail -t.
Bitte warten ..
Mitglied: bastian42
07.11.2014, aktualisiert um 08:14 Uhr
Ok, nun passt es. Nun sieht der Code bei mir so aus. Danke nochmal für Deine Hilfe

01.
#!/bin/bash 
02.
# Mail-Settings ----------- 
03.
MAILFROM="user@domain.de" 
04.
MAILTO="user@domain.de" 
05.
FAILSUBJECT="QNAP Backup fehlgeschlagen" 
06.
FAILBODY="Das Backup des Qnap ist fehlgeschagen mit ErrorCode:" 
07.
SUCCESSSUBJECT="QNAP Backup erfolgreich" 
08.
SUCCESSBODY="Backup wurde erfolgreich abgeschlossen" 
09.
# ------------------------- 
10.
DATE=$(date +%Y-%m-%d-%H%M%S) 
11.
 
12.
BACKUP_DIR="/share/backup-dir/privat/Dokumente" 
13.
SOURCE="/share/privat/Dokumente" 
14.
tar -cjpf $BACKUP_DIR/backup-$DATE.tar.bz2 $SOURCE 
15.
result=$? 
16.
if [[ $result -ne 0 ]] ;then  
17.
  echo -e "To: $MAILTO \nFrom: $MAILFROM \nSubject: $FAILSUBJECT \n\n$FAILBODY $result\n" | /usr/sbin/sendmail -t 
18.
else 
19.
  echo -e "To: $MAILTO \nFrom: $MAILFROM \nSubject: $SUCCESSSUBJECT \n\n$SUCCESSBODY\n" | /usr/sbin/sendmail -t 
20.
fi
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(30)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Webbrowser
Windows 7 unbeliebte Internetseite sperren (13)

Frage von Daoudi1973 zum Thema Webbrowser ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (13)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

Webbrowser
Internet Explorer schliesst direkt bei Start (10)

Frage von gabeBU zum Thema Webbrowser ...

LAN, WAN, Wireless
gelöst Suche Firmware Image für Cisco Aironet 1252 (10)

Frage von Herbrich19 zum Thema LAN, WAN, Wireless ...