# Backup

Con backup, nella sicurezza informatica, si indica un processo di disaster recovery ovvero, in particolare, la messa in sicurezza delle informazioni di un sistema informatico attraverso la creazione di ridondanza delle informazioni stesse (una o più copie di riserva dei dati), da utilizzare come recupero (ripristino) dei dati stessi in caso di eventi malevoli accidentali o intenzionali o semplice manutenzione del sistema. Un backup può anche risultare utile per proteggersi dai ransomware.

## Descrizione

Il concetto di backup si applica a tutto ciò che è computer nel senso proprio del termine e quindi anche a, per esempio: navigatori satellitari, lettori audio o video, cellulari, smartphone e tablet, dispositivi elettronici vari contenenti software (ad esempio un banale cronotermostato casalingo). Per gli apparati il backup si applica pure alla configurazione (il file delle impostazioni e personalizzazioni): ad esempio un comune router o un firewall, ma anche il solito computer di bordo di un veicolo, o in ambito di rete, uno switch. Il processo di backup è un aspetto fondamentale della gestione di un computer: in caso di guasti, manomissioni, furti, smarrimenti, attacchi da parte di malware, vulnerabilità presenti nel sistema, ecc., ci si assicura che esista una copia di sicurezza delle informazioni, assicurando quindi una ridondanza logico/fisica dei dati.
Per copia di sicurezza (replica che assicura ridondanza) di informazioni s'intende comprendere (a seconda del piano): contenuti (file, cartelle, banche dati), proprietà hardware (configurazioni di apparati e dispositivi), applicazioni software (anche complesse come quelle relativi ai server), immagini di interi sistemi, istanze di servizi (ad esempio cloud). Maggiore è la complicazione dell'infrastruttura, maggiore è la vastità e articolazione del processo di backup, eseguito e ripetuto nel tempo.
Disponendo di un software dedicato o incluso nel proprio sistema operativo l'esecuzione del backup può essere manuale, ossia lanciata dall'utente quando necessita, oppure impostata in maniera automatica: in questo secondo caso è l'applicazione che con una periodicità stabilita (per esempio una volta al giorno o alla settimana) fa partire il processo. Un'altra possibilità di programmazione è "su evento" (classico caso è in corrispondenza di installazione di nuovo software o quando qualche parametro hardware va oltre una soglia di allarme). Inoltre si possono stabilire altre particolarità avanzate se rese disponibili dal software utilizzato: selezione delle cartelle/file o dei volumi, tipo di file esclusi, e molte altre. Le applicazioni utilizzano spesso il termine job (lett. "lavoro") o analoghi per indicare la specifica esecuzione, in un dato momento nel tempo (cronologia), di backup (programmata ovvero automatica o manuale/su richiesta): in pratica, una determinata sessione di backup.
La maggior parte degli attuali sistemi operativi per personal computer integra un qualche programma di backup da configurare, ma solo i server appositamente equipaggiati contengono normalmente un servizio nativo automatico con relativa memoria dedicata. Il risultato di un backup eseguito tramite un software dedicato è sempre un file compresso, spesso con estensioni proprietarie ovvero non standard, eventualmente archiviato in cartelle variamente nominate e a volte accompagnato da altri piccoli file di configurazione.
Nelle aziende il tipo di backup e la relativa periodicità sono solitamente regolati da una procedura aziendale soggetta a verifica periodica e ad altre procedure che comportano un intervento manuale. Il responsabile della sicurezza è tenuto ad annotare i controlli periodici e gli interventi sui sistemi. I supporti su cui viene effettuato il backup normalmente devono essere di tipo e marca approvati nella procedura ed è necessario che siano periodicamente verificati e sostituiti. Devono inoltre essere conservati in accordo con le politiche di sicurezza aziendale, ma non solo, per questioni legate alla privacy.
I sistemi di backup utilizzati dalle organizzazioni (imprese, enti, associazioni, scuole ed università) per mettere in sicurezza le loro reti sono ovviamente specifici (applicazioni, supporti, tipo, modalità, frequenza) per non parlare di quelli, estremamente critici, implementati dai data center e dalle server farm che ricorrono a complesse e dedicate architetture di disaster recovery. In questi ambienti, oltre ad avere elevatissimi livelli di efficacia (= disponibilità e affidabilità), occorre che il sistema di backup ripristini le funzioni anche in maniera estremamente efficiente (= velocità).
Il cosiddetto piano di backup programmato consiste nella definizione di cosa salvare (dischi, database, cartelle, utenti, macchine, volumi, ecc.), frequenza, ora di avvio, supporto e percorso di archiviazione, tipo di backup (completo, differenziale, incrementale), modalità di compressione, tipo di log e messaggistica da esporre, tipo di verifica integrità, e molte altre opzioni a seconda della complessità del sistema.
È buona norma eseguire periodiche operazioni di backup anche nei personal computer di uso privato, operazioni di solito eseguite dall'utilizzatore del computer stesso, copiando i dati importanti su supporti ottici o magnetici: CD-R, CD riscrivibili, DVD-R, DVD riscrivibili, Digital Audio Tape, cartucce a nastro, dischi rigidi portatili e SSD portatili con collegamento esterno USB, chiavette USB (USB stick), memorie flash.
Eseguire un backup non è però sufficiente: occorre accertare che il job ottenuto sia corretto ovvero completo e privo di errori in modo che un eventuale recupero (singola estrazione o ripristino totale) sia efficace ed efficiente. Chiaramente anche la sua conservazione è un requisito importante.
È possibile anche eseguire il backup in modo continuo usando servizi come il backup online o i backup appliance, strumenti che permettono questo tipo di operatività attraverso gli agent, software che si occupano di individuare, attraverso criteri, i file nuovi da archiviare e immediatamente ne eseguono la copia di sicurezza.
Anche il palmare e lo smartphone (in generale i dispositivi mobili) sono diventati importanti strumenti per i lavoratori perché contengono dati fondamentali come la rubrica telefonica e il calendario degli appuntamenti, è pertanto diventata buona norma estendere il backup anche a questi strumenti.
Diversi nuovi servizi su internet permettono infine di eseguire il backup degli account e dei dati degli utenti di social network.
Nota bene Solitamente, in ambito specialistico, backup non è a rigori considerato sinonimo di salvataggio, perché i due procedimenti portano a risultati distinti, pertanto:
* 1) con il primo termine si indica un processo articolato, praticamente supportato da un'applicazione software dedicata (potrebbe essere anche quella predefinita del sistema operativo);
* 2) con il secondo termine ci si riferisce all'operazione di copiare dei file (duplicare) dalla posizione originale ad un archivio di sicurezza, senza però implementare il processo descritto nella presente voce.
Oltretutto, mentre con il salvataggio i file o il database sono immediatamente accessibili senza fatica, con il backup occorre selezionare lo specifico job e ripristinarne, massivamente o selettivamente, i contenuti, che è dunque un'operazione più complessa. In ambito aziendale è spesso una procedura che gli utenti devono far fare all'amministratore IT.
Inoltre:
* 1) La clonazione è un particolare tipo di backup in cui si realizza una "immagine" della memoria di massa (replica fisica e logica dell'unità intesa come supporto di memorizzazione, quindi anche unità SSD o NAS o le sole partizioni principali di sistema/avvio) perché sia riutilizzabile (una volta ripristinata) e avviabile esattamente come l'originale; tramite la clonazione non si ripristinano solo i dati (contenuti) ma si riottiene il dispositivo funzionante esattamente com'era nell'istante di creazione dell'immagine. In pratica, non occorre installare sistema operativo, programmi, account, connessioni e impostazioni di rete, driver periferiche o configurare le personalizzazioni utente. La clonazione a immagine, oltre a comprendere esattamente tutto il contenuto del supporto, contiene i settori di avvio e il risultato è sempre un file compresso (con le estensioni dei file immagine).
* 2) Il mirroring è un backup finalizzato a ottenere la replica esatta di un archivio dati. Il mirroring non è una clonazione a immagine perché si copiano, in tutto o in parte, unicamente i dati, cioè le cartelle (o il database) dei contenuti, non l'installato o le unità logiche e di sistema/avvio.
* 3) La sincronizzazione non è un backup, ma è l'operazione mediante la quale i dati prescelti sono archiviati su dispositivi diversi, mantenuti (su comando manuale o automaticamente) "allineati", ovvero identici per contenuti e versione. Trattasi in altre parole di duplicazione con aggiornamento simultaneo e controllato di dati specificati su posizioni (cartelle, archivi, dispositivi) diverse. Esistono varie forme e modalità di sincronizzazione, fra cui quella "in cloud".
* 4) Per archiviazione dati s'intende non la duplicazione, ma lo spostamento di file dalla posizione originaria ad un'altra di conservazione. L'archiviazione ha più uno scopo di efficienza (ordine, pulizia) che di sicurezza.
* 5) Alcuni produttori di software di backup, utilizzando un po' diversamente i termini, distinguono tra clonazione (replica esatta, bit per bit, di un'unità, quindi un'operazione adatta alla migrazione dei dati) e immagine di un'unità (backup completo su file compresso, finalizzato al recupero di un sistema avviabile, ovvero dell'installato funzionante e personalizzato, in cui, ovviamente, occorre avviare un ambiente di ripristino all'accensione del dispositivo in modo da selezionare l'immagine da recuperare). Al di là dei termini usati, l'importante è identificare la funzione e la relativa finalità.
Backup e salvataggio/archiviazione possono anche convivere, così come backup e sincronizzazione (ad esempio quella in cloud mediante i vari account Microsoft, Apple, Google, ecc., per servizi quali: posta elettronica, rubrica, foto, video, documenti e tanti altri).

### Finalità

Solitamente si effettua il backup per due scopi principali, primo di questi recuperare i dati nel momento in cui vengono persi, per esempio perché cancellati o corrotti. La perdita dei dati è piuttosto frequente in ambito domestico, nel 2008 un sondaggio ha rilevato che il 66% degli intervistati ha perso i propri dati. Il secondo scopo è quello di recuperare i dati da un momento precedente, cioè utilizzare una versione precedente rispetto a quella attuale, di dati attualmente in possesso, secondo una politica di conservazione dei dati definiti dall'utente, tipicamente configurata all'interno di un software di backup.
Anche se i backup rappresentano una semplice forma di disaster recovery e dovrebbero sempre essere all'interno di un piano di questo tipo, un semplice backup non è considerabile come piano di disaster recovery completo. La ragione per questa affermazione è che non tutti i sistemi di backup sono in grado di ricostruire interamente un sistema informatico o un'altra configurazione complessa come un computer cluster, server active directory o server di basi di dati semplicemente con il ripristino dei dati.
Dal momento che un sistema di backup contiene almeno una copia di tutti i dati considerati importanti, i requisiti per l'archiviazione delle copie possono essere significativi. L'organizzazione di questo spazio di archiviazione e la gestione del processo di backup può essere un'impresa complicata. Un modello repository dei dati può essere utilizzato per fornire la struttura per lo stoccaggio.
Stante l'attuale diffusione di informazioni disponibili e utilizzate "da remoto" (applicazioni e strumenti web o comunque in logica cloud in primis le reti sociali o la webmail), si effettua il backup anche di questi dati con le seguenti finalità:
* disporre delle informazioni anche offline (cioè su archivi locali) in caso di assenza di connessione;
* mantenere versioni di un dato/informazione (in modo da recuperare i contenuti ante una determinata modifica/aggiornamento);
* conservare i dati in caso di loro perdita o danneggiamento o chiusura del servizio.
In pratica, in questi casi, si fa il procedimento inverso di quello di conservare su contenitori remoti informazioni archiviate in locale.

### Sicurezza del backup

Come qualsiasi dispositivo o metodologia di sicurezza, anche il backup deve essere protetto ovvero esso stesso sicuro, possibilmente con un livello maggiore del resto dei sistemi. La sicurezza del backup si estrinseca in: integrità (i dati devono essere completi, affidabili e ripristinabili senza errori), disponibilità (deve essere ripristinabile quando servisse e rapidamente), riservato (non deve essere accessibile a chi non ne abbia il diritto). Per taluni contesti deve essere anche autentico; ecco perché alcuni sottopongono a firma digitale i pacchetti di backup e li sigillano con marca temporale.
Una pratica sempre più rilevante, specie dalla diffusione dei ransomware in poi, è la scansione antimalware continua dei job di backup e il loro isolamento (segregazione logica e spesso anche fisica) rispetto agli ambienti di produzione. Sono diffusi strumenti, spesso associati alle applicazioni di backup, che sono specifici per questa finalità. Anche se i sistemi di produzione fossero attaccati è indispensabile che i backup non possano essere infettatati. La cifratura e l'immodificabilità dei job di backup sono altre due funzioni sempre più diffuse (la seconda ottenuta anche con dispositivi di memoria specifici).
Eseguire delle prove di ripristino, secondo un piano, onde monitorare i risultati e le prestazioni è un'altra metodologia di sicurezza del backup.

## Spazio di archiviazione
### Modello a repository

Qualsiasi strategia di backup inizia con un concetto di un repository di dati. I dati di backup devono essere memorizzati e probabilmente dovrebbero essere organizzati per gradi. L'organizzazione potrebbe essere semplice come un foglio di carta con una lista di tutti i supporti di backup (CD, ecc) e le date sono stati prodotti. Una configurazione più sofisticata potrebbe includere un indice computerizzato, catalogo, o un database relazionale. Diversi approcci hanno diversi vantaggi. Parte del modello è lo schema di rotazione di backup.

#### Non strutturato

Un repository non strutturato può essere semplicemente una pila di o CD-R o DVD-R con informazioni minime su ciò che è stato eseguito il backup e quando. Questo è il più semplice da attuare, ma ha poche probabilità di ottenere un elevato livello di recupero dei dati in quanto manca automazione.

#### Completo

Un repository di questo tipo contiene immagini di sistema complete prese in uno o più specifici momenti nel tempo. Questa tecnologia è spesso utilizzato dai tecnici informatici per salvare un sistema configurato e perfettamente funzionante, quindi è generalmente più utile per la distribuzione di una configurazione standard per molti sistemi, piuttosto che come uno strumento per fare copie di backup in corso di sistemi diversi.

#### Incrementale

Un repository incrementale mira a rendere minore l'occupazione dello spazio per la memorizzazione delle copie dei dati in base alle differenze che ci sono tra i dati in uso e quelli che sono già nel repository. Questo elimina la necessità di memorizzare copie duplicate di dati invariati: con backup completi un sacco di dati sarà invariato rispetto a quello che è stato eseguito con l'operazione di backup precedente. Tipicamente, un backup di tutti i file è realizzata una volta o a intervalli frequenti e serve come punto di riferimento per un set di backup incrementale. Ripristinare l'intero sistema alla data dell'ultimo backup incrementale comporta il fatto di partire dall'ultimo backup completo preso prima della perdita di dati e quindi applicare ciascuno dei backup incrementali effettuati da allora. Inoltre alcuni sistemi di backup sono in grado di riorganizzare il repository per sintetizzare backup completi da una serie di backup incrementali. Ripristinare un intero sistema richiederebbe di partire dal più recente backup completo e quindi, di applicare solo l'ultimo backup differenziale effettuato, mentre ripristinare l'intero sistema usando i backup incrementali richiede la conservazione di tutti i backup incrementali intermedi nel frattempo effettuati dopo il primo backup completo.

#### Differenziale

In un repository di questo tipo vengono salvati solo i dati che sono stati modificati dopo l'ultimo backup completo. Questo sistema ha il vantaggio che sono necessari solo un massimo di due insiemi di dati per ripristinare i dati. Uno svantaggio, rispetto al metodo di backup incrementale, è che il tempo dall'ultimo backup completo (e quindi le variazioni cumulate dati) aumenta, così come il tempo necessario per eseguire il backup differenziale.
       Note: Chi sviluppa questi sistemi ha standardizzato il significato dei termini "backup incrementale" e "backup differenziale". Tuttavia ci sono stati casi in cui sono state utilizzate delle definizioni contrastanti di questi termini. La caratteristica più rilevante di un backup incrementale è il punto di riferimento che si utilizza per verificare le modifiche. Per definizione standard un backup differenziale copia tutti i file che sono stati creati o modificati dopo l'ultimo backup completo, indipendentemente dal fatto che siano stati fatti altri backup differenziali da allora, mentre un backup incrementale copia solo i file di backup che sono stati creati o modificati dopo l'ultimo backup di qualsiasi tipo, completo o incrementale. Per ripristinare un intero sistema necessita partire dal più recente backup completo e poi applicare solo l'ultimo backup differenziale effettuato.

#### Reverse delta

Un repository "Reverse delta" memorizza una serie di "mirror" dei dati di origine e le differenze tra il mirror e lo stato corrente e precedente, il backup a delta inverso inizierà sempre con un backup completo. Dopo aver eseguito il primo backup il sistema sincronizza periodicamente il backup completo con la copia dal vivo memorizzando i dati necessari per ricostruire le versioni precedenti. Questo può essere fatto utilizzando collegamenti reali o utilizzando differenze binarie. Questo sistema funziona particolarmente bene per i grandi, che cambiano lentamente, alcuni esempi di programmi che utilizzano questo metodo sono rdiff-backup e Time Machine.

#### Protezione continua dei dati

Conosciuto, nel gergo informatico, come Continuous data protection (CDP) (anche continuous backup or real-time backup). In un repository di questo tipo non avviene una pianificazione di backup periodici, ma il sistema registra immediatamente ogni cambiamento del sistema host. Questo è generalmente eseguito salvando byte o a livello di blocco differenze piuttosto che le differenze a livello di file. Si differenzia dal semplice mirroring in quanto consente un roll-back del registro e quindi il ripristino di vecchie immagini di dati. Con un sistema di backup continuo l'RPO è zero.

### Supporti di memorizzazione

Indipendentemente dal tipo di repository, i dati devono essere memorizzati su un supporto di memorizzazione.

#### Nastro magnetico

Il nastro magnetico (cassetta) è stato a lungo il supporto comunemente utilizzato per l'archiviazione di massa dei dati, questa memoria ha un miglior rapporto capacità/prezzo rispetto ai dischi rigidi anche se attualmente questa differenza è relativamente diminuita Ci sono molti formati, molti dei quali sono proprietari o specifici per determinati mercati come mainframe o una particolare marca di personal computer. Il nastro magnetico è un mezzo di accesso sequenziale quindi, anche se i tempi di accesso potrebbero essere alti, la velocità di scrittura o lettura sequenziale dei dati può effettivamente essere molto veloce.
In ambito cloud (è la soluzione tipica dei data center offerta ai clienti premium) si utilizzano le avanzate soluzioni VTL (virtual tape library) ovvero libreria a nastro virtuale.

#### Disco rigido

I dischi rigidi sono largamente usati per l'archiviazione dei dati al momento. I principali vantaggi di questi supporti sono tempi di accesso alle informazioni relativamente brevi, la disponibilità sul mercato, la capacità e la facilità d'uso. I dischi esterni possono essere collegati tramite interfacce locali come SCSI, USB, FireWire o eSATA, o attraverso le tecnologie a lunga distanza come Ethernet, iSCSI, o Fibre Channel. Alcuni sistemi di backup basati su disco supportano la deduplicazione dei dati che possono ridurre notevolmente lo spazio su disco occupato dai dati di backup giornalieri e settimanali. I principali svantaggi dell'utilizzo dei dischi rigidi sono che essi possono essere facilmente danneggiati, in particolare durante il trasporto (ad esempio, per i backup off-site), e che l'integrità dei dati per periodi di lunga durata (qualche anno) è un fattore sconosciuto.

#### Supporti ottici

CD scrivibili, DVD e Blu-ray Disc sono comunemente utilizzati per il backup dei personal computer e in genere hanno bassi costi unitari. Tuttavia, le capacità e velocità di questi e altri dischi ottici sono tipicamente un ordine di grandezza inferiore a disco o nastro. I supporti di questo tipo sono generalmente di tipo WORM (Write Once Read Many, cioè i dati vengono scritti una volta e letti molteplici volte) il che li rende utili per archiviare dati che non verranno più modificati. L'uso di un auto-changer o jukebox può fare dischi ottici un'opzione fattibile per i sistemi di backup su larga scala. Alcuni sistemi di archiviazione ottica consentono di backup di dati catalogati senza contatto umano con i dischi, consentendo l'integrità dei dati più a lungo.

#### Unità a stato solido o SSD

Conosciuti anche come memoria flash, unità flash USB, CompactFlash, SmartMedia, Memory Stick, schede Secure Digital, ecc, questi dispositivi sono relativamente costosi per la loro bassa capacità rispetto ai dischi rigidi, ma sono molto convenienti per il backup di bassi volumi di dati. Un disco a stato solido non contiene parti mobili differenza della sua controparte a trascinamento magnetico o supporto ottico, rendendolo meno suscettibile a danni fisici, generalmente questi supporti hanno una velocità di lettura/scrittura nell'ordine di 500 Mbit/s per 6 Gbit/s. La capacità offerta dagli SSD continua a crescere e i prezzi stanno gradualmente diminuendo man mano che diventano più comuni.

#### Servizi di backup remoto

Poiché l'accesso Internet a banda larga diventa sempre più diffuso, i servizi di backup remoti stanno guadagnando popolarità. Il backup via Internet è in grado di proteggere contro alcuni scenari peggiori, come incendi, inondazioni, terremoti o che avrebbero distrutto qualsiasi backup nelle immediate vicinanze insieme a tutto il resto. Vi sono, tuttavia, una serie di inconvenienti ai servizi di backup remoti. In primo luogo, le connessioni Internet sono di solito più lente dei dispositivi di archiviazione dati locali, inoltre l'uso di banda larga residenziale è particolarmente problematica come backup di routine poiché generalmente la velocità di invio dei dati è di una unità di grandezza più piccola rispetto alla velocità di recupero degli stessi dall'archivio remoto quindi ciò tende a limitare l'uso di tali servizi relativamente a piccole quantità di dati ad alto valore. In secondo luogo, gli utenti devono fidarsi di un terzo fornitore di servizi per mantenere la privacy e l'integrità dei dati, anche se la riservatezza può essere garantita da crittografia dei dati prima della trasmissione al servizio di backup con una chiave di crittografia nota solo per l'utente.

#### Floppy disk

Nel corso degli anni 1980 e all'inizio del 1990 molti utilizzatori di pc domestici erano soliti effettuare il backup dei dati su questi supporti. Tuttavia la capacità di memorizzazione dei floppy disk (dischetti) non è riuscita a recuperare il ritardo con crescenti esigenze, rendendoli attualmente obsoleti.

### La gestione del repository

Indipendentemente dal modello di repository di dati, o supporti di memorizzazione di dati utilizzati per i backup, è necessario raggiungere un equilibrio tra l'accessibilità, la sicurezza e costi della copia dei dati. Questi metodi di gestione dei media non si escludono a vicenda e sono spesso combinati per soddisfare le esigenze dell'utente, per esempio, utilizzando dischi locali per l'allocazione dei dati prima che vengano inviati ad un sistema di archiviazione con nastro magnetico.

#### Online

Questo tipo di gestione è in genere il tipo più accessibile di memorizzazione dei dati, è possibile iniziare a ripristinare i dati in pochi millisecondi. Un buon esempio è un disco rigido interno o di un array di dischi che si trovano nelle vicinanze della sorgente dei dati di cui bisogna effettuare la copia. Questo tipo di stoccaggio è molto comodo e veloce, ma è relativamente costoso, un altro svantaggio è che è abbastanza vulnerabile alla cancellazione o alla sovrascrittura dei dati, per esempio con un'azione malevola intenzionale, o in seguito all'azione di alcuni malware.

#### Offline

In questo caso l'archiviazione richiede una certa azione umana diretta a fornire l'accesso al supporto di memorizzazione, ad esempio l'inserimento di un nastro in un'unità nastro o la connessione di un cavo. Poiché i dati non sono accessibili tramite un qualsiasi computer, tranne che durante periodi limitati in cui sono scritti o letti di nuovo, sono in gran parte immuni a un'intera classe problemi e guasti del sistema online. Il tempo di accesso varia a seconda che i media siano locali o no.

#### Off-site (vaulting)

Il vault è un backup il cui risultato (il singolo job eseguito) è archiviato separatamente (e, possibilmente, lontano) dal sistema di cui si è eseguito il backup. Il termine nasce nel periodo in cui i backup erano archiviati in cassette le quali erano poi fatte custodire in caveau di banca o simili.
Per proteggersi da un disastro o un altro problema specifico di locazione (come un incendio, alluvione, terremoto), si può optare di inviare i supporti di backup in una posizione lontana (off-site). La posizione remota potrebbe essere la casa di un amministratore di sistema, la cassaforte di una banca oppure un bunker predisposto per resistere alle calamità naturali, con sorveglianza e controllo della temperatura. È importante sottolineare che una replica di dati può essere off-site, ma anche online (ad esempio, uno mirror RAID off-site). Tale replica ha un valore piuttosto limitato come backup, e non deve essere confuso con un backup offline.
Questo tipo di backup si chiama vaulting; l'e-vaulting è il servizio di backup remoto via trasmissione digitale ovvero con un servizio che sfrutta, ad esempio, il protocollo Ftp o Https. Diversi provider forniscono questo servizio e il data vault si trova fisicamente conservato in data center o server farm.
Nei sistemi complessi (dove i sistemi devono garantire RPO prossimi allo zero e RTO quasi istantanei) si esegue il vault, soprattutto, per i job che devono avere ritention lunga (o, al limite, indefinita). Ad esempio per quelle informazioni o immagini di apparati che devono rimanere storicizzati e mantenuti in vita (pertanto non devono essere sovrascritti).

#### Sito per il disaster recovery

Nel caso di un disastro i semplici dati contenuti nel backup non saranno sufficienti al recupero completo delle funzionalità e dei servizi in quanto sono necessari fisicamente dei sistemi informatici (se i sistemi originali in uso sono danneggiati o distrutti) su cui ripristinare i dati e le configurazioni. Alcune organizzazioni hanno i propri centri di recupero dati, che sono preparati per questo scenario, mentre altre organizzazioni scelgono di utilizzare un centro di recupero di terze parti questo perché un sito disaster recovery è un investimento enorme, generalmente si tende a trasferire i dati periodicamente tra la sede dell'organizzazione e il sito di disaster recovery. Un modo più rapido sarebbe quello di effettuare il mirroring del disco a distanza, che mantiene i dati del sito il più vicino possibile a quelli effettivamente in uso.

## Selezione ed estrazione dei dati

Un processo di backup di successo inizia con la selezione e l'estrazione di unità coerenti di dati. La maggior parte dei dati sui moderni sistemi informatici sono memorizzati in unità discrete, note come file. Questi file sono organizzati in file system. I file che sono attivamente aggiornati possono essere pensati come "live" e presentare una sfida per il backup. È anche utile per salvare metadati che descrivono il computer o il file system in fase di backup.
Decidere di cosa eseguire il backup in un dato momento è un processo più difficile di quanto sembra. Con il backup dei dati troppo ridondanti, il repository di dati si riempirà troppo rapidamente. Il backup di una quantità insufficiente di dati può portare alla perdita di informazioni critiche.

### I file
#### Copia dei file

Con l'approccio a livello di file, fare copie di file è il modo più semplice e più comune per eseguire un backup. Un mezzo per svolgere questa funzione di base è incluso in tutto il software di backup e tutti i sistemi operativi.

#### Copia parziale dei file

Invece di copiare interi file, si può limitare il backup solo i blocchi o byte all'interno di un file che sono stati modificati in un dato periodo di tempo. Questa tecnica può utilizzare sostanzialmente meno spazio sul supporto di backup, ma richiede un alto livello di complessità per ricostruire i file in una situazione di ripristino. Alcune implementazioni richiedono l'integrazione con il file system di origine.

### I file system
#### Dump del file system

Invece di copiare i file all'interno di un nuovo file system è possibile copiare completamente il file system a livello di blocchi. Il processo di solito comporta smontare il filesystem e l'esecuzione di un programma come dd per sistemi operativi Unix. Poiché il disco viene letto sequenzialmente e con grandi buffer, questo tipo di backup può essere molto più veloce di leggere ogni file normalmente, soprattutto quando il file system contiene molti file piccoli, è molto frammentato, o è quasi pieno. Purtroppo, senza accorgimenti, questo metodo legge anche i blocchi del disco liberi che non contengono dati utili, quindi a volte può anche essere più lento di lettura convenzionale, soprattutto quando il file system è quasi vuoto. Alcuni file system, come ad esempio XFS, forniscono un programma di utilità "dump" che legge il disco in sequenza per alte prestazioni saltando le parti inutilizzate. L'utilità di ripristino corrispondente è in grado di ripristinare in modo selettivo singoli file o l'intero volume a scelta dell'operatore.

#### Identificazione delle modifiche

Alcuni file system hanno un bit di archivio per ogni file che dice che è stato recentemente cambiato. Alcuni software di backup guardano la data del file e la confrontano con l'ultimo backup per determinare se il file è stato modificato.

#### File system a versioni

Un file system a versioni (cioè con la funzione di versionamento dei contenuti o della struttura) tiene traccia di tutte le modifiche apportate a un file e rende tali modifiche accessibili all'utente. Generalmente questo dà l'accesso a qualsiasi versione precedente fino alla data di creazione del file. Un esempio di questo è il Wayback Versioning file system per Linux.

### Dati in tempo reale

Se un sistema di computer è in uso mentre viene eseguito il backup, la possibilità di file essendo aperto per la lettura o scrittura è reale. Se un file è aperto, il contenuto sul disco può non rappresentare correttamente ciò che l'utilizzatore del file intende. Questo è particolarmente frequente per i file di database di tutti i tipi. Il backup fuzzy termine può essere usato per descrivere un backup dei dati in tempo reale che sembra eseguito correttamente, ma non rappresenta lo stato dei dati in qualsiasi singolo punto nel tempo. Questo perché i dati sottoposti a backup cambiano nel periodo di tempo che intercorre tra quando il backup avviata e quando è finito. Per i database, in particolare, i backup fuzzy sono problematici.

#### Backup a snapshot

Lo snapshot è una funzione istantanea di alcuni sistemi di memorizzazione che presenta una copia del file system come se fosse congelato in un punto specifico nel tempo, spesso di un meccanismo di copy-on-write. Un modo efficace per il backup dei dati dal vivo è renderli inattivi temporaneamente (ad esempio chiudendo tutti i file), fare lo snapshot, e quindi riprendere le operazioni in tempo reale. A questo punto lo snapshot può essere archiviato attraverso i metodi trattati. Mentre uno snashot è molto utile per la visualizzazione di un file system come lo era in un punto specifico nel tempo, non è certamente un meccanismo di backup efficace da solo.

#### Backup a file aperti

Molti pacchetti software di backup presentano la capacità di gestire i file aperti in operazioni di backup. Alcuni semplicemente controllano l'apertura del file, se questo viene trovato aperto, l'operazione viene effettuata in un secondo momento. Quando si tenta di comprendere la logistica di backup di file aperti, si deve considerare che il processo di backup potrebbe richiedere diversi minuti per eseguire il backup di un file di grandi dimensioni, ad esempio un database. Al fine di eseguire il backup di un file che è in uso, è fondamentale che nell'intero backup ci sia un singolo snapshot del file, piuttosto che un semplice copia. Ciò rappresenta una sfida per il backup di un file che è in continua evoluzione. In entrambi i casi il file di database deve essere bloccato per evitare modifiche, o deve essere implementato un metodo per assicurare che lo snapshot originale venga mantenuto abbastanza a lungo per essere copiato, il tutto mentre le modifiche vengono mantenute. Il backup di un file mentre viene modificato, in modo che la prima parte del backup rappresenti i dati prima di cambiamenti, che saranno successivamente combinati con i risultati della modifica può comportare il danneggiamento del file copiato che risulta quindi inutilizzabile se non si utilizzano degli accorgimenti.

#### Backup del database a freddo

Durante un backup a freddo, il database è chiuso o bloccato e non disponibili per gli utenti. I dati non cambiano durante il processo di backup in modo che il database è in uno stato coerente quando è torna ad essere utilizzabile.

#### Backup del database a caldo

Alcuni sistemi di gestione di database offrono un mezzo per generare un'immagine di backup del database mentre è in linea e utilizzabile ("a caldo"). Questo in genere include un'immagine incoerente dei file di dati, più un registro delle modifiche apportate mentre la procedura è in esecuzione. Su un ripristino, le modifiche nei file di log vengono riapplicati per portare la copia del database all'ultima versione (il momento in cui il backup a caldo termina la copia).

### Metadati

Non tutte le informazioni memorizzate sul computer sono memorizzate in file. Il ripristino di un sistema completo da zero richiede di tenere traccia di questi dati (chiamati spesso "proprietà" ovvero attributi descrittivi relativi alle informazioni archiviate).

#### Descrizione del sistema

Le specifiche di sistema sono necessarie per ottenere un ripristino corretto dopo un disastro.

#### Settore di boot

Lo spazio di boot può essere ricreato in modo più semplice rispetto al ripristino, bisogna ricordare che non si tratta di un file normale e che il sistema operativo non è in grado di avviarsi senza di esso.

#### Layout del disco originale

Il layout del disco originale, così come le tabella delle partizioni e le impostazioni del file system, sono necessarie per ricreare correttamente il sistema originale.

#### I metadati dei file

I permessi dei file, il proprietario, i gruppi, le liste di controllo degli accessi e tutti gli altri metadati devono essere correttamente ripristinati se si vuole ricreare l'ambiente originale.

#### I metadati del sistema operativo

Diversi sistemi operativi hanno modi diversi di memorizzazione delle informazioni di configurazione. Per esempio i sistemi operativi Microsoft Windows mantengono un registro di informazioni di sistema che è più difficile ripristinare di un tipico file.

## Manipolazione e ottimizzazione dei dati

Spesso è utile o necessario per manipolare i dati sottoposti a backup per ottimizzare il processo di backup. Queste manipolazioni possono fornire numerosi vantaggi tra cui una migliore velocità di backup, la velocità di ripristino, la sicurezza dei dati, l'uso dei media e/o richieste di banda ridotta.

### Compressione

Le applicazioni per eseguire e recuperare il backup (anche quelle predefinite dei sistemi operativi) solitamente comprimono i contenuti copiati. Quelle più raffinate permettono di regolare il livello di compressione, mentre il formato è solitamente predefinito. Vari sistemi possono essere impiegati per ridurre le dimensioni dei dati di origine da memorizzare in modo che utilizzi meno spazio, solitamente è ottenuta tramite algoritmi di compressione dei dati (come quelli usati dai programmi più famosi come Winzip, WinRar, WinAce). Oltre che via software dedicato, la compressione è spesso una funzione integrata nel firmware dell'hardware utilizzato per il backup come le unità a nastro magnetico o di altre tecnologie di memorizzazione (archiviazione).

### Deduplicazione

Quando più sistemi simili sono sostenuti allo sistema di archiviazione di destinazione, esiste la possibilità di ridurre molto la ridondanza all'interno dei dati di backup. Ad esempio, se 20 workstation Windows sono state sottoposte a backup verso lo stesso repository di dati, queste potrebbero condividere un insieme comune di file di sistema. L'archivio dati quindi deve solo memorizzare una copia di tali file per essere in grado di ripristinare una qualsiasi di queste stazioni di lavoro. Questa tecnica può essere applicata a livello di file o anche su blocchi di dati, potenzialmente con conseguente drastica riduzione dello spazio di memorizzazione richiesto. La deduplicazione può verificarsi su un server prima che i dati siano spostati verso supporti di backup, a volte viene indicata come la deduplicazione lato server/client. Questo approccio riduce anche la larghezza di banda necessaria per inviare i dati di backup per la sua media di destinazione. Il processo può verificarsi anche sul dispositivo di archiviazione di destinazione, a volte indicato come linea o back-end di deduplicazione.

### Duplicazione

A volte i processi di backup sono duplicati di una seconda serie di supporti di memorizzazione. Questo può essere fatto per riordinare le immagini di backup, per ottimizzare la velocità di ripristino o avere una seconda copia in una posizione diversa o su un supporto di archiviazione diverso.

### Crittografia

I supporti di memorizzazione removibili, così come i nastri di backup presentano un rischio per la sicurezza dei dati in caso di smarrimento o furto. La crittografia dei dati su questi supporti può attenuare questo problema, però si tratta di un processo che usa intensamente la CPU rallentando la velocità di backup, inoltre la sicurezza dei backup criptati è efficace tanto quanto lo è la sicurezza della politica di gestione delle chiavi.

### Multiplazione

Quando il numero dei computer che eseguono il backup è superiore al numero dei dispositivi di archiviazione di destinazione, la possibilità di utilizzare un unico dispositivo di storage con diversi backup simultanei può essere utile.

### Refactoring

Il processo di riorganizzare dei set di backup in un repository di dati è conosciuto come il refactoring. Ad esempio, se un sistema di backup utilizza un singolo nastro ogni giorno per memorizzare i backup incrementali per tutti i computer protetti, l'operazione di ripristino di uno dei computer potrebbe potenzialmente richiedere molti nastri. Utilizzando tecniche di refactoring si può consolidare tutti i backup di un singolo computer su un unico nastro in modo da ottimizzare la velocità di ripristino.

### Staging

A volte i processi di backup copiano i dati in uno spazio temporaneo su un supporto di memorizzazione diverso da quello di origine prima di essere inviati a destinazione. Questo processo è a volte indicato come D2D2T, acronimo di Disk to Disk to Tape. Questo può essere utile se c'è un problema corrispondente alla differenza di velocità tra il dispositivo di destinazione e il dispositivo sorgente come spesso affrontato in sistemi di backup basati sulla rete. Si può utilizzare questa tecnica per spostare i dati in una posizione centralizzata per applicare poi altre tecniche di manipolazione dei dati.

## Gestione del processo

Fino a quando i nuovi dati vengono creati e modificati, sarà sempre necessario eseguire backup con una certa frequenza. Gli individui e le organizzazioni, partendo da un computer fino a migliaia di sistemi informatici hanno tutti la necessita di proteggere i dati. Le scale possono essere molto diverse, ma gli obiettivi e limitazioni sono essenzialmente le stesse. Chi gestisce il processo di backup è quindi tenuto a valutare e applicare le misure necessarie a garantire un certo grado di successo per la copia dei dati.

### Obiettivi
#### Recovery Point Objective (RPO)

Essenzialmente è il momento in cui si effettua l'ultimo backup prima di un disastro ovvero l'entità del materiale risultato del job di backup (si misura in tempo ma, ovviamente, comporta anche una misura di volume di dati). Il RPO desiderabile sarebbe il punto appena prima dell'evento di perdita dei dati poiché tutte le modifiche effettuate ai dati in istanti di tempo successivi a questo evento vengono perse. Si cerca quindi di realizzare operazioni di backup il più frequente possibile in modo da perdere il minor numero di dati possibile.
Attenzione a non confondere RPO di backup con ritention di backup che è la durata di conservazione di un job di backup (e non è detto che sia il più recente).

#### Recovery Time Objective (RTO)

La quantità di tempo trascorso tra il disastro e il ripristino delle funzioni aziendali, ovviamente dipende dal tipo di disastro e dalla bontà del piano di disaster recovery.

#### Sicurezza dei dati

Oltre a preservare l'accesso ai dati per i suoi proprietari, bisogna mettere in pratica misure che riescano ad impedire accessi non autorizzati, per esempio tramite crittografia dei dati e politiche di gestione dei supporti adeguati. Sia per gli attacchi malware (specie dei ransomware) che per evitare altre minacce (involontarie modifiche per errore umano), sempre piu spesso (a livello professionale quasi sempre) le copie di backup sono protette contro le alterazioni (si può impostare anche l'immodificabilità irreversibile)

