Ho perso dei dati

Alcuni dei miei dati sono andati distrutti, forse irrimediabilmente.

Ehm, c’è da festeggiare?..

In un certo perverso senso.

La faccenda sta nei seguenti termini.

Per anni e anni siamo andati e andiamo dicendo che il backup è importante, che il restore lo è di più, che bisogna capire le diverse strategie di backup, i tempi necessari, le tecnologie sottostanti, i metodi, i contrometodi, i frizzi, i lazzi, tricche-tracche e castagnole, ricchi premi e cotillons.

In genere non c’è verso. Le motivazioni del management per rifiutare di dedicarsi a un backup adeguato sono varie, tutte ragionevoli e (quasi) tutte sbagliate.

Però una delle obiezioni che mi hanno fatto tempo fa mi è rimasta appiccicata addosso e mi rodeva. Durante una discussione sul backup simile a tante altre, mi hanno fatto notare “ma noi non abbiamo *mai* perso dati”. E io ho ribattuto “può capitare comunque in futuro, anche se a voi non è mai capitato in passato”. E loro: “ma *tu personalmente* hai mai perso effettivamente dei dati?” E io: “ah, certo, ovviamente, più volte, *prima* di diventare una specie di professionista”. E loro: “quanto spesso? quanti dati? erano importanti? quanto sono durati prima del disastro? sei riuscito a recuperarli? quanto tempo / quanti soldi hai impiegato?” E io non ho saputo rispondere con precisione: vedi sopra, è tutta roba che mi è accaduta due ere geologiche fa, quando ancora non prendevo appunti *seri*, e la mia memoria non è mai stata quella di una volta. *Io* sapevo cosa mi era successo e i danni che mi aveva causato, ma non riuscivo a quantificarlo agli interlocutori (rendendo così un disservizio al mio discorso sul backup, che nella loro mente ha perso quotazioni).

Avevo già a disposizione informazioni empiriche pubblicate da altri sull’adeguatezza o l’inadeguatezza di varie strategie di backup in vari tipi di setup, ma niente di mio personale. Lo consideravo un mio punto forte: non avevo mai perso dati da quando avevo iniziato a spacciarmi per professionista. Da quella discussione in poi, presi a considerarlo anche un mio punto debole: non avevo informazioni mie.

Così, per fare su me stesso un esperimento neanche tanto concettuale, qualche anno fa ho preso il coraggio a quattro mani e ho modificato le procedure di backup di vari miei sistemi. Non sono certo un data center, ma possiedo diversi computer e quasi-computer, tutti di classe personal o inferiore, però alcuni di essi fungono da server, sia di test che di “produzione” (casalinga, ma sempre produzione è). Tutti quanti erano protetti da backup, più o meno tutti con la stessa strategia (proprio perché meno affidabili di un server serio e quindi più bisognosi di protezione). Be’ da quel momento in poi, ho un computer che fa solo backup completi, uno che fa incrementali, uno differenziali… uno settimanale, uno mensile, uno quartodorario… uno locale, uno sul NAS, due l’uno sull’altro… uno non fa il backup. Ho cercato di riprodurre nel mio piccolo diverse strategie di backup che ho visto in funzione presso aziende varie, aggiungendo anche qualche altra variante. Sono stato intellettualmente quasi del tutto onesto, ho scelto a caso i computer, assegnando le policy a caso (esattamente come sembrano fare certi manager di mia conoscenza); ho incluso persino delle policy che, pur non essendo totalmente inutili, sono quasi inutili, prese pari pari da un sito in cui ho lavorato. In pratica, stavo gufando a me stesso, cercando di perdere dati per provare una tesi, non sapendo tra l’altro se sperare o meno di riuscirci. Ma sarò scemo?

“Intellettualmente quasi del tutto onesto”, dicevo. Non sono *così* cerebroleso da fare questo esperimento sui dati che non mi posso permettere di perdere veramente (che so, le foto digitali di mio nipote da neonato: una volta perse non è possibile ri-scattarle; oppure decenni di appunti in varie forme, a cui faccio riferimento di continuo). Però ho messo in gioco diversi dati e diverse installazioni che mi sono estremamente utili, della classe non-crepo-ma-mi-strappo-i-capelli-rimastimi-se-vanno-perduti.

L’hard disk di un portatile (quello citato qui) si è fisicamente danneggiato. Tonnellate di settori illeggibili e irrecuperabili. Motivi sconosciuti, e quindi per definizione imprevedibili. Preavviso zero. Durata dell’hard disk prima dell’avaria: 11 mesi. Era quello non protetto da backup.

