Come ripristinare i dati e le istantanee di una macchina virtuale da LVM-Thin in Proxmox VE

In questo articolo esamineremo il processo di recupero dei dati da macchine virtuali e snapshot situati su storage a blocchi LVM-Thin in un ambiente Proxmox Virtual Environment 9.1.1. Analizzeremo gli scenari di perdita di dati più comuni affrontati da amministratori e utenti. Tratteremo inoltre come diagnosticare lo stato dei dischi, collegare le unità direttamente a un computer e recuperare i dati utilizzando software specializzato.

Come ripristinare i dati e le istantanee di una macchina virtuale da LVM-Thin in Proxmox VE

La perdita di accesso a una macchina virtuale in Proxmox VE non significa sempre la perdita dei dati stessi. Se i dischi virtuali e gli snapshot erano archiviati su storage a blocchi LVM-Thin, il recupero dei dati può richiedere l’interazione diretta con la struttura dello storage e i relativi metadati.

In questo articolo esamineremo come recuperare i dati da macchine virtuali e snapshot situati su LVM-Thin in un ambiente Proxmox VE. Mostreremo come accedere ai dischi virtuali, identificare correttamente la struttura dello storage e cercare e recuperare i file persi.

Particolare attenzione sarà dedicata alle situazioni in cui una macchina virtuale diventa non disponibile a causa di eliminazione, corruzione della configurazione, guasto del disco o di un errore critico sul server Proxmox stesso. Tratteremo anche il lavoro con le immagini di dischi virtuali montate e il recupero dei dati dagli snapshot.

I metodi descritti vi aiuteranno ad accedere alle informazioni anche quando gli strumenti standard di Proxmox VE non consentono più di avviare o collegare la macchina virtuale.

Vai a vedere
Proxmox RAIDZ Recovery: recuperare macchine virtuali e container LXC

Proxmox RAIDZ Recovery: recuperare macchine virtuali e container LXC

Architettura LVM-Thin in Proxmox

Per comprendere il processo di recupero, è necessario identificare le differenze architetturali nell’archiviazione dei dati in Proxmox.

  • Quando si utilizza il tipo di storage standard Directory, basato sul file system Ext4, i dischi delle macchine virtuali esistono come normali file in formato qcow2. Questo approccio offre una gestione pratica: i file possono essere copiati, spostati o aggiunti ai backup. Tuttavia, il livello aggiuntivo del file system introduce overhead e riduce oggettivamente le prestazioni del server.
  • L’architettura LVM-Thin funziona in modo diverso. Si tratta di storage a livello di blocco senza file o directory convenzionali. L’hypervisor crea un unico pool sul disco fisico e assegna volumi logici a ciascuna macchina virtuale secondo necessità. Per il sistema operativo guest, un volume così allocato appare come un normale disco rigido fisico. In sostanza, si tratta di dispositivi RAW che interagiscono con l’hardware del server al livello più basso.

Il vantaggio principale di LVM-Thin è la massima prestazione grazie all’accesso diretto ai blocchi e al supporto del thin provisioning, in cui lo spazio su disco viene riservato solo quando i dati vengono effettivamente scritti.

Lo svantaggio di questa tecnologia è un processo di recupero più complesso. In caso di guasto critico, estrarre il file della macchina virtuale nel modo tradizionale è impossibile perché fisicamente non esiste come file. Per questo motivo, il recupero dei dati da tali array richiede strumenti in grado di rilevare e analizzare la struttura dei blocchi RAW senza coinvolgere il sistema operativo.

Caratteristica LVM-Thin Directory
Tipo di storage Storage a blocchi con thin provisioning Storage basato su file
Principio operativo di base I dati sono memorizzati nel thin pool come blocchi I dati sono memorizzati come file normali in un file system
Collocazione del disco virtuale Logical Volume (LV) File immagine del disco
Formati tipici dei dischi virtuali RAW RAW, QCOW2, VMDK e altri
File system all’interno dello storage Non utilizzato per archiviare singoli file VM EXT4, XFS, ZFS o un altro file system supportato
Thin provisioning Supportato Dipende dallo storage sottostante
Snapshot Implementato a livello di thin pool Dipende dal formato dell’immagine e dal file system
Accesso ai dati Tramite un dispositivo a blocchi Direttamente tramite il file system
Visibilità dei file della VM Non esistono file separati all’interno di LVM-Thin I file dei dischi virtuali sono accessibili direttamente
Recupero dopo un danneggiamento Richiede l’analisi dei metadati LVM, del thin pool e dei blocchi È possibile la scansione diretta dei file e del file system
Lavoro con dati eliminati Può essere più complesso a causa delle specificità del thin provisioning Dipende dal file system e dallo stato del file
Recupero degli snapshot Richiede l’analisi della struttura del thin pool e dei volumi correlati Dipende dal meccanismo di creazione degli snapshot
Caso d’uso tipico Macchine virtuali e container Proxmox VE File, immagini ISO, backup e immagini VM