#### Periodo di conservazione dei dati

Regolamenti e la politica di gestione del backup possono portare a situazioni in cui si prevede che le copie devono essere conservate per un periodo di particolare, ma non oltre. Mantenere i backup dopo questo intervallo temporale (in gergo ritention) può portare a responsabilità indesiderate e l'uso non ottimale dei supporti di memorizzazione.
Mentre le immagini di un dispositivo solitamente sarebbe meglio averle aggiornate, in diversi casi potrebbe essere necessario conservare (alta ritention) dei job di backup full per recuperare informazioni pre modifiche (soprattutto eliminazioni) dannose (volontarie o meno) che, invece, si perderebbero durante la sovrascrizione dell'ultimo backup sul precedente. Molti software di backup consentono, in maniera trasparente per l'utente sulla tipologia di backup, di stabilire l'RPO e la relativa ritention, in maniera granulare, degli oggetti, così che si possa ripristinare nel tempo un'informazione com'era prima di una certa modifica.

## Limitazioni

Uno schema di backup efficace prenderà in considerazione le limitazioni della situazione che possono essere le seguenti.

### Finestra di backup

Il periodo di tempo in cui i backup sono autorizzati per essere eseguiti su un sistema si chiama finestra di backup. Questo è tipicamente il un intervallo di tempo in cui il sistema vede il minimo utilizzo e il processo di backup avrà la minima quantità di interferenza con le normali operazioni. La finestra di backup è di solito prevista in modo tale da non ridurre la produttività di utenti e sistemi. Se un backup si estende oltre la finestra di backup definita, viene presa una decisione scegliendo se sia più vantaggioso interrompere il backup o se allungare la finestra di backup.

