PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Cronjob (rsync) zeitlich begrenzen ?



Der Imperator
14.11.10, 00:17
Hallo,

ich will Nachts von meinem privaten Backupstore via rsync die Daten auf eine Strato Hidrive Onlineplatte verschieben. Dazu soll der job von 24:00 bis 06:00 morgens laufen, damit er die DSL während des Tages nicht komplett blockiert. Kann ich sowas realisieren ? Mir ist nicht wichtig, das das Zeug sofort in einem rutsch hochgeladen wird, das kann ruhig mehrere Nächte dauern. Wichtig ist halt, das der Job um 06:00 Uhr endet.

JAF
14.11.10, 06:46
du könntest am morgen ein "killall rsync" machen.

für den fall das es noch läuft würde es dann beendet werden...

L00NIX
14.11.10, 10:41
Starte rsync im Hintergrund, merke dir die PID und kille nur diese nach einer gewünschten Zeitraum:


#!/bin/bash

# Optionen, Quelle und Ziel natuerlich anpassen ;-)
rsync_cmd='rsync [optionen] [quelle] [ziel]'

# Wartezeit in Sekunden
timeout=600

${rsync_cmd} &
pid=$!

sleep ${timeout}

# pruefen, ob sich hinter der PID noch dein Prozess versteckt
if [ $( pgrep -f "${rsync_cmd}" == ${pid} ) ] ; then
kill -TERM ${pid}
fi


Gruß
L00NIX

Aqualung
14.11.10, 11:57
Nützlich könnte noch die rsync-option


--bwlimit=KBPS limit I/O bandwidth; KBytes per second

sein.

Der Imperator
14.11.10, 14:08
Vielen Dank für eure Antworten. Ich denke daraus kann ich was machen.