Verifica dei backup di Time Machine


21

Sto preparando il mio sistema per un aggiornamento di Snow Leopard e mi preparo per lo scenario peggiore: reinstallazione e ripristino completi.

Vorrei verificare che i miei backup di Time Machine siano validi e verranno ripristinati correttamente. I backup di My Time Machine vanno su un server Linux che esegue Netatalk e i backup vengono completati correttamente.

Come posso ripristinare un test in una posizione alternativa o verificare in altro modo i miei dati senza sovrascrivere i file esistenti? Devo salvare qualcosa in particolare esternamente per essere sicuro di poter accedere ai backup se devo reinstallare da zero?


Risposte:


14

Time Machine non ha alcun meccanismo incorporato per verificare che un set di backup sia valido. Questo è un problema con Time Machine, essendo orientato al consumatore anziché all'azienda ...

L'esecuzione di una riparazione del disco in Utility Disco non convalida i dati di backup di Time Machine, ma verificherà la struttura e l'integrità del disco di backup. (Naturalmente, Disk Warrior verifica / ripara in modo complementare).

L'unico modo in cui vedo che è possibile verificare i dati nel backup è eseguire un ripristino completo.

Si noti che è possibile aprire i registri della console e filtrare su BACKUPD per vedere cosa succede durante un backup e vedere se si sono verificate condizioni di errore.

Modificare:

Time Machine include un'opzione, se si tiene premuto il tasto Opzione e si fa clic sul componente aggiuntivo della barra dei menu di Time Machine, su "Verifica backup".

Ciò non verifica il contenuto del backup. In altre parole, quel file di backup abcd.txt è lo stesso di abcd.txt, ma ciò verifica che l'immagine del disco non sia danneggiata dai dati della macchina del tempo.

Dai un'occhiata a http://support.apple.com/kb/HT4076


Non proprio quello che sto cercando, ma dopo ulteriori ricerche questo descrive accuratamente la situazione. Le soluzioni di backup di livello consumer hanno sempre risucchiato in questo senso. Probabilmente cercherò un'altra soluzione a lungo termine.
jtimberman,

1
Prova SuperDuper! - con esso puoi essere sicuro che il tuo disco sia copiato
tig

2
In realtà se si fa clic sull'icona Time machine nella barra dei menu e si preme 'Opzione' si ottiene un'opzione Verifica backup.
William Macdonald,

1
La mia comprensione è che TM utilizza una directory e una struttura di file che rispecchia essenzialmente quella effettiva. Questo non significa che possiamo semplicemente usare diff per verificare il backup, assumendo un file system relativamente silenzioso?
kec,

1
Questo è sbagliato o obsoleto. L'interfaccia della riga di comando per time machine include un comando "confirmchecksums". Non è chiaro se questo verrà eseguito occasionalmente come parte del normale processo di backup, ma sembra logico che lo faccia.
Abhi Beckert,

12

Alla fine, un backup di Time Machine è una raccolta di cartelle per ogni data di backup. Ognuna di quelle cartelle contiene tutti i file esistenti in quella data. Quindi, puoi confrontare i nomi e i contenuti di tutti quei file con quelli sul tuo Mac.

Naturalmente, molti file cambieranno semplicemente usando il tuo Mac. Quindi i risultati hanno un senso comune da interpretare. L'opzione migliore è chiudere tutte le applicazioni in esecuzione, eseguire Time Machine e confrontarle immediatamente.

Dopo aver collegato il disco di backup, utilizzare quanto segue in Terminale per trovare le differenze. Per il cdcomando seguente potresti voler utilizzare il completamento della riga di comando Tab anziché incollare solo la prima riga:

cd /Volumes/Backup*/Backups.backupdb/*/Latest/*/
echo "Cartella corrente sul disco di backup: $ (pwd -P)"
sudo diff -qr. / 2> & 1 | tee $ HOME / timemachine-diff.log