### Impatto sulle prestazioni

Tutti gli schemi di backup hanno un certo impatto sulle prestazioni del sistema quando viene eseguito il backup. Ad esempio, per il periodo di tempo che un sistema informatico viene eseguito il backup, il disco rigido è la lettura dei file occupato a scopo di backup, e la sua larghezza di banda piena non è più disponibile per altre attività. Tali impatti dovrebbero essere analizzati e gestiti.

### I costi dell'hardware, software e del lavoro

Tutti i tipi di supporti di memorizzazione hanno una capacità finita con un costo reale. Fare una stima corretta della capacità di memoria (nel tempo) con le esigenze di backup è una parte importante della progettazione di un sistema di backup. Qualsiasi schema di backup ha qualche fabbisogno di manodopera, ma schemi complicati hanno un fabbisogno di manodopera notevolmente superiore. Infine anche costo del software di backup commerciale può essere importante.

### La larghezza di banda della rete

I sistemi di backup distribuiti possono essere influenzati da una larghezza di banda limitata.

### Implementazione

Raggiungere gli obiettivi definiti a fronte delle limitazioni di cui sopra può essere un compito difficile. Gli strumenti e concetti che seguono possono rendere questo compito più semplice.

#### Lo scheduler

Utilizzando un job scheduler può migliorare notevolmente l'affidabilità e la coerenza dei backup, eliminando parte dell'elemento umano. Molti pacchetti software di backup includono questa funzionalità.

