Backup maken van Raspberry Pi SD kaart op een Mac

Wie verscheidene uren heeft geïnvesteerd in het downloaden en configureren van software op een Raspberry Pi komt aardig thuis van de koude kermis als op een zekere dag het (micro) SD kaartje ermee stopt. "Had ik maar een backup gemaakt", denk je dan. Pas.

Het maken van een backup en het uitvoeren van een restore is met het 'disk duplicator' command line tooltje dd op een Mac een peuleschil. In ongeveer 5 minuten is een volledige 16 GB SD kaart veiliggesteld. Gebruik hiervoor de volgende stappen:

  • Plaats de (micro) SD kaart in de Mac
  • Open de terminal
  • Bepaal het devicenummer van de (micro) SD kaart, door een lijst opslagapparaten op te vragen met diskutil list. In de voorbeelden hieronder is het devicenummer aangegeven met n
  • Maak een backup met sudo dd if=/dev/rdiskn of=/pad/naar/backup.img bs=1m. Door het gebruik van sudo wordt om het wachtwoord van de beheerder van de Mac gevraagd
  • Het maken van een backup duurt, afhankelijk van de grootte van het SD kaartje, tussen de 100 en 400 seconden

Het uitvoeren van een restore gaat met dd op dezelfde manier, maar kost wat meer tijd om uit te voeren, zo tussen de 10 en 20 minuten. Om de melding 'resource busy' te voorkomen is het overigens nodig om van tevoren een unmountDisk uit te voeren:

  • diskutil list en bepaal het devicenummer van de (micro) SD kaart
  • diskutil unmountDisk /dev/diskn
  • sudo dd if=/pad/naar/backup.img of=/dev/rdiskn bs=1m

Een schijfkopie neemt zoveel ruimte in als de lege grootte van de SD kaart. Met gzip is daar wel wat vanaf te snoepen:

  • Backup: sudo dd if=/dev/rdiskn bs=1m | gzip > /pad/naar/backup.img
  • Restore: gzip -dc /pad/naar/backup.gz | sudo dd of=/dev/rdiskn bs=1m