Backup
Con backup[1], 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)[2] dei dati stessi in caso di eventi malevoli accidentali o intenzionali o semplice manutenzione del sistema[3].
Descrizione
Il concetto di backup[4] 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. Per gli apparati il backup si applica anche alla configurazione (il file delle impostazioni e personalizzazioni): ad esempio un comune router o un firewall, ma anche il comune 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.
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 a elevatissimi livelli di efficacia (= disponibilità e affidabilità), occorre che il sistema di backup è ripristino 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 che di solito vengono eseguite dall'utilizzatore del computer stesso che copierà i dati importanti su supporti ottici o magnetici (CD-R, CD riscrivibili, DVD-R, DVD riscrivibili, Digital Audio Tape, cartucce a nastro). Inoltre si utilizzano dischi rigidi portatili con collegamento esterno USB, le chiavette USB (stick-USB) nonché le 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 che sono degli strumenti che permettono questo tipo di operatività attraverso gli agent, che sono dei 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 è sinonimo di salvataggio in quanto rigorosamente sono due procedimenti diversi con risultati distinti, ovvero:[5]
- 1) il primo termine indica una processo articolato, praticamente supportato da un'applicazione software dedicata (potrebbe essere anche quella predefinita del sistema operativo);
- 2) il secondo termine allude all'operazione di copiare 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[6] è un particolare tipo di backup; la clonazione è la realizzazione di un'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 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 immagine perché si copiano unicamente i dati cioè le cartelle (o il database) dei contenuti non l'installato o le unità logiche e di sistema/avvio. Medesima osservazione è associabile ad un backup completo.
- 3) La sincronizzazione non è un backup[7]. La sincronizzazione è l'operazione mediante la quale i dati prescelti sono archiviati su dispositivi diversi, mantenuti (su comando manuale o automaticamente) allineati ovvero identici, come contenuti e versione. Trattasi di duplicazione con aggiornamento simultaneo e controllato di dati specificati su posizioni (cartelle, archivi, dispositivi) diverse. Esistono varie forme[8] e modalità di sincronizzazione, e quella "in cloud" non è l'unica.
- 4) Per archiviazione dati s'intende non la duplicazione, ma lo spostamento di file dalla posizione originaria ad un'altra di conservazione[9]. L'archiviazione ha più uno scopo di efficienza (ordine, pulizia) che 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 dati) e immagine di un'unità (backup completo su file compresso, finalizzato al recupero di un sistema avviabile, ovvero dell'installato funzionante e personalizzato. 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 e 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.[10] 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[11].
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.[12]
- 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.[13] 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.
- A protezione continua dei dati
In un repository di questo tipo non avviene una pianificazione di backup periodici, ma il sistema registra immediatamente ogni cambiamento sul sistema host. Questo è generalmente fatto salvando byte o a livello di blocco differenze piuttosto che le differenze a livello di file.[14] Si differenzia dal semplice mirroring del disco in quanto consente un roll-back del registro e quindi il ripristino di vecchie immagini di dati.
Supporti di memorizzazione
Indipendentemente dal tipo di repository, i dati devono essere memorizzati su un supporto di memorizzazione.
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[15] 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.
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.[16] 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.
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.
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[17][18].
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.
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.
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)[19]
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[20]; 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.
- 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.
- 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 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.[21]
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.[22][23]
- 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.[24]
- 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).
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).[25]
- Descrizione del sistema
Le specifiche di sistema sono necessarie per ottenere un ripristino corretto dopo un disastro.
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.
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.
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.
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.[26] 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.
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.
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 un 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. 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.[27]
- 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.[28]
- 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.
- 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 periodo può portare a responsabilità indesiderate e l'uso non ottimale dei supporti di memorizzazione.[29]
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.[30]
- 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.
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.
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à.
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).
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 meta-dati 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). 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 dati copiati attraverso password e crittografia;
- 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[31]), 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.
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.
Note
- ^ Termine della lingua inglese, derivato dalla fusione delle parole back e up, e che significa "(copia di) riserva".
- ^ In inglese informatico i termini utilizzati, con significati applicativi diversi, sono restore (recupero) e recovery (ripristino).
- ^ (EN) The American Heritage Dictionary entry: backup, su www.ahdictionary.com. URL consultato il 18 settembre 2018.
- ^ Come molti termini informatici, si utilizza sistematicamente la lingua inglese. Se si volesse usare una parola italiana, al posto di backup, si potrebbe dire "copia di riserva" ma non restituirebbe efficacemente l'etimologia originaria e sarebbe meno immediato.
- ^ https://www.waterfordtechnologies.com/difference-data-backup-archiving/
- ^ Re-imaging, in inglese informatico.
- ^ http://www.myclads.com/mDOegOeR/
- ^ http://www.programmifree.com/app/differenza-backup-sincronizzazione.htm
- ^ https://www.achab.it/achab.cfm/it/blog/prodotti/backupassist/archiviazione-o-backup-qual-e-la-differenza
- ^ Kabooza Global Backup Survey, su www.kabooza.com. URL consultato il 16 giugno 2016.
- ^ Fare il backup di dati utilizzabili e disponibili via web o Internet o comunque remoti è un procedimento sempre più importante.
- ^ Five key questions to ask about your backup solution, su sysgen.ca. URL consultato il 16 giugno 2016.
- ^ Incremental Backup, su www.tech-faq.com. URL consultato il 16 giugno 2016 (archiviato dall'url originale il 21 giugno 2016).
- ^ Business data backup disaster recovery planning resource, su www.sertdatarecovery.com. URL consultato il 16 giugno 2016.
- ^ Disk to Disk Backup versus Tape - War or Truce? - article on StorageSearch.com, su www.storagesearch.com. URL consultato il 16 giugno 2016.
- ^ Deduplicazione nello storage: Come funziona e quanto fa risparmiare - ITespresso.it, su ITespresso.it, 29 novembre 2007. URL consultato il 16 giugno 2016 (archiviato dall'url originale il 10 agosto 2016).
- ^ Gianni Rusconi, Il floppy va in pensione, in Il Sole 24 Ore, 27 aprile 2010. URL consultato il 27 aprile 2010.
- ^ Giacomo Dotta, Il Floppy non è morto, anche se non sta troppo bene, in Webnews blog, 4 maggio 2010. URL consultato il 27 dicembre 2020 (archiviato dall'url originale l'8 luglio 2012).
- ^ In contesti informatici diversi dal continuità operativa e Disaster recovery, vaulting e vault hanno significati specifici tipicamente associati alla memorizzazione e archiviazione di dati in applicazioni di gestione documentale.
- ^ Vault, in inglese, significa "cripta".
- ^ Wayback: User-level Versioning File System for Linux, su wayback.sourceforge.net. URL consultato il 18 giugno 2016.
- ^ The Backup Problem - Fuzzy Backups, an Overview by Recovery Specialties, Storage, Disaster Recovery and Business Continuity Consultants for z/Series Environments, su recoveryspecialties.com. URL consultato il 18 giugno 2016 (archiviato dall'url originale il 3 marzo 2016).
- ^ What is Fuzzy Backup?, su fuzzy-backup.databackupdigest.com. URL consultato il 18 giugno 2016.
- ^ Snapshots Are NOT Backups, su www.oracle.com. URL consultato il 18 giugno 2016.
- ^ Bootable Media and Images Preparation Guide with How-to Approach, su www2.arnes.si, 25 aprile 2016. URL consultato il 18 giugno 2016 (archiviato dall'url originale il 25 aprile 2016).
- ^ Robert Lemos, Backups tapes a backdoor for identity thieves, su securityfocus.com, SecurityFocus, 28 aprile 2005. URL consultato il 18 giugno 2016.
- ^ Top four things to consider in business continuity planning, su sysgen.ca. URL consultato il 18 giugno 2016.
- ^ La vera differenza fra RTO e RPO (Recovery Time VS Point Objective), su www.digital4.biz. URL consultato il 18 giugno 2016.
- ^ Data Management, Retention of Data, su ori.hhs.gov. URL consultato il 18 giugno 2016.
- ^ Riduzione delle finestre di backup, su www.ibm.com, IBM. URL consultato il 18 giugno 2016.
- ^ Scegliere una posizione (cartella) temporanea ha il vantaggio che si può consultare il materiale prima di ristabilirlo nella posizione corretta.
Voci correlate
- Computer
- Database
- Disaster recovery
- Disco rigido
- File
- File system
- Snapshot
- Metadati
- Memoria di massa
- Memoria (informatica)
- Recupero dati
- Salvataggio (informatica)
- Storage
- rsync
Altri progetti
- Wikizionario contiene il lemma di dizionario «backup»
- Wikimedia Commons contiene immagini o altri file su backup
Collegamenti esterni
- Backup, in Treccani.it – Enciclopedie on line, Roma, Istituto dell'Enciclopedia Italiana.