#### Autenticazione

Nel corso delle operazioni regolari, gli account utente e/o agenti di sistema che eseguono i backup devono essere autenticati fino ad un certo livello. Il potere di copiare tutti i dati da un o su un sistema richiede l'accesso senza restrizioni. L'utilizzo di un meccanismo di autenticazione è un buon modo per evitare che lo schema di backup sia utilizzato per effettuare attività non autorizzate.

#### Catena di fiducia

I supporti di memorizzazione removibili sono elementi fisici e per cui devono essere maneggiati solo da persone di fiducia. Stabilire una catena di persone di fiducia (e fornitori) è fondamentale per definire la sicurezza dei dati.

### Misurazione dei processi

Per garantire che lo schema di backup funzioni come previsto, i fattori chiave devono essere monitorati e ne devono essere salvati dati statistici.

#### Validazione dei backup

Fornisce informazioni sul backup, e dimostra la conformità agli enti normativi esterni all'organizzazione. Disastri, complessità dei dati, valore di questi ultimi e la crescente mole di dati contribuiscono all'ansia e alla dipendenza da piani efficaci per garantire la continuità aziendale. Così molte organizzazioni si affidano a soluzioni di terzi per testare, convalidare e ottimizzare le loro operazioni di backup (report di backup).

#### Report

