ubuntuusers.de

rsync via cron automatisieren

Status: Ungelöst | Ubuntu-Version: Ubuntu 10.04 (Lucid Lynx)
Antworten |

RS6

Anmeldungsdatum:
13. April 2011

Beiträge: 2

Hallo, folgendes Anliegen habe ich. Ich möchte die Daten einer Windows Freigabe per rsync automatisch sichern lassen. Dazu habe ich die Freigabe gemountet. Die manuelle Sicherung mit dem Terminal klappt schon mal (sudo rsync -a /mountpunkt /sicherung der freigabe). Ich weiß, dass ich jetzt in der crontab den Zeitpunkt der Sicherung angeben muss und außerdem, welches Skript er dafür ausführen soll. Meine crontab: 00 10 * * * /home/benutzer/backup.sh Also täglich um 10 Uhr das Skript backup.sh ausführen. Mein Problem ist jetzt, dass ich nicht weiß, was im Skript stehen muss, damit die Daten der Freigabe gesichert werden. Bis jetzt habe ich nur den Befehl, den ich auch zur manuellen Sicherung mit dem Terminal benutzt habe, in das Skript geschrieben. Es tut sich aber nichts. Könnt Ihr mir da weiterhelfen? Fehlen die Rechte oder der Pfad zu rsync? Gruß...

wesenskrise

Avatar von wesenskrise

Anmeldungsdatum:
26. Oktober 2010

Beiträge: 448

Hi und willkommen im Forum.

Kannst du bitte mit Hilfe dieser Formatierungsmöglichkeiten mal Forum/Syntax (Abschnitt „Syntaxelemente“) (Oder oben auf das Symbol mit dem Zahnrad klicken) folgende Ausgaben schreiben: Inhalt von

crontab -e 

und

sudo crontab -e

Dann noch deinen Konsolenbefehl (mit dem du das bis jetzte gemacht hast) und den Inhalt von backup.sh.

Danach sollte es nur 2 Minuten dauern, bis die Lösung vorliegt 😉

RS6

(Themenstarter)

Anmeldungsdatum:
13. April 2011

Beiträge: 2

crontab -e:

0 0 * * * fwbackups-run -l 'TFTP'

sudo crontab -e:

Da steht nichts drin.

Konsolenbefehl:

sudo rsync -a /tftp/media/ /home/benutzer/Desktop/tftp-backup

backup.sh:

sudo rsync -a /tftp/media/ /home/benutzer/Desktop/tftp-backup

Wenn ich die crontab via sudo nautilus öffne, steht noch mein Befehl "00 10 * * * /home/benutzer/backup.sh" drin. Aber in der crontab -e nicht. Normal? Ich weiß, dass laut google im Skript noch einiges mehr stehen muss, aber ich hab da nichts eindeutiges gefunden.

wesenskrise

Avatar von wesenskrise

Anmeldungsdatum:
26. Oktober 2010

Beiträge: 448

Hi,

also, wenn du diesen rsync Befehl via Cron ausführen lassen willst, dann benötigst du kein Script in den du das einbaust. Du kannst den Befehl auch einfach in Cron schreiben.

Eine Besonderheit wäre noch zu beachten: Da du sudo verwendest, würde crontab -e versagen. Denn dann würde ja immer im Hintergrund eine Authentifizierung verlangt werden.

Also:

sudo crontab -e

Da kommt dann der Befehl rein:

00 10 * * * rsync -a /tftp/media/ /home/benutzer/Desktop/tftp-backup #Backup

Wenn du dann die Benutzerrechte wahren willst, dann kannst du die auch per Cron setzen lassen.

Gehen wir davon aus, das verschieben via rsync dauert 20 Minuten, dann setzt man einfach 30 Minuten später die Benutzerrechte. Komplett würde das so aussehen:

00 10 * * * rsync -a /tftp/media/ /home/benutzer/Desktop/tftp-backup     #Backup
30 10 * * * chown -R benutzer /home/benutzer/Desktop/tftp-backup         #Rechte setzen

Ist das das, was du willst?

Antworten |