Questo confronterà la cartella corrente (essendo l'ultimo backup) con la radice del tuo Mac. Mostra i risultati sullo schermo, ma li cattura anche nel file timemachine-diff.lognella cartella principale.

Quanto sopra durerà MOLTO tempo (ore, forse anche giorni), quindi per il test puoi prima limitare a una cartella specifica. Come per il tuo desktop:

cd /Volumes/Backup*/Backups.backupdb/*/Latest/*/$HOME/Desktop
echo "Cartella corrente sul disco di backup: $ (pwd -P)"
sudo diff -qr. $ HOME / Desktop 2> & 1 | tee $ HOME / timemachine-diff.log

Se non c'è output, allora non ci sono differenze. Per il test basta rinominare un file sul desktop, che dovrebbe dare sia "Solo dentro". per il nome originale (che è solo nel backup) e "Solo in / Utenti / nome utente / Desktop" per il nuovo nome (che non è nel backup).

Gli appunti:

  • Quando si esegue il backup su una rete, probabilmente si utilizzerà un pacchetto sparso . Basta fare doppio clic sul file bundle sparso per montarlo prima di eseguire i comandi sopra. Al termine, fare clic con il tasto destro ed espellerlo.

  • Alcuni file sono esclusi dalla progettazione, alcuni software possono semplicemente escludersi e le cartelle FileVault vengono scritte su un backup solo al primo logout. Vedi L'app Time Machine di Apple copia davvero tutto?

  • Per vedere cosa è stato scritto nel backup (più recente), vedere TimeTracker (GUI) o timedog (riga di comando). Si noti che, anche quando si esegue come utente amministratore, a volte questi programmi devono essere eseguiti come root per vedere tutti i file. Vedi Come posso recuperare i file dai backup di Time Machine da un altro computer? per un aiuto.

  • I messaggi di registro non vengono solo scritti sulla console (in Applicazioni, Utilità; filtro attivo backupdo utilizza Time Machine Buddy ), ma diversi messaggi di registro vengono anche conservati in un .Backup.logfile nascosto sul disco di backup stesso, all'interno della cartella con la data di backup. Vedi anche Cosa sta facendo Time Machine? in Server Fault.

  • Dal 10.6.3 ho notato una fase "Verifica backup ..." in Time Machine, seguita da "Preparazione 51.959 elementi ...", prima di "Backup". La console menziona "Esecuzione della verifica del backup", "SOLO QUICKCHECK; FILESYSTEM CLEAN" e "Verifica del backup superata!"

    Non ho idea di cosa faccia la verifica. Forse sta confrontando il backup con l'attuale contenuto del disco: quando ho solo circa 3,5 GB di spazio libero su disco sul mio Mac, ho notato che "CopyHFSMeta ha raggiunto la soglia di spazio su disco insufficiente", quindi apparentemente sta copiando molti dati sul mio Mac? Questo è seguito da "Verifica del backup ignorata durante CopyHFSMeta", "Spazio insufficiente sul volume di avvio per completare la verifica del backup" e falsa "Verifica del backup ignorata dall'utente!" mentre non l' ho saltato da solo. Questi messaggi si trovano solo nel registro; nessuna indicazione per l'utente e il backup viene completato senza alcun avviso.

  • Apple offre un articolo di supporto denominato Informazioni su "Time Machine ha completato una verifica dei backup. Per migliorare l'affidabilità, Time Machine deve creare un nuovo backup per te." In quell'articolo, i passaggi per verificare manualmente il disco di backup controllano solo le condizioni fisiche dell'immagine del disco e non confrontano il suo contenuto con il disco del Mac. Quindi immagino che l'errore non riguardi neanche il contenuto del backup . Citazione strana da quell'articolo:

    Nota: non riparare l'immagine del disco con Utility Disco.

Time Machine utilizza collegamenti fissi, il che rende ogni backup simile a contenere tutti i file. Guarda una spiegazione tecnica fine su Ars Technica .


Mi chiedo le circostanze in cui CopyHFSMeta(attualmente in hfs-191.1 ) può essere eseguito dal sistema operativo.
Graham Perrin,

4

Come per Mac OS X 10.6.4, è possibile avviare una verifica del backup facendo clic sull'opzione Time Machine nella barra dei menu.

Non sono sicuro di cosa sia esattamente verificato, ma quando l'ho fatto, Time Machine mi ha raccomandato di avviare un nuovo backup per migliorare l'affidabilità.

Ulteriori letture: articolo della knowledge base di Apple .


1
Bello. Strano che OS X non possa semplicemente creare un nuovo backup aggiornato senza rimuovere la cronologia, ma forse arriveranno anche quei giorni ...
Arjan,

1
Tale processo di verifica sta eseguendo una verifica dell'utilità disco sull'immagine disco su Time Capsule. Se non hai una Time Capsule, non succederà nulla. Non sta verificando i dati di backup, ma solo l'integrità dell'immagine del disco su cui è archiviata.
Benjamin Schollnick,

@ Benjamin, puoi dirci come lo sai? Mi sono appena imbattuto in "Spazio insufficiente sul volume di avvio per completare la verifica del backup" quando avevo solo 3,5 GB di spazio libero su disco su un MacBook, il che in qualche modo mi dice che sta copiando molti dati su quel MacBook. (Molto spazio lasciato sul disco di backup. Nella mia configurazione, quel disco è collegato a un altro Mac - e condiviso in modalità wireless tramite AFP - ma anche quell'altro Mac ha un sacco di spazio.)
Arjan

@Arjan, Time Machine non esegue la verifica di singoli file (ad es. Copia file, verifica file per assicurarsi che vengano copiati correttamente o danneggiati). Effettua un backup TM aggiornato, modifica un file specifico e opzione fai clic sul menu TM aggiuntivo e scegli verifica backup. Non segnalerà un backup errato. Vedi l'articolo Apple KBase sopra. E blog.fosketts.net/2010/08/11/… . Time Machine non ha una fase di verifica nel suo ciclo di backup.
Benjamin Schollnick,

Oh ... E la vera prova è che esegui una verifica del backup di Time Machine. Ho 356 GB di backup e la mia verifica richiede meno di 10 secondi. Ma il mio disco TM è direttamente collegato al mio sistema, quindi non c'è alcuna immagine del disco sparsa, quindi la finitura rapida.
Benjamin Schollnick,

2

L'utilità della riga di comando di Time Machine ha un'opzione per fare ciò: "tmutil compare". Controlla "man tmutil" per tutti i vari switch disponibili.

https://www.google.com/search?q=tmutil%20compare


Non utilizzare collegamenti a informazioni non statiche come i risultati di una ricerca di Google nella tua risposta. Modificalo per includere un breve riepilogo di ciò che vuoi esprimere o (in questo caso) rimuovi semplicemente il link poiché il termine di ricerca è piuttosto semplice.
jstarek,

1

Puoi provare un'applicazione dalle utilità Mac (Applicazione-> Utilità): Assistente alla migrazione. Con questo strumento, è possibile utilizzare un'opzione per trasferire informazioni dal Time Machine di backup al computer locale.

Un altro modo è utilizzare questo strumento per installare Mac da Time-machine su un altro Mac virtuale su HD. Non l'ho ancora provato. Non sono sicuro se è possibile creare una scatola virtuale con OSX.


Assistente migrazione -> Da Time Machine non mostra nulla di utile.
jtimberman,

0

Fare un backup di Time Machine su una condivisione basata su rete è noto per essere più rischioso e pieno di problemi. Quindi, se davvero, davvero, non vuoi correre il rischio di colpire i problemi con il tuo aggiornamento e quindi avere ulteriori problemi a tornare dove sei stato, ti consiglio vivamente di utilizzare temporaneamente un disco locale e uno strumento come SuperDuper di ShirtPocket! o Carbon Copy Cloner

Per la sola verifica della forza dei tuoi dati, tuttavia, penso che il meglio che puoi fare sia montare manualmente lo sparsebundle sull'unità di rete e utilizzare qualcosa di semplice come 'diff -cr' per confrontare la maggior parte dei file da ' La versione più recente contro il tuo disco di sistema (che ovviamente vomiterà alcuni che sono cambiati dall'ultima volta che TimeMachine è stato eseguito.)


Ho appena provato il metodo diff e non sembra funzionare ... Sospetto che Diff non gestisca molto bene i collegamenti fisici?
Benjamin Schollnick,

Non vedo perché dovrebbe inciampare su questo. L'ho appena provato ("diff -r --brief" sembra funzionare meglio, per un riepilogo) su una piccola porzione di due successive gerarchie di Time Machine e sembrava funzionare bene, riportando "File ... differ", "Solo nel ...". Genera alcuni errori relativi ai collegamenti simbolici, se non possono essere risolti in file reali. Questi sembrano essere perché in realtà ci sono collegamenti simbolici penzolanti anche nella copia di origine.
giovedì

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.