Sto scrivendo programmi per il mio Raspberry Pi (con Raspbian) da qualche settimana e vorrei essere sicuro di proteggere il lavoro che ho fatto.
Come posso fare il backup dei file che ho creato?
Posso semplicemente inserire la scheda SD nel mio PC Windows (XP o 7) e copiarla sul disco rigido o su un'altra scheda SD?
Se volete conservare tutti i dati, dovrete probabilmente creare un'immagine del disco. Inoltre, Windows non può riconoscere i tipici filesystem di Linux, quindi probabilmente non sarete nemmeno in grado di vedere i vostri file quando inserite la vostra scheda SD.
Creare un'immagine del disco conserverà non solo i file ma anche la struttura del filesystem e quando deciderai di flashare la tua nuova scheda SD, potrai semplicemente inserirla e funzionerà.
Linux
dd
:
dd if=/dev/sdx of=/path/to/image bs=1M
Dove /dev/sdx
è la tua scheda SD.
Mac
dd
con una sintassi leggermente diversa:
dd if=/dev/rdiskx of=/path/to/image bs=1m
Dove /dev/rdiskx
è la tua scheda SD.
(usare rdisk è preferibile perché è il dispositivo grezzo - più veloce)
Per scoprire quale disco è il tuo dispositivo digita diskutil list
al prompt dei comandi - inoltre, potresti aver bisogno di essere root; per farlo digita sudo -s
e inserisci la tua password quando richiesto.
Windows
Opzione 1
Su Windows, puoi usare il processo inverso a quello che hai usato quando hai flashato la scheda SD.
Puoi usare Win32 Disk Imager, che è lo strumento preferito per il flashing di una scheda SD della Fondazione. Basta inserire il nome del file (la posizione e il nome del file immagine di backup da salvare), selezionare il dispositivo (la scheda SD) e premere read:
Naturalmente, puoi anche usare RawWrite, dd
per Windows o strumenti simili, il processo è abbastanza simile.
Opzione 2
Se non vuoi fare il backup dell'intero sistema, ma solo di file specifici, ti suggerisco di connetterti al tuo Raspberry Pi via SFTP e copiare i file sul tuo computer locale (puoi usare il client WinScp). Se hai abilitato SSH, SFTP di solito non richiede alcuna configurazione speciale sul lato Raspberry Pi.
Un'altra opzione è quella di copiare i file su un sistema remoto usando rsync.
Puoi anche installare dei driver speciali in modo che il tuo Windows possa leggere i filesystem ext
(e quindi sarà in grado di leggere l'intera scheda SD), come ext2fsd
ma probabilmente non ne vale la pena.
Dato che l'immagine avrà la stessa dimensione della tua scheda SD, potresti volerla comprimere. Questo può essere ottenuto semplicemente usando il tuo strumento di compressione preferito, come gzip
, 7zip, WinZip, WinRar ...
Se stai usando Linux allora puoi usare il comando dd
per fare un backup completo dell'immagine:
dd if=/dev/sdx of=/path/to/image
o per la compressione:
dd if=/dev/sdx | gzip > /path/to/image.gz
Dove sdx
è la tua scheda SD.
Per ripristinare il backup, inverti i comandi:
dd if=/path/to/image of=/dev/sdx
o quando è compresso:
gzip -dc /path/to/image.gz | dd of=/dev/sdx
Se state usando Windows:
Scaricare Win32 Disk Imager.
Crea il percorso del file che vuoi usare per salvare la tua immagine. (io uso C:\RasPi_Bkp)
Esegui Win32 Disk Imager
Naviga fino al tuo punto di percorso del file di backup e digita un nome di file.
Clicca su salva
Assicurati che il dispositivo mostrato nel menu a tendina a destra del percorso del file sia quello di cui vuoi fare il backup.
Fare clic su "Read"
Attendere.