Flashing or backing up your SD card » History » Version 3

Version 2 (Giulio Moro, 2015-09-25 12:34 AM) → Version 3/9 (Giulio Moro, 2015-09-25 12:38 AM)

h1. Flashing or backing up your SD card

How to do it under MacOs and Linux. For both these tasks you will need the dd program. It comes with many Linux distributions and is available for MacOS.

h2. Backing up your SD card

Put your SD card in the SD card reader. We assume for the rest of this document that your SD card is /dev/mmcblk0

Always start Start by unmounting the SD card in case it is currently mounted:
<pre>
$ sudo umount /dev/mmcblk0
</pre>

h2. Flashing an SD card

Whether you got an image from somewhere else or you want to flash your own backup image after you bricked your Beaglebone, do as follows:

make sure that the SD card is inserted and that none of its partitions are mounted as explained above.
Then:
<pre>
$ sudo dd if=~/bbb_images/your_own_your_precious_backup_image.img of=/dev/mmcblk0
</pre>
As it happens, `dd` is a very simple program, so simple that it does not even display a progress bar.
If you are lucky enough to be on Linux, you can probably install pv which will display a progress bar for you:

pv ~/bbb_images/your_own_your_precious_backup_image.img | sudo dd of=/dev/mmcblk0

h2. Backing up your SD card

In case your partition is smaller than the size of the sd card, you do not need to backup the whole card, so if this is the case, run:
<pre>
$ sudo fdisk -u -l /dev/mmcblk0
</pre>
You might get something along the lines of
<pre>
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 * 63 144584 72261 c W95 FAT32 (LBA)
/dev/mmcblk0p2 144585 3743144 1799280 83 Linux
</pre>
You are interested in the higher value in the "End" column. Pass that value to dd as the count parameter:
<pre>
$ sudo dd conv=sparse count=3743144 if=/dev/mmcblk0 of=~/bbb_images/your_own_your_precious_backup_image.img of=bbb_images/your_own_your_precious_backup_image.img
</pre>