Hallo Forum,
ich möchte ein paar Daten per robocopy von einem Win7 Rechner auf eine remote DS schieben.
Nun ist es leider so, dass die Internetverbindung instabil ist. Ich versuche das mit einem batch-script abzufangen, bislang ohne Erfolg.
Wenn die Verbindung nur kurz unterbrochen wurde (also zwei, drei Sekunden), bleibt die Verbindung von Netzwerkressource, also der DS und (bei mir) dem Laufwerk Z: erhalten und danach kopiert robocopy weiter.
Ist die Verbindung aber länger unterbrochen, wird auch die Verbindung zu Laufwerk Z: unterbrochen, sprich wenn dann die Internet-Verbindung wieder steht, ist dennoch die Zuordnung zwischen Netzwerkressource und Laufwerk getrennt. Gibt es eine Möglichkeit innerhalb von robocopy (eine Option) diese Zuordnung wieder herzustellen?
Bislang versuche ich das mit errorlevel abzufangen, sprich wenn robocopy wegen fehlendem Ziellaufwerk abbricht, geht das Skript in eine Schleife und versucht das Ziellaufwerk wieder herzustellen. Das gelingt meist. Wenn dann jedoch robocopy mit dem Kopieren weiter machen soll, passieren je nach dem zwei verschiedene Dinge:
1. robocopy kündigt Kopieren an, aber beginnt nicht, der Prozess friert ein. Es kommt auch zu keiner Fehlermeldung.
2. es kommt eine Fehlermeldung, nämlich dass die zu kopierende Datei bereits von einem anderen Prozess benutzt wird. Das ist aber der bereits beendete erste Kopierversuch.
Der Kopierprozess ist dann tot, ich muss die teilweise kopierte Datei löschen (hier ist übrigens problematisch, dass die Dateiinfos alle schon da sind, also eine Datei die komplett zB. 5MB hat wird sofort mit 5MB angezeigt, auch wenn erst ein paar kB kopiert wurden. Das ist lästig, weil man dadurch die teilweise kopierte und folglich kaputte Datei nicht ohne weiteres findet) und dann den Kopierprozess komplett neu starten. Aber das ist nicht in meinem Sinn, zumal die Dateien gross sind und die bis dahin geuploadeten Daten eigentlich weiter geführt werden sollen.
Wie bekommt man es hin, dass robocopy den Prozess des Kopieren, den es selbst bemerkt, auch wieder weiter führt? Die Option /Z ist natürlich gesetzt.
hier der Befehl: robocopy bkp_test\ Z:\test\ *.pdf /MT:8 /COPY: DAT /j /z
Was mache ich falsch?
mit freundlichen Grüßen
buja
ich möchte ein paar Daten per robocopy von einem Win7 Rechner auf eine remote DS schieben.
Nun ist es leider so, dass die Internetverbindung instabil ist. Ich versuche das mit einem batch-script abzufangen, bislang ohne Erfolg.
Wenn die Verbindung nur kurz unterbrochen wurde (also zwei, drei Sekunden), bleibt die Verbindung von Netzwerkressource, also der DS und (bei mir) dem Laufwerk Z: erhalten und danach kopiert robocopy weiter.
Ist die Verbindung aber länger unterbrochen, wird auch die Verbindung zu Laufwerk Z: unterbrochen, sprich wenn dann die Internet-Verbindung wieder steht, ist dennoch die Zuordnung zwischen Netzwerkressource und Laufwerk getrennt. Gibt es eine Möglichkeit innerhalb von robocopy (eine Option) diese Zuordnung wieder herzustellen?
Bislang versuche ich das mit errorlevel abzufangen, sprich wenn robocopy wegen fehlendem Ziellaufwerk abbricht, geht das Skript in eine Schleife und versucht das Ziellaufwerk wieder herzustellen. Das gelingt meist. Wenn dann jedoch robocopy mit dem Kopieren weiter machen soll, passieren je nach dem zwei verschiedene Dinge:
1. robocopy kündigt Kopieren an, aber beginnt nicht, der Prozess friert ein. Es kommt auch zu keiner Fehlermeldung.
2. es kommt eine Fehlermeldung, nämlich dass die zu kopierende Datei bereits von einem anderen Prozess benutzt wird. Das ist aber der bereits beendete erste Kopierversuch.
Der Kopierprozess ist dann tot, ich muss die teilweise kopierte Datei löschen (hier ist übrigens problematisch, dass die Dateiinfos alle schon da sind, also eine Datei die komplett zB. 5MB hat wird sofort mit 5MB angezeigt, auch wenn erst ein paar kB kopiert wurden. Das ist lästig, weil man dadurch die teilweise kopierte und folglich kaputte Datei nicht ohne weiteres findet) und dann den Kopierprozess komplett neu starten. Aber das ist nicht in meinem Sinn, zumal die Dateien gross sind und die bis dahin geuploadeten Daten eigentlich weiter geführt werden sollen.
Wie bekommt man es hin, dass robocopy den Prozess des Kopieren, den es selbst bemerkt, auch wieder weiter führt? Die Option /Z ist natürlich gesetzt.
hier der Befehl: robocopy bkp_test\ Z:\test\ *.pdf /MT:8 /COPY: DAT /j /z
Was mache ich falsch?
mit freundlichen Grüßen
buja