Lavorare con i dischi di Proxmox VE

METODO 1. Collegamento dei dischi

Prima di iniziare il processo di recupero, è necessario collegare il disco fisico del server alla workstation.

Il metodo più affidabile è un collegamento diretto tramite interfaccia SATA alla scheda madre del computer. Questo garantisce la massima velocità di lettura dei dati e la stabilità operativa durante un’analisi approfondita. Se il server era dotato di dischi SAS, sarà necessario installare in uno slot PCIe un controller HBA compatibile affinché vengano riconosciuti su un PC standard.

L’utilizzo di box USB esterni o docking station è consentito come alternativa se il collegamento diretto non è possibile.

Tenete presente che la larghezza di banda USB costituisce di solito un collo di bottiglia, quindi la velocità di scansione dello spazio a blocchi sarà sensibilmente inferiore, con un impatto diretto sul tempo totale di recupero.

Lavorare con i dischi di Proxmox VE

METODO 2. Lavorare con le immagini disco

Poiché nel nostro scenario il pool LVM-Thin è distribuito su un singolo disco, la parte hardware del compito è il più semplice possibile: è sufficiente rimuovere e collegare questo disco specifico.

Tuttavia, nelle situazioni in cui è tecnicamente impossibile collegare contemporaneamente tutti i dischi richiesti al computer (ad esempio a causa della mancanza di porte libere sulla scheda madre), è possibile utilizzare la funzione di creazione dell’immagine settore per settore.

Un’immagine è una copia esatta, byte per byte, di un disco fisico memorizzata come file normale su un altro supporto. Potete collegare i dischi al sistema uno alla volta, creare le immagini di ciascuno e quindi caricare tutti i file risultanti direttamente nel programma.

La nostra utilità lavorerà con le immagini montate esattamente come con l’hardware reale, consentendo di recuperare completamente la struttura di archiviazione di Proxmox ed estrarne i dati.

Per recuperare dati da array RAID guasti, dispositivi NAS e altri sistemi di archiviazione multidisco.

Per creare un’immagine, avviate il programma, selezionate il disco richiesto dall’elenco e fate clic su Salva disco.

Hetman RAID Recovery: creazione di un'immagine disco Proxmox

Nella finestra visualizzata, specificate il percorso di salvataggio del file.

Nota: la dimensione dell’immagine finale corrisponderà alla capacità totale del disco sorgente, indipendentemente dal numero di gigabyte effettivamente utilizzati. Pertanto, verificate in anticipo che il disco di destinazione disponga di spazio libero sufficiente.

Hetman RAID Recovery: configurazione della creazione dell'immagine disco Proxmox

Quando il processo di salvataggio è completato, tornate al menu principale e selezionate Monta disco.

Hetman RAID Recovery: montaggio di un'immagine disco Proxmox

Nell’elenco dei tipi, selezionate Immagini di dischi RAW e caricate il file creato.

Hetman RAID Recovery: selezione del tipo di immagine disco per il montaggio

Comparirà immediatamente nell’elenco generale dei dispositivi, insieme ai dischi collegati fisicamente. Se avete più unità problematiche, ripetete semplicemente questa procedura per ciascuna di esse.

Hetman RAID Recovery: immagine disco Proxmox montata

Dopo che tutti gli elementi richiesti sono presenti nel sistema, fisicamente o come immagini, il programma li analizzerà automaticamente, determinerà la struttura del pool LVM, individuerà i dischi delle macchine virtuali e li preparerà per l’analisi approfondita e il recupero dei dati.

Recupero dati in Proxmox VE

METODO 1. Recupero dei dati da LVM-Thin

In molti casi, la perdita di accesso alle macchine virtuali non è causata da una cancellazione accidentale dei file, ma da un guasto dell’hardware del server stesso o da errori critici nell’hypervisor Proxmox. In tali situazioni, il server smette di avviarsi e l’accesso allo storage diventa completamente bloccato. Tuttavia, i dati sui dischi in genere sono ancora integri. Per questo eseguiamo il recupero su un computer Linux standard, a cui è sufficiente collegare il disco del server guasto.

Dopo l’avvio, l’utility analizza automaticamente la struttura dei file del disco collegato. Poiché abbiamo a che fare con storage LVM-Thin, non troverete le consuete directory contenenti i file immagine; invece, il programma legge autonomamente i metadati del pool e riconosce i dischi delle macchine virtuali come volumi logici separati.

Per l’utility, così come per Proxmox stesso, ciascun volume appare come un dispositivo a blocchi isolato, completamente pronto per ulteriori scansioni approfondite.

Per recuperare gli oggetti persi, utilizzeremo Hetman RAID Recovery.

Per recuperare dati da array RAID guasti, dispositivi NAS e altri sistemi di archiviazione multidisco.

Nel nostro caso, dopo aver collegato il disco con la struttura LVM, l’utility lo analizza automaticamente e riconosce i volumi logici del pool. Nella finestra del programma, questi volumi delle macchine virtuali verranno visualizzati non come file immagine, ma come dischi fisici completamente collegati.

Per prima cosa, individuiamo il disco di sistema della nostra macchina virtuale. Avrà l’identificatore vm-101-disk-0 e una capacità di 20 gigabyte. Poiché il sistema operativo guest era Windows 10 Pro, il programma rileverà immediatamente il file system corrispondente.

Hetman RAID Recovery: disco di sistema della macchina virtuale

Fate clic su questo disco e avviate Scansione rapida. Questa scansione veloce è ideale per individuare file eliminati di recente o per lavorare con file system integri.

Hetman RAID Recovery: scansione di un disco di macchina virtuale

Al termine dell’analisi, aprite il file system individuato e passate alla consueta gerarchia delle cartelle di Windows. Individuate la directory da cui i dati sono scomparsi. Il programma visualizzerà tutti gli oggetti trovati.

Hetman RAID Recovery: contenuto del disco della macchina virtuale

Selezionate i file necessari spuntando le caselle di controllo e fate clic su Recupero nella barra degli strumenti.

Hetman RAID Recovery: recupero dei dati da un disco di macchina virtuale

Nello step successivo, il programma chiederà di specificare il percorso in cui salvare i file. Assicuratevi di scegliere un’unità separata con spazio libero sufficiente per evitare di sovrascrivere i dati originali e confermate l’operazione.

Hetman RAID Recovery: salvataggio dei dati da un disco di macchina virtuale

Passiamo ora al disco aggiuntivo che abbiamo creato e collegato a questa stessa macchina virtuale per l’archiviazione dei file. Tornate al menu principale e selezionate il volume logico successivo denominato vm-101-disk-1, con una capacità di 3 gigabyte.

Hetman RAID Recovery: unità aggiuntiva della macchina virtuale

Avviate per esso la stessa modalità Scansione rapida. Dopo la scansione, aprite il contenuto del disco, individuate i file di prova eliminati, selezionateli e ripetete la procedura di salvataggio.

Hetman RAID Recovery: scansione di un'unità aggiuntiva della macchina virtuale

Come potete vedere, il programma consente di lavorare con ciascun volume logico della macchina virtuale separatamente, in modo isolato e pratico, visualizzandoli come normali dischi fisici, il che garantisce un recupero rapido e corretto di tutte le informazioni perse.

Hetman RAID Recovery: recupero di un'unità aggiuntiva della macchina virtuale

METODO 2. Recupero tramite snapshot

Passiamo a uno dei meccanismi di protezione dei dati più interessanti: il lavoro con gli snapshot, o immagini dello stato del sistema.

La caratteristica chiave della creazione degli snapshot in un ambiente LVM-Thin è che l’hypervisor non copia fisicamente i file né clona completamente i dischi. Invece, il sistema genera un nuovo volume logico che registra istantaneamente lo stato attuale dei metadati e dei blocchi del disco originale nel momento in cui viene creato lo snapshot.

Nell’elenco dei dispositivi del nostro programma, tali volumi sono facili da identificare perché presentano un prefisso specifico nel nome, ad esempio snap_vm-101-disk-1.

Proxmox: dischi della macchina virtuale

Questa architettura apre possibilità uniche per il recupero dei dati. Immaginate che, dopo la creazione dello snapshot, documenti importanti siano stati eliminati in modo irreversibile dal disco principale della macchina virtuale. Dal punto di vista del sistema operativo guest corrente, questi dati sono scomparsi, ma i blocchi originali sono conservati in modo sicuro all’interno dello snapshot del sistema.

Proxmox: snapshot della macchina virtuale

Hetman RAID Recovery può leggere direttamente tali snapshot LVM, eliminando la necessità di avviare l’hypervisor o di eseguire un rollback completo della macchina virtuale tramite la console.

Per iniziare il recupero, cerchiamo nella finestra principale dell’utility lo snapshot del disco di sistema della macchina virtuale vm-101. Questo volume snapshot contiene la struttura completa del sistema operativo e dei file utente allo stato in cui si trovavano al momento della creazione dello snapshot.

Hetman RAID Recovery: snapshot della macchina virtuale

Lo selezioniamo e avviamo Scansione rapida.

Hetman RAID Recovery: analisi di snapshot della macchina virtuale

Il programma analizzerà istantaneamente il file system congelato, consentendoci di accedere ai dati anche se in seguito la macchina virtuale ha subito modifiche critiche o un rollback errato.

Hetman RAID Recovery: contenuto dello snapshot della macchina virtuale

Individuiamo quindi nello stesso modo lo snapshot dell’unità aggiuntiva. Nell’elenco dei volumi logici, è etichettato come snap_vm-101-disk-1. Durante il nostro lavoro, abbiamo aggiunto nuovi file di prova, creato un secondo snapshot di sistema e successivamente cancellato deliberatamente parte delle informazioni da tutti gli ambienti.

Hetman RAID Recovery: snapshot di un'unità aggiuntiva della macchina virtuale

L’applicazione di Scansione rapida a questo secondo snapshot ci consente di leggere istantaneamente la relativa tabella dei file e trovare con successo tutti i documenti eliminati nella fase finale. Poiché i blocchi dati sono conservati in modo sicuro all’interno dello snapshot, rimangono completamente leggibili dal nostro software, anche se sono già stati eliminati dal sistema Windows guest stesso.

Hetman RAID Recovery: contenuto dello snapshot di un'unità aggiuntiva della macchina virtuale

Successivamente, tutto è standard: selezioniamo gli oggetti richiesti, facciamo clic su Recupero nella barra degli strumenti e specifichiamo un percorso sicuro per salvare i dati sul disco rigido del nostro computer.

Come si può vedere, l’uso di Scansione rapida per leggere direttamente gli snapshot LVM-Thin consente di risparmiare molto tempo, poiché elimina la necessità di operazioni di recupero complesse tramite la console Proxmox.

Hetman RAID Recovery: file della macchina virtuale recuperati

Conclusione

Il recupero dei dati da macchine virtuali e snapshot su LVM-Thin in Proxmox VE presenta specificità proprie, poiché le informazioni non sono memorizzate come normali file ma all’interno della struttura a blocchi del Thin Pool. Pertanto, l’accesso standard al file system può non essere sufficiente per individuare le informazioni perse.

In caso di corruzione dello storage, eliminazione di una macchina virtuale, perdita della configurazione o problemi con il server Proxmox, è importante non eseguire operazioni che possano sovrascrivere i dati sorgente. Innanzitutto, è necessario identificare la struttura LVM-Thin, accedere ai volumi logici interessati e solo successivamente procedere con l’analisi e il recupero dei dati.

Un software specializzato per il recupero dei dati consente di lavorare con la struttura LVM-Thin e con le immagini di dischi virtuali montate, di cercare nei file system e di recuperare file da macchine virtuali e Snapshot.

Di conseguenza, anche se Proxmox VE non avvia più la macchina virtuale o gli strumenti standard non riescono ad accedere al relativo disco, i dati possono comunque essere ancora fisicamente presenti nello storage. Un’analisi corretta della struttura LVM-Thin e l’uso di strumenti di recupero adeguati consentono di accedere a queste informazioni e preservare i file importanti.

Anton Kryvoruchko

Autore: , Scrittore tecnico

Anton Kryvoruchko è traduttore dall'italiano, dall'inglese, dal francese e dal polacco. Ha molti anni di esperienza e lavora con testi di vario argomento: dalla narrativa e testi tecnici alle riviste scientifiche popolari. Lavora costantemente per migliorare le sue conoscenze e competenze, perciò nel tempo libero impara anche il tedesco e lo spagnolo.

Mykhailo Miroshnichenko

Editore: , Scrittore tecnico

Mykhaylo Miroshnychenko è uno dei programmatori principali di Hetman Software. Avendo già quindici anni di esperienza nello sviluppo di software condivide le sue conoscenze con i lettori del nostro blog. Oltre alla programmazione, Mykhaylo è anche un esperto di recupero di dati, di file system, di dispositivi di archiviazione e di array RAID.