BackupCon 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]. Un backup può anche risultare utile per proteggersi dai ransomware. DescrizioneIl 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 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. 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
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:
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.[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à:
In pratica, in questi casi, si fa il procedimento inverso di quello di conservare su contenitori remoti informazioni archiviate in locale[11]. Sicurezza del backupCome 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. Eseguire delle prove di ripristino, secondo un piano, onde monitorare i risultati e le prestazioni è un'altra metodologia di sicurezza del backup. Spazio di archiviazioneModello a repositoryQualsiasi 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.
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.
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]
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.
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.
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.
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.[14] 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 memorizzazioneIndipendentemente 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.
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.
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 repositoryIndipendentemente 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.
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[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. 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).
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 datiUn 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
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.
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
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.
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.
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.[21] Dati in tempo realeSe 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]
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]
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.
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.
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). MetadatiNon 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]
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.
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 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.
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 datiSpesso è 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).
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.
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 processoFino 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
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.[27] 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).
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]
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.
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.[29] 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. LimitazioniUno schema di backup efficace prenderà in considerazione le limitazioni della situazione che possono essere le seguenti.
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]
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.
I sistemi di backup distribuiti possono essere influenzati da una larghezza di banda limitata. ImplementazioneRaggiungere 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.
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.
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 processiPer garantire che lo schema di backup funzioni come previsto, i fattori chiave devono essere monitorati e ne devono essere salvati dati statistici.
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.
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.
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.
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 backupFunzionalità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:
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
Note
Voci correlate
Altri progetti
Collegamenti esterni
|