Creare regolarmente copie di backup dei propri dati è senza dubbio la chiave di volta per non trovarsi in difficoltà in caso di errore umano, crash del sistema, infezioni malware e incidenti di vario genere.
Nell’articolo Backup, le migliori strategie per proteggere i dati abbiamo presentato varie strategie per creare copie di sicurezza dei propri documenti e file.
In questo articolo presentiamo una semplice procedura che permette di impostare un semplice backup dei dati sulla singola workstation o sul singolo PC Windows.
Vedremo come creare il mirroring dei contenuti di una cartella usando esclusivamente gli strumenti messi a disposizione da Windows. La copia di backup sarà creata all’avvio del sistema, una soluzione ragionevole che permette di non aumentare le attese in fase di spegnimento o ibernazione e che evita qualunque interferenza da parte della routine di arresto della macchina.
Impostare un backup all’avvio del sistema con l’Utilità di pianificazione
Nell’articolo Robocopy: come copiare velocemente file e cartelle in rete locale abbiamo visto come l’utilità Robocopy, integrata in Windows, permetta di facilitare la copia di file e cartelle in locale oppure su risorse condivise all’interno della rete locale (ad esempio su server NAS).
In ogni caso, soprattutto se si utilizzassero server NAS, è importante verificare la configurazione del supporto di destinazione (quello che accoglierà i backup) e accertarsi che supporti il versioning ovvero permetta di recuperare precedenti versioni degli stessi file.
1) Ciò premesso, per impostare un backup automatico all’avvio di Windows, suggeriamo di premere la combinazione di tasti Windows+R
, digitare %userprofile%
quindi crearvi un file batch chiamato backup.bat
con il seguente contenuto:
@echo off
robocopy "C:\LAVORI" "\\DESTINAZIONE\LAVORI" /MIR
Al posto di C:\LAVORI
andrà indicata la cartella contenente i file e le sottocartelle oggetto di backup; \\DESTINAZIONE\LAVORI
va invece sostituito con il percorso di rete all’interno del quale si dovranno copiare i file.
È ovviamente fondamentale che l’accesso al sistema di destinazione sia sempre garantito, anche all’avvio di Windows. Il consiglio è eventualmente quello di mappare la risorsa di rete premendo Windows+E
quindi cliccando sul pulsante Connetti unità di rete.
La casella Riconnetti all’accesso dovrà essere lasciata attivata mentre Unità consente di scegliere la lettera identificativa di unità da abbinare alla risorsa di rete così mappata.
Il contenuto dello script dovrà essere modificato, nell’esempio, con @echo off
robocopy "C:\LAVORI" "Z:\LAVORI" /MIR
Importante: lo switch /MIR
effettua un mirroring completo della cartella di origine in quella di destinazione. Assicurarsi che la cartella di destinazione sia vuota altrimenti si perderà il contenuto in essa presente (che verrà interamente sostituito con quello della directory specificata come origine) (nell’esempio C:\LAVORI
).
2) Come cartella di destinazione è possibile specificare anche un’unità OneDrive quindi effettuare il backup sui server Microsoft. Nel file batch suggeriamo di sostituire quanto indicato al punto precedente con ciò che segue:
@echo off
net use s: https://d.docs.live.net/9999999999 /user:nomeutente@hotmail.com pwD$abc%%fP /persistent:No
md s:\LAVORI
robocopy "%userprofile%\LAVORI" S:\LAVORI /MIR
net use s: /delete
Al posto di 9999999999
va indicato il valore del parametro CID che si può evincere nella barra degli indirizzi di qualunque browser dopo aver effettuato il login su OneDrive con il proprio account, da questa pagina.
Al posto di nomeutente@hotmail.com
deve essere specificato l’indirizzo email usato per l’autenticazione su OneDrive mentre la stringa pwD$abc%%fP
va sostituita con la password corretta.
A proposito della password, è bene evidenziare un aspetto importante: se essa contenesse caratteri speciali come %, & e così via, si dovrà effettuarne l’escaping.
Nel caso del simbolo %, tutte le occorrenze nella password dovranno essere raddoppiate (nell’esempio, la password reale è pwD$abc%fP
, con un solo simbolo percentuale); & deve essere sostituito con ^&
.
Tutti i valori di escaping corretti sono indicati a questo indirizzo; viceversa si otterrebbe l’errore L’operazione richiesta non è stata eseguita poiché l’utente non è stato autenticato.
Lo script, così come strutturato, provvede a mappare un account OneDrive assegnando ad esso la lettera identificativa di unità S: impostando l’attività come non persistente (non resiste ai riavvii del sistema).
Il comando md s:\LAVORI
provvede, se inesistente, a creare una nuova cartella chiamata “LAVORI” sull’acconunt OneDrive mentre il successivo robocopy
consentirà di creare un backup dei dati.
La cartella LAVORI
non deve esistere nella directory radice dell’account OneDrive altrimenti il suo contenuto verrà rimosso per effettuare il mirroring dei file e delle cartelle trasmesse dal PC locale.
Se si cadesse in qualche errore, cliccando su Cestino nella colonna di sinistra dell’interfaccia di OneDrive si potranno ripristinare gli elementi rimossi per sbaglio.
Cliccando con il tasto destro del mouse su qualunque file quindi scegliendo Cronologia versioni è possibile verificare le versioni dello stesso oggetto che OneDrive ha creato e conservato nel corso del tempo.
OneDrive si rivela quindi un ottimo strumento per eseguire il backup con i dati che vengono salvati su server sicuri e con un meccanismo di versioning sempre attivo.
Nell’articolo OneDrive, accedi ai documenti da qualunque luogo e con qualsiasi dispositivo abbiamo visto come funziona l’integrazione di Windows 10 con OneDrive ma i comandi che abbiamo visto in precedenza permettono di personalizzare in profondità il comportamento del backup.
3) A questo punto, per predisporre il backup automatico, basterà digitare Utilità di pianificazione nella casella di ricerca di Windows 10, cliccare sul menu Azione, Crea attività, assegnare un nome all’attività e scegliere Esegui indipendentemente dalla connessione degli utenti nella stessa schermata.
Nella scheda Attivazione si dovrà premere il pulsante Nuovo quindi scegliere All’avvio.
In Azioni, infine, bisognerà indicare il file batch creato in precedenza. Posto di aver salvato il file backup.bat
nella cartella %userprofile%
, bisognerà premere Nuova e digitare %userprofile%\backup.bat
nella casella Programma o script.
Cliccando su OK, Windows chiederà di immettere le informazioni sull’account utente per l’esecuzione dell’attività.
Scegliendo un account dotato dei privilegi di amministratore e inserendo la password corrispondente si otterrà il messaggio d’errore “Errore relativo all’attività. Messaggio di errore: il nome di account specificato non è valido“. Un errore francamente inspiegabile visto che è Windows stesso a proporre gli account presenti sulla macchina.
Per superare il problema è necessario indicare NOMEMACCHINA\NOMEACCOUNT
nel menu a tendina, così come si vede nell’esempio (immagine pubblicata di seguito).
4) Riavviando il PC, Windows provvederà ad effettuare il backup richiesto in locale, su una cartella condivisa in rete oppure sul cloud di Microsoft.
Due considerazioni finali: le unità mappate da prompt dei comandi con net use
non sono accessibili da qualunque applicazione non eseguita con i diritti di amministratore (neppure da Esplora file).
Inoltre, se si volesse avere un’unità virtuale facente sempre riferimento all’account OneDrive si può premere la combinazione di tasti Windows+E
, cliccare su Connetti unità di rete e, nel campo Cartella, digitare https://d.docs.live.net/9999999999
sostituendo a 9999999999
il valore CID visto in precedenza.
Dopo aver inserito le credenziali di accesso (questa volta senza escaping della password), questa volta tutte le applicazioni di Windows – anche quelle sprovviste dei diritti di amministratore – potranno accedere all’unità S: di OneDrive.
Nell’articolo Google Drive backup in Windows: come procedere da riga di comando avevamo visto come attivare il backup su Google Drive da riga di comando.