C’era sopra un’installazione Linux con diversi sistemi sotto esame su virtual machine, direi sacrificabili senza troppo penare; inoltre c’era la maggior parte dell’infrastruttura di monitorizzazione del mio “sito casalingo”, e perdere quella mi avrebbe seccato molto.

Portando avanti l’esperimento concettuale, ho deciso di simulare una perdita molto più seria in ambito enterprise (naturalmente vi renderete subito conto che faccio (apposta) la figura di un’enterprise pizza-e-fichi, vero?), ossia dati privati e segreti di un’azienda, che non devono finire in mani altrui. Questo preclude l’opzione principe, mandare l’hd a un centro assistenza specializzato nel recupero hardware dei dati (smontano l’hd, sostituiscono le parti guaste se possibile, lo rimontano e copiano via tutto il copiabile… se i piatti magnetici sono intatti, la probabilità di riuscita è del 100%… se no, no). Altre possibili motivazioni per non mandare al recupero un hd è il costo maggiore di zero dell’operazione. Vedremo fra poco il costo di *non* mandarlo al recupero. Non si può nemmeno ricorrere alla garanzia, perché la garanzia garantisce l’hardware, non i dati: i dati vengono esplicitamente dichiarati tranquillamente trascurabili durante gli interventi in garanzia. Escludendo valori affettivi o d’antiquariato, la parte importante del computer sono i dati, il resto è solo ferraglia sostituibile. All’enterprise interessano i dati, non la ferraglia. In sostanza, il lavoro di recupero l’ho fatto in casa, sia metaforicamente che letteralmente.

Il tentativo di recupero è iniziato con l’operazione 1: la copia dei file ancora leggibili, che ha dato indecenti e insufficienti frutti. In particolare, quasi tutti i file critici non sono stati recuperati. L’operazione 1 ha richiesto diverse settimane, a causa dei mezzi di fortuna necessari e della costante presenza del sistemista (cioè io) per verificare che l’operazione non si bloccasse in attesa dell’intervento dell’utente o per errori assortiti: impossibile andare più in fretta a causa degli altri impegni irrinunciabili (simulati e non) del suddetto sistemista.

Operazione 2, tentativo di ricostruire a basso livello i settori danneggiati. Quintali di settori recuperati, tonnellate di settori non recuperati. Quarantaquattro giorni, se non ho contato male, e una macchina costantemente ed esclusivamente dedicata a questa operazione, 24/7. Ah, e il software che se ne occupa non è gratuito. Ah, e non funziona sugli SSD, non per questo tipo di avaria (da tenere a mente per eventuali altre avarie di altri sistemi).

Operazione 3, durante l’op.2, ricerca a tempo perso di strumenti più adatti di quelli utilizzati nell’op.1. In totale, comprimendo i tempi-uomo utilizzati, direi una decina di giornate di lavoro standard da otto ore al giorno.

Operazione 4, come l’op.1 mettendo in prova gli strumenti trovati con l’op.3. Bocciati tutti, alla prova dei fatti non ho nessuno strumento che funzioni meglio o più rapidamente. Si prosegue come per l’op.1. Altri file recuperati, molti di quelli critici, ma di gran lunga non tutti. Altre settimane volate via: 34 giorni dall’inizio alla fine, decisamente non a tempo pieno (ho di meglio e anche di peggio da fare). Excursus. Simulando disposizioni che mi sono state date in passato per altri problemi (il management voleva massimizzare le mie prestazioni), per tre giornate di seguito mi sono dedicato *esclusivamente* al problema. Non fatelo. Davanti al monitor. Aspettando che un file si sbloccasse o venisse saltato. O un errore da correggere a mano. Per decine di secondi alla volta. Contando i click, i whirr e i clack dell’hard disk. Auscultando le variazioni di tono della ventola raffreddatrice della CPU per divinare il successo o meno per il prossimo file. Per otto ore di fila. Ph’nglui mglw’nafh Cthulhu R’lyeh wgah’nagl fhtagn. È alienante. Non fatelo. Rifiutatevi. Tre giornate di azienda senza sistemista. E danno la colpa a voi. Fine excursus.

Operazione 5, in corso, ricostruzione da zero. Dichiarata sconfitta: poiché l’installazione, le configurazioni e i dati recuperati sono solo un 12% del totale (3% se contiamo solo configurazione e dati), tocca ricominciare da capo. Altro computer, VM, installazione di Linux, installazione del monitorizzatore, riconfigurazione per la nuova versione di Linux (ne sono state pubblicate tre o quattro durante il downtime), e soprattutto devo ricostruire a mente i miei magheggi custom, che avevo tirato su e rinforzato in circa tre mesi (gli appunti erano sul sistema perduto: sono stato intellettualmente onesto). Considerato che ho incontrato problemi che ricordo di aver già risolto, ma che non mi ricordo *come* li ho risolti, stimerei un altro paio di mesi ancora prima di tornare a status quo ante. Totale (stimato) di op.5: 75 giorni, non a tempo pieno.

