Come eseguire il backup e il ripristino del server utilizzando immagini disco dd | INTROSERV
EUR
european

EUR

usa

USD

Italy It
Ex. VAT Ex. VAT 0%

Come eseguire il backup e il ripristino del server utilizzando immagini disco dd

dd crea un'immagine settore per settore dell'intero disco. È possibile utilizzare questa immagine per ripristinare il disco allo stato in cui si trovava al momento del backup. Questa guida mostra come creare un'immagine del disco con dd e come ripristinarla. Poiché dd opera a livello di disco, eseguilo da un ambiente live (Finnix), non dal sistema in esecuzione che stai copiando.

Usa dd quando hai bisogno di una copia a livello di blocco dell'intero disco. Per i backup a livello di file (singoli file e cartelle), rsync o tar sono generalmente più adatti.

Prima di iniziare

  • ISO di Finnix
  • accesso all'IP-KVM del server (KVM basato su IP)
  • spazio di archiviazione con spazio libero sufficiente per l'immagine (vedi la nota negli scenari di backup)
  • credenziali SSH, se esegui il backup su spazio di archiviazione remoto
  • accesso root

1. Breve nota su dd

dd copia i dati blocco per blocco. Le parti del comando che contano:

  • if= origine (da dove si legge)
  • of= destinazione (dove si scrive)
  • bs=8M imposta la dimensione del blocco e può migliorare le prestazioni di copia
  • status=progress mostra quanto è stato copiato, utile su dischi di grandi dimensioni

Per impostazione predefinita, i comandi seguenti copiano un disco integro. Se il disco di origine presenta errori di lettura, aggiungi conv=noerror,sync: dd continuerà oltre gli errori di lettura anziché fermarsi, riempiendo i blocchi illeggibili con zeri. Questo mantiene allineati i blocchi successivi, ma le aree riempite perdono i loro dati, quindi il file system nell'immagine potrebbe risultare danneggiato. Per un disco difettoso, valuta l'uso di ddrescue, progettato per recuperare dati da dischi difettosi e che mantiene una mappa degli errori di lettura.

Warning

dd sovrascrive completamente la destinazione senza chiedere conferma. Un of= errato distrugge i dati. Controlla sempre i nomi dei dispositivi prima di eseguire qualsiasi comando.

2. Preparazione

Avvia da Finnix. Monta l'ISO di Finnix tramite IP-KVM e avvia il server da essa. Questo ti consente di lavorare con i dischi del server senza eseguire il sistema operativo installato dal disco di cui stai eseguendo il backup. Evita di creare l'immagine di un sistema in esecuzione: se il disco di origine ha file system montati che vengono modificati, l'immagine potrebbe risultare incoerente. Assicurati che il disco di origine non sia in uso da parte dell'ambiente in esecuzione.

Identifica i dischi. Elenca i dischi con le relative dimensioni e i punti di montaggio:

lsblk -o NAME,SIZE,TYPE,MOUNTPOINTS

In alternativa:

fdisk -l

Trova il disco di sistema (ad esempio /dev/sda) e annota il nome del dispositivo. Questo è il passaggio più importante: dd non chiede conferma, quindi un errore qui cancella il disco sbagliato. Nei comandi seguenti, /dev/sda è solo un esempio. Sostituiscilo con il disco effettivo identificato con lsblk. Assicurati che il disco di origine non mostri punti di montaggio nell'output di lsblk prima di crearne l'immagine.

3. Scenario A: backup su storage cloud tramite SSHFS (CloudBox)

Usa questo scenario per salvare l'immagine su INTROSERV CloudBox o su qualsiasi storage SSH. Prendi le credenziali SSH (utente, host, percorso) dai dettagli del tuo ordine.

Crea un punto di montaggio:

mkdir -p /mnt/backup

Monta lo storage cloud:

sshfs user@host:/path /mnt/backup

Crea l'immagine del disco:

dd if=/dev/sda of=/mnt/backup/sda.img bs=8M status=progress

Al termine, dd indica quanti dati sono stati copiati. L'immagine sda.img è ora sul tuo storage cloud.

Info

Una copia di grandi dimensioni tramite SSHFS può essere lenta. Se la connessione SSH si interrompe, la copia potrebbe non riuscire e l'immagine potrebbe risultare incompleta.

Info

La dimensione dell'immagine corrisponde approssimativamente alla dimensione dell'intero disco di origine, non alla quantità di dati utilizzati. Un disco da 2 TB con 100 GB di dati produce comunque un'immagine di circa 2 TB. Assicurati che lo storage disponga di spazio libero sufficiente.

Facoltativo: per risparmiare spazio e ridurre il trasferimento sulla rete, comprimi l'immagine durante la creazione:

dd if=/dev/sda bs=8M status=progress | gzip -c > /mnt/backup/sda.img.gz

Ripristina un'immagine compressa con:

gunzip -c /mnt/backup/sda.img.gz | dd of=/dev/sda bs=8M status=progress

La dimensione compressa dipende da quanto sono comprimibili i contenuti del disco. Il controllo del checksum riportato di seguito si applica a un file .img non compresso.

4. Scenario B: backup su un altro disco fisico nello stesso server

Usa questo scenario se il server dispone di un secondo disco (ad esempio /dev/sdb) abbastanza grande da contenere l'immagine. Il disco di destinazione deve avere spazio libero sufficiente per un'immagine dell'intero disco di origine e non deve essere il disco di origine.

Crea un punto di montaggio e monta il secondo disco:

mkdir -p /mnt/backup mount /dev/sdb1 /mnt/backup

Crea l'immagine del disco:

dd if=/dev/sda of=/mnt/backup/sda.img bs=8M status=progress

5. Verifica dell'immagine (facoltativo)

Per verificare l'immagine, calcola il checksum SHA-256 del disco di origine e dell'immagine e confrontali. Il disco di origine non deve cambiare tra la creazione dell'immagine e il calcolo del checksum. Questa operazione rilegge l'intero disco, quindi richiede tempo su dischi di grandi dimensioni:

sha256sum /dev/sda sha256sum /mnt/backup/sda.img

I due valori dovrebbero corrispondere.

6. Ripristino

Il ripristino è il backup in senso inverso: l'immagine diventa l'origine (if=) e il disco diventa la destinazione (of=). Avvia nuovamente da Finnix e monta lo storage che contiene l'immagine, allo stesso modo del backup.

Prima di ripristinare, assicurati che il disco di destinazione non sia più piccolo di quello originale. Un'immagine dell'intero disco non può essere ripristinata su un disco più piccolo, anche se sul disco di origine erano stati utilizzati pochi dati.

Dallo storage cloud:

dd if=/mnt/backup/sda.img of=/dev/sda bs=8M status=progress

Da un secondo disco: montalo prima, quindi esegui lo stesso comando. Anche qui /dev/sda è solo un esempio. Sostituiscilo con il disco di destinazione effettivo.

Warning

Il ripristino sovrascrive l'intero disco di destinazione. Assicurati che of= punti al disco su cui desideri eseguire il ripristino. Al termine di dd, riavvia il server ed esegui l'avvio dal disco ripristinato.

Se il disco di destinazione è più grande di quello originale, lo spazio aggiuntivo rimane inutilizzato. Se necessario, puoi successivamente estendere la partizione e il file system; i comandi esatti dipendono dal layout delle partizioni e dal file system. Se ripristini su hardware diverso, potrebbe essere necessaria una configurazione di avvio aggiuntiva. Se il disco di origine utilizza LVM, LUKS, RAID o un altro livello di storage, dopo il ripristino potrebbe essere necessaria una configurazione aggiuntiva, in particolare su hardware diverso.

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA