37414
Goto Top

Robocopy - Dateien kopieren, die von einem anderen Prozess verwendet werden

Hallo,

ich habe ein kleines Batch-Script geschrieben für das Backup von Programmdaten.
Das Script läuft täglich über die Aufgabenplanung und erstellt am Ende eine LOG-Datei.

Leider wird offenbar eine Datei nicht mit gesichert:

	  *EXTRA Datei		       0	Logdatei.LOG
2020/09/15 19:37:00 FEHLER 32 (0x00000020) Zus„tzliche Datei wird gel”scht E:\Backup\Chipdrive\Logdatei.LOG
Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird.

Ich verstehe diese Fehlermeldung nicht und bin mir auch nicht sicher, was bezüglich der LOG-Datei gemeint ist.
Ebenso die Sonderzeichen statt der Umlaute...

Wie kann ich mit Robocopy Dateien kopieren, die von einem anderen Prozess gerade verwendet werden?

Freue mich auf Eure Tipps.

Schöne Grüße,
imebro

Content-ID: 605000

Url: https://administrator.de/contentid/605000

Ausgedruckt am: 22.11.2024 um 07:11 Uhr

NordicMike
NordicMike 16.09.2020 um 11:58:56 Uhr
Goto Top
Moderne Backup Programme machen eine Schattenkopie, davon kann man alles kopieren.
37414
37414 16.09.2020 um 12:22:10 Uhr
Goto Top
Danke Dir...

Aber ich habe ja nicht nach der Einrichtung für dieses Backup mit einem "modernen Backup Programm" gefragt, sondern nach der Umsetzung per Batch-Script face-smile

Würde mich über eine Antwort freuen, die mir diesbezüglich weiterhilft.

Danke und Gruß,
imebro
NordicMike
NordicMike 16.09.2020 um 13:07:07 Uhr
Goto Top
Dann hast du nicht nachgedacht, was man aus der Antwort alles machen kann. Du kannst natürlich auch per Batch ein Snapshot antriggern.
SlainteMhath
SlainteMhath 16.09.2020 aktualisiert um 13:43:09 Uhr
Goto Top
Moin,

Die Meldung bedeutet:

- Du verwendest den Switch /mir oder /purge
- Die genannte Datei existiert im Quellverzeichnis nicht (mehr) (deswegen "EXTRA Datei")
- Robocopy will deswegen die genannte Datei löschen, kann aber nicht, weil die von einem anderen Prozess gesperrt ist

Hat null, nada, zipp mit Shadowncopies oder Snapshots zu tun.

lg,
Slainte
37414
37414 16.09.2020 aktualisiert um 16:11:26 Uhr
Goto Top
OK @SlainteMhath: das erscheint mir logisch...

Die LOG-Datei existiert natürlich nur im Zielverzeichnis und nicht im Quellverzeichnis.
Und ich habe im Script beide Seiten gespiegelt (/mir).

Lässt sich dieser Hinweis irgendwie verhindern?
Auf jeden Fall ist die LOG-Datei im Zielverzeichnis vorhanden und sie hat ja auch den korrekten Inhalt face-smile

LG
imebro
Henere
Henere 16.09.2020 um 17:15:32 Uhr
Goto Top
Das log wird von robocopy erzeugt ? Dann lege es woanders hin.
NordicMike
NordicMike 16.09.2020 um 17:22:24 Uhr
Goto Top
Hat null, nada, zipp mit Shadowncopies oder Snapshots zu tun.
Dann hat es aber nichts mit geöffneten Dateien zu tun.
Stefan41
Lösung Stefan41 16.09.2020 um 22:31:01 Uhr
Goto Top
Zitat von @37414:
> 	  *EXTRA Datei		       0	Logdatei.LOG
> 2020/09/15 19:37:00 FEHLER 32 (0x00000020) Zus„tzliche Datei wird gel”scht E:\Backup\Chipdrive\Logdatei.LOG
> Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird.
> 



*EXTRA Datei bedeutet, dass die Datei auf der Zielseite gelöscht werden möchte.

Wenn die logdatei.log zufällig die Log Datei deines Robocopy Befehls ist, kannst du diese natürlich nicht löschen, weil du ja aktuell in sie rein schreibst.
Wie schon geschrieben wurde, lass dir die Log Datei in ein separates Verzeichnis ausgeben, dann umgehst du das Problem.


Ich verstehe diese Fehlermeldung nicht und bin mir auch nicht sicher, was bezüglich der LOG-Datei gemeint ist.
Ebenso die Sonderzeichen statt der Umlaute...


Sonderzeichen in der Ausgabe der Batchdatei kommen aufgrund des gewählten Zeichensatzes. Lösung dafür habe ich aber grade auch nicht parat.

Wie kann ich mit Robocopy Dateien kopieren, die von einem anderen Prozess gerade verwendet werden?


wir reden hier vom löschen und das geht natürlich nicht, wenn die Datei aktuell im Zugriff ist.

Wir nutzen das robocopy Werkzeug auch für Backups und hatten auch immer wieder Probleme, wenn die User Outlook PST Dateien im Zugriff hatten und dabei blieb robocopy dann auch stehen und kann auf die Datei nicht zugreifen. Man kann einzelne Dateien oder Ordner mit dem Parameter /XF bzw XD ausschließen, aber das hilft für das komplette Backup ja nicht.
37414
37414 17.09.2020 aktualisiert um 08:45:47 Uhr
Goto Top
OK und danke.

Es ist tatsächlich so, dass ich die LOG-Datei per Robocopy-Befehl ins gleiche Verzeichnis gelegt habe.
Eigentlich ist es dann logisch, dass aufgrund "/mir" dann versucht wird, diese Log-Datei zu löschen.
Werde sie an einen anderen Ort legen und dann dürfte es gut sein.

Bezüglich Sonderzeichen habe ich herausgefunden, dass man den Standard-Zeichensatz mit dem Eintrag "chcp 1252" in der Batch ändern kann. Und am Ende muss man dann wieder zurückstellen auf "chcp 850", also den Standard-Zeichensatz. Habe das jetzt auch in meiner Batch mal so eingetragen und werde morgen berichten, ob es funktioniert hat.

Danke und Gruß,
imebro