Nota bene: adesso che il simulato management della simulata azienda ha finalmente dichiarato sconfitta, mesi e mesi dopo l’evento catastrofico, l’hard disk non è più in garanzia, e l’azienda non si può più rivalere né sul venditore, né sul produttore.

Ora che vi ho tediato a morte, fate il confronto con le due-righe-due (quarto paragrafo) che descrivono quello che sarebbe successo a una macchina protetta da una strategia di backup decente (più un paio di mesi pregressi, non a tempo pieno, condivisi per l’intero sito, per discutere, scegliere e mettere a punto la strategia adatta a quel sito). Si risparmia tempo, si risparmia denaro e si salvano i cotillons. Meditate, gente, meditate. Soprattutto sulla differenza fra cassandre, jettatori e previdenti pessimisti per professione che si sono documentati almeno un po’ su quello di cui parlano.

Da notare che l’esperimento continua, per la serie “sì, ora è confermato, *sei* scemo”.

Ah, nota a margine: il portatile, vecchio e glorioso, funziona ancora, e in questo momento non ha hard disk e funziona con una distro live di Linux su pen-drive USB. Backuppata.

Autore: Alessandro Pini

Sinclair ZX-81; Commodore VIC-20; Apple ][ Europlus; Apple //e; Amiga 2000 (Motorola 68000); Amiga 4000 (Motorola 68040, 68060, PPC); Sinclair ZX Spectrum; PC compatibile (Intel 8088 @ 4.77 MHz); ... poi ho perso un po' il conto (due o tre, troppo simili l'uno all'altro)... tower assemblato custom "galactica"; tower assemblato custom "pegasus"; IBM Thinkpad [boh? qualcosa] "defiant"; Compaq/HP Pavilion ze4300 "defiant"; virtual machine VMWare Server "phantom" (fu defiant); MSI Wind U100 "defiant"; Nokia e71 *nero* "blackbird"; tower assemblato custom "spaceball1"; HP Pavilion g6 "gunstar"; Raspberry Pi 2 "lamponcino", "rasputin"; virtual machine assortite. Sì, esatto, non ho mai posseduto il Commodore 64. Non sono quel tipo di geek.

5 pensieri riguardo “Ho perso dei dati”

  1. Lady Bracknell: To lose one parent, Mr. Worthing, may be regarded as a misfortune. To lose both looks like carelessness.

  2. Visto il tutto, direi che se avessi anche fatto un backup, oltre a quello del portatile in contemporanea si rompeva anche quello dove hai fatto il backup. Se il dio dei rolling plates e quello delle voice coil driven head, si mettono assieme, te la fanno pagare fino in fondo.

  3. Un articolo bellissimo, che a qualsiasi tecnico decente fara` pensare “Ma davvero questo pazzo ha provato a perdere i dati? Ma c’e` bisogno di verificare dal vivo che e` effettivamente un disastro?”.

    Ma sappi che lui, il manager “che non vuole spendere soldi in cazzate”, quello che “non ho mai fatto un backup in vita mia e non ho mai perso i dati” non verra` minimamente toccato da tutto questo. Lui non ha mai perso i dati e mai li perdera`. O cosi` almeno crede.

    Del resto, siccome lui non fa backup, la sua azienda funziona in modo molto semplice: fino a che non perde i dati, l’azienda esiste e lui va in giro a vantarsi dicendo che spendere soldi nei backup e` inutile. Il giorno che perde i dati l’azienda fallisce istantaneamente e lui si impicca, e non andra` a dire a nessuno “sono un coglione e sono rovinato”. Se ci pensi, questo non fara` che rafforzare la convinzione che il backup e` inutile.

    E` un poco come la storia del becchino che dice che “nessun nostro cliente e` mai venuto a lamentarsi della qualita` della bara”.

    Io ho un cliente che, facendo pochi backup e non volendo spendere nemmeno per il RAID1, ha perso il 90% dei suoi dati. Quel cliente adesso ha il RAID1 e TRE sistemi di backup diversi.

    Ho anche clienti che non hanno mai perso i dati nonostante non abbiano mai fatto il backup. Questi ultimi pero` io li aspetto seduto sulla riva del fiume… con un blocco di cemento e una catena da porgere loro quando vorranno annegarsi dopo aver perso tutto. Ho smesso di dire loro “devi fare i backup” ogni volta che li vedo. E` fiato sprecato.

Spazio per un commento