SD Card Backup pentru Raspberry PI

RaspberryPi & BackUP
RaspberryPi & BackUP

In acest tutorial vor fi prezentate doua metode de a face Bakup la SD-Cardul utilizat impreuna cu sistemul de operare al Raspberry Pi, ca si alternativa la instalarea integrala pronind de la zero.

Backup din Linux

Aceasta procedura este de recomandat deoarece la restore pe un SD Card nou nu se tine cont de marimea noului card. Astfel ca partitia „/boot” – rezervata sistemului de operare, va ramane fixa ca si dimensiune, insa partitia „/root” – disponibila utilizatorului se va extinde la disponibilitatea totala a noului sd-card sau HDD/SSD utilizat. Acest lucru face posibila trecerea de la un sistem bazat pe un SD Card relativ mic in dimensiune, la un SD Card de dimensiuni generoase, sau chiar un SSD.

Materiale necesare:

Copiere continut SD Card intr-o imagine

Inainte de a copia continutul SD Cardului este necesar sa determinam structura de discuri prezente insistemul nostru. Introducem SD-Cardul in PC/Laptop, prinin termediul cititorului de carduri, si pentru a determina partitiile folosim urmatoarea comanda in terminal:

lsblk -p

In cazul meu, numele SD Cardului pe care l-am atasat si vreau sa-l clonez este: „/dev/mmcblk0„, iar cele doua partitii apartinand /boot si /root sunt „/dev/mmcblk0p1” respectiv „/dev/mmcblk0p2„. Este posibil ca in cazul sistemului vostru aceste denumiri sa fie diferite, ca atare notati si utilizati cu atentie denumirea corecta. De asemenea daca veti folosi un atl sistem de operare pentru Raspberry PI, decat Raspbian sau Raspberry Pi OS atat denumirea cat si structura partitiilor poate fi alta.

Transferarea datelor de pe SD Card intr-o imagine

In acest moment putem incepe clonarea SD Cardului folosind comanda dddata dump dupa cum urmeaza:

sudo dd bs=4M if=[SD CARD DEVICE NAME] of=[IMAGE FILE NAME] conv=fsync

In momentul in care vom folosi aceasta comanda, trebuie sa va asigurati ca aveti spatiul minim necesar la nivel local cel putin egal cu dimensiunea SD Cardului pe care il clonam. Adaptati comanda inlocuind [SD CARD DEVICE NAME] cu numele SD Cardului asa cum am vazut mai sus si [IMAGE FILE NAME] cu locatia unde doriti sa salvati si numele sub care veti putea identifica imaginea ulterior. Lansarea comenzii va duce la copierea intregului continut 1:1 intr-o imagine.

sudo dd bs=4M if=/dev/mmcblk0 of=~/Downloads/raspi_HomeReady.img conv=fsync

Pentru ca am creat aceasta imagine ca si root, si pentru a o putea modifica, micsora etc avem nevoie sa modificam drepturile de sistem pentru userul pe care il folositi.

sudo chown $USER: ~/Downloads/raspi_HomeReady.img

Compresarea imaginii

In acest moment, imaginea mai sus creata este gata de utilizare, si se poate scrie pe un alt SD Card, insa pentru a salva spatiu de stocare, si pentru ca probabil mare parte din imagine este spatiu gol – cel aferent partitiei /root (in exemplul alaturat din totalul de 15Gb folositi sunt doar 7Gb ) – putem elimina acest spatiu din imaginea deja creata.

Instalare PiShrink

Pentru a putea miscsora imaginea vom descarca de pe Github scriptul PiShrink, il vom face executabil si il vom muta catre folderul /usr/local/sbin -pentru usurinta in utilizare.

cd ~
wget https://raw.githubusercontent.com/Drewsif/PiShrink/master/pishrink.sh
chmod +x pishrink.sh
sudo mv pishrink.sh /usr/local/sbin/pishrink
SD Card Backup pentru Raspberry PI PiShrink

Sintaxa de copresie a imaginii este:

sudo pishrink [IMAGE FILE NAME]

Deci avem nevoie sa folosim calea si numele imaginii anterior create, dupa cum urmeaza:

sudo pishrink ~/Downloads/raspi_HomeReady.img
Backup pentru Raspberry PI

Desigur, dimensiunea finala a imaginii depinde de gradul de ocupare al ambelor partitii /boot si /root, insa dupa cum se poate vedea mai sus am reusit sa compresam imaginea de la aprox 16Gb la 9Gb.

Scrierea imaginii pe SD Card nou

Pentru transferul imaginii pe un SD Card nou, putem folosi Imager, Balena Etcher, sau orice alt tool similar. Dar pentru ca la inceputul tutorialului foloseam data dump program, putem folosi aceeasi comanda, doar ca in sens invers.

sudo dd bs=4M if=[IMAGE FILE NAME] of=[SD CARD DEVICE NAME] conv=fsync

Punem SD Cardul nou sau atasam SSD-ul la USB in cititorul de carduri, verificam numele discului si folosim comanda de scriere, dupa cum urmeaza:

sudo dd bs=4M if=~/Downloads/raspi_HomeReady.img of=/dev/mmcblk0 conv=fsync

Verificati in prealabil denumirea discului [SD CARD DEVICE NAME] pe care doriti sa restaurati imaginea cu lsblk -p.

Utilizare SD Card nou

Pentru a utiliza si verifica noul SD Card, il vom pune in Raspberry Pi si porni sistemul. La prima pornire sistemul va expanda partitia /root la marimea totala a spatiului disponibil pe SD Card, asa ca este posibil ca pornirea initiala sa dureze aproximativ 2 minute.

Backup din Windows

Pentru a crea un Backup complet al SD Cardului folosit pentru rularea sistemului de operare in Windows vom folosi  Win32 Disk Imager. Avantajul este ca de data asta avem interfata grafica prin care sa realizam acest Backup, dezavantajul este ca imaginea creata va trebui apoi scrisa pe un SD Card identic cu cel initial.

SD Card Backup pentru Raspberry PI Win32 Disk

Astfel ca deschidem Win32 Disk Imager, vom defini calea unde dorim sa salvam local imaginea, si discul de pe care facem imaginea. Confirmam cu „Read„.

Durata procesului de copiere a datelor este direct proportionala cu marimea SD Cardului utilizat, si astfel la final aceasta imagine va fi egala cu marimea SD Cardului.

Pentru a scrie aceasta imagine pe un SD Card nou, vom folosi tot Win32 Disk Imager, insa vom confirma cu „Write„.

Concluzie

Iata ca avem doua metode pentru a realiza un SD Card Backup pentru Raspberry PI, astfel ca inainte de a testa noi proiecte cu acest minicomputer vom putea face o copie de rezerva restabilind-o cu usurinta in doar cateva minute, si chiar si cei ce sunt novice in utilizarea lui se vor simti in siguranta sa testeze noi proiecte.

De Iulian Susnea

Pasionat de tehnologie, gadgeturi smart home si automatizari si am pornit la drum in crearea acestui site cu tutoriale pentru cele mai importante sisteme Smart Home ale momentului din dorinta de a-i ajuta pe cei la inceput de drum.

Lasă un comentariu

Adresa ta de email nu va fi publicată.