Eseguire un backup senza disattivare servizi e programmi in esecuzione.
Sei l’unico responsabile per tutto ciò che accade a seguito dell’uso di questo codice.
NB. è necessario avere il servizio di Volume Snapshot Service o VSS avviato.
Per avviare manualmente il servizio VSS aprire il prompt dei comandi di windows (Windows -> Start -> cmd) come Administrator, ed impartire il seguente comando:
net start VSS
in caso non avete avviato command prompt come amministratore vi ritrovate con questo errore:
net start vss Errore di sistema 5. Accesso negato.
create il seguente file batch tramite notepad e salvatelo con un nome a vostro piacimento (tipo: miobackupvss.bat) :
@echo off setlocal :: partizione disco set partition-disk=d: :: destinazione backup locale o in remoto, quest'ultimo deve già avere accesso alla destinazione remota set remote=\\sharefolder\CopiaDati\ :: directory temporanea set mountdir=D:\Backup\Mount\ :: setto nome backup "dati utente" set dirs=Dati Utenti :: creao la certella temporanea rmdir %mountdir% :: rimuovo eventuali copie shadow presenti vssadmin delete shadows /for=%partition-disk% /quiet del shadow.txt :: creo la nuova copia di shadow e copio la struttura su file testo wmic shadowcopy call create Volume=%partition-disk%\ > shadow.txt :: eseguo ciclo for sul contenuto del file shadow.txt for /f "skip=5 tokens=5" %%i in (shadow.txt) do ( mklink /d "%mountdir%" "%%i\" :: copio i dati nella cartella di destinazione for %%n in (%dirs%) do ( robocopy "%mountdir%\%%n" "%remote%\%%n" /mir /sec ) goto :break ) :break :: rimuovo la cartella temporanea rmdir %mountdir% ::rimuovo la copia di shadow creata vssadmin delete shadows /for=%partition-disk% /quiet