Nelle configurazioni più grandi, i rapporti sono utili per l'utilizzo di monitoraggio dei media, lo stato del dispositivo, gli errori, il coordinamento dei sistemi e altre informazioni sul processo di backup.

#### Controllo dei log

Oltre alla storia di rapporti generati dal computer, i log delle attività e delle modifiche sono utili per monitorare gli eventi di sistema di backup.

#### Validazione dei file

Molti programmi di backup utilizzano checksum o hash per verificare che i dati sono stati accuratamente copiati. Questi offrono diversi vantaggi. In primo luogo, essi consentono l'integrità dei dati da verificare senza riferimento al file originale: se il file memorizzato sul supporto di backup ha lo stesso checksum che è stato calcolato al momento della copia, allora è molto probabilmente corretto. In secondo luogo, alcuni programmi di backup possono utilizzare checksum per evitare di fare copie ridondanti dei file, e quindi migliorare la velocità di backup. Ciò è particolarmente utile per il processo di deduplicazione.

#### Backup monitorati

I processi di backup sono monitorati da un centro di monitoraggio di terze parti, che avvisa gli utenti di eventuali errori che si verificano durante i backup automatici. Alcuni servizi di monitoraggio consentono anche la raccolta di metadati storici, che possono essere utilizzati per la gestione delle risorse di storage come proiezione di crescita della mole di dati, individuando la ridondanza dello storage primario e capacità di backup utilizzabile in futuro.

