Mittwoch, 6. Juni 2012

Backup / Bestanden kopiëren die "In gebruik" of "Locked" in Windows (Command Line)

Als je ooit geprobeerd om een ​​bestand dat wordt vergrendeld door een andere toepassing te kopiëren, heb je waarschijnlijk gezien een foutmelding die lijkt op "Het proces kan niet toegang tot het bestand omdat een ander proces is vergrendeld een deel van het bestand". Dus hoe ga je toch kopiëren?

image

Sinds XP, heeft Windows ondersteund een technologie genaamd Volume Shadow Copy, die wordt gebruikt om de macht van de vorige versies functie in Vista als Systeemherstel en back-ups. Wat het doet is neemt een tijdelijke momentopname van het bestand of de schijf, en laat een applicatie te lezen van de snapshot, zelfs terwijl andere toepassingen toegang tot of het wijzigen van het bestand.

Wat we wel kunnen doen is gebruik maken van een command line utility genaamd HoboCopy dat deze dienst gebruik te kopiëren het bestand.

Inzicht in de Voorwaarden

HoboCopy en de meeste andere back-up voorzieningen gebruik maken van de twee diensten in Windows, en je zult moeten controleren of dat deze diensten niet zijn uitgeschakeld:

  • Volume Shadow Copy
  • Microsoft Software Shadow Copy Provider

Ze kunnen worden overgelaten als handmatig starten, zodat ze niet hoeft te draaien de hele tijd. Hobocopy start automatisch de twee diensten als dat nodig is, en de Volume Shadow Copy-service zal terug worden uitgeschakeld nadat het klaar is.

Met behulp van HoboCopy tot Backup / kopiëren een enkel bestand

De syntax is een beetje vreemd, want HoboCopy is echt bedoeld om gebruikt te worden voor back-up een hele reeks mappen. We kunnen het gebruiken om een ​​enkel bestand back-up door het passeren in de bestandsnaam argument aan het eind.

Opmerking: in Windows Vista moet u een Administrator-modus command prompt starten door met de rechtermuisknop te klikken op de opdrachtprompt in het start menu te kiezen Uitvoeren als Administrator.

Syntax:

hobocopy c: Mapnaam d: backupdirectory

Bijvoorbeeld, ik wil mijn c-up: users geek mail Outlook.pst-bestand naar d: backups Outlook.pst. Hier is de syntax die ik zou gebruiken:

C: > hobocopy c: users geek mail d: backups Outlook.pst

HoboCopy (c) 2006 Wangdera Corporation. hobocopy@wangdera.com

Het starten van een volledige kopie van de c: users geek mail te sturen naar d: backups
Gekopieerde directory
Back-up met succes voltooid.
Back-up begon op 2008-03-09 01:57:28, afgerond 2008-03-09 01:58:39.
1 files (606.45 MB, 1 directories) gekopieerd, 7 bestanden overgeslagen

Met behulp van HoboCopy om een ​​hele Directory Backup

Een veel nuttiger taak zou zijn om mijn hele Gebruiker map, waarschijnlijk back-up naar een externe harde schijf voor bewaring. Voor deze, we willen een paar van de command-line argumenten toe te voegen.

/full Kopieer alle bestanden
/skipdenied Negeer alle toegang geweigerd berichten als gevolg van toestemming fouten.
/r Copy recursief
/y Niet vragen, gewoon kopiëren alles

Syntax:

hobocopy / vol / skipdenied / y / rc: Mapnaam d: backupdirectory

Laten we met hetzelfde voorbeeld, wil ik mijn hele user directory back-up van d: backups , dus ik zou dit commando te gebruiken:

hobocopy / vol / skipdenied / y / rc: users geek d: backups

Dit commando zal waarschijnlijk een zeer lange tijd in beslag, dus je zou willen een dutje of iets te nemen. Aan het einde moet je een bijna perfecte kopie van de directory ... indien er sprake is van toestemming fouten die u zult worden gewaarschuwd om bestanden die niet te kopiëren. Realistisch alle bestanden in uw eigen directory niet moeten dit probleem.

Met behulp van HoboCopy om incrementeel back-up een Drive

Hobocopy ondersteunt ook een back-up bestanden stapsgewijs, dus het zal enige exemplaar van de bestanden die zijn gewijzigd sinds de laatste back-up. Dit werkt vergelijkbaar met utilities zoals rsync, behalve hobocopy slaat de laatste back-up data in een bestand dat je nodig hebt om aan te geven op de opdrachtregel.

/statefile=filename Deze vlag geeft aan het bestand met de laatste back-up informatie bevat.
/incremental Alleen bestanden te kopiëren die zijn gewijzigd sinds de laatste volledige kopie.

Syntax:

hobocopy / incremental / statefile = bestandsnaam / y / rc: Mapnaam d: backupdirectory

Example:

hobocopy / incremental / statefile = d: lastbackup.dat / y / rc: users geek d: backups

De eerste keer dat u deze opdracht uitvoert, moet u / vol in plaats van / incrementele, anders zul je een foutmelding krijgen te gebruiken omdat de staat bestand is nog niet gemaakt. Na dat u kunt de incrementele back-up met de / incrementele schakelaar.

Dit zou een uitstekende manier om automatisch back-ups een reeks mappen, als onderdeel van een geplande taak te zijn.

Download HoboCopy van sourceforge.net

Keine Kommentare:

Kommentar veröffentlichen