## Programmi di backup
### Funzionalità

Diverse applicazioni di backup utilizzano (non traducendoli) i termini inglesi job o task per intendere la singola operazione di backup (in pratica, l'esecuzione di un'occorrenza di backup, caratterizzata da specifiche impostazioni stabilite dall'utilizzatore e della relativa data-istante di produzione). I job sono quindi individualmente identificati e riepilogati temporalmente.
Alcune delle principali funzionalità che un programma di backup dovrebbe fornire, sono:
* Copia immagine di un'unità intera di archiviazione (HDD, SDD, NAS, ecc.) cioè la cosiddetta clonazione (replica esatta e ripristinabile);
* Copia immagine di una partizione o di un volume, in particolare del volume di avvio/sistema o dell'eventuale partizione di ripristino o dei punti di ripristino;
* Copia selettiva di directory e singoli file;
* Esecuzione con o senza sincronizzazione cioè l'eliminazione, dalle destinazioni, dei file che non esistono più nell'origine;
* Copia delle cartelle degli utenti (del sistema operativo o dell'applicazione), delle cartelle di sistema o dei driver;
* Tipologia di backup (completo, differenziale, incrementale, immagine disco);
* Criteri di selezione per la ricerca dei contenuti salvati e per la scelta di quelli che devono essere oggetto di backup (per data, tipo di file, autore della modifica);
* Livello di compressione dei contenuti per ridurre lo spazio di archiviazione richiesto per il job di backup;
* Verifica di integrità (ovvero il controllo che il contenuto del backup sia privo di errori) e di completezza (cioè che tutto il materiale selezionato sia poi stato effettivamente processato);
* Sicurezza: protezione dei contenuti copiati attraverso scansione antivirus specifica, password, crittografia e immodificabilità irreversibile del file di backup; firma digitale del pacchetto quando è necessario attestare l'autenticità; archiviazione del job in una posizione (logica e, quando possibile fisica) protetta, ad esempio in un archivio/server isolato dal resto della LAN (DMZ o subnet), protetto da firewall specifico e, possibilmente, non connesso a internet;
* Schedulazione: piano programmato dei job di backup (frequenza, ora di avvio, tipologia, selezione da includere, supporto, ecc.);
* Esposizione dei risultati ovvero la notifica dell'esito dell'operazione attraverso un file di log, sintetico o completo, leggibile anche via e-mail;
* Recupero (o ripristino) (in inglese restore o recovery) delle informazioni, precedentemente sottoposte a backup, nelle modalità prescelte: individuazione job nella cronologia, selezione versione informazioni, percorso di destinazione (quello predefinito della singola informazione copiata ovvero quello originale nell'istante di backup oppure qualsiasi altro percorso), estrazione e copia o sovrascrittura o copia con ridenominazione, verifica della correttezza delle operazioni, messaggistica, ecc.
I programmi di backup di livello medio/avanzato consentono anche il backup di database (ad esempio quelli dei sistemi gestionali ad uso aziendale), server virtuali, posta elettronica, spazi di social media e altro. Quelli di livello professionale ovvero dedicati a strutture aziendali (business) allargano le funzioni al backup dei componenti del dominio (utenti, gruppi, policy, risorse), configurazioni degli apparati, immagini dei client e dei server e molte altre.
Accanto alle applicazioni software (sempre più fruite in modalità SaaS) sono disponibili apparati hardware (specie lo storage) specifici (ovvero progettati) per il backup.

### Esempi

* Cobian Backup, utilizzabile in ambiente Microsoft Windows, dotato di licenza freeware e disponibile anche in lingua italiana.
* Comodo Backup, utilizzabile in ambiente Microsoft Windows, dotato di licenza freeware e disponibile anche in lingua italiana.
* rsync con la sua interfaccia grafica Grsync, multipiattaforma con licenza libera GPL e disponibile anche in lingua italiana.
* FreeFileSync, utilizzabile in ambiente Microsoft Windows, Linux, OS X, con licenza libera GPL e disponibile anche in lingua italiana.
* Bacula, multipiattaforma, con licenza libera GNU Affero General Public License v3.0 e disponibile anche in lingua italiana.