How to Clone a Micro SD Card in Windows/Mac

💡 This article is written by humans, with all solutions and steps verified.

Many people have always been bothered by how to completely transfer all content from an old SD card to a new one when replacing it, especially those used in Raspberry Pi or NVIDIA Jetson Nano. A simple file copy won’t precisely duplicate critical elements in an SD card such as the storage structure, custom configurations, or hidden system and program data.

In this case, cloning the SD card is a perfect solution. Here, we will explain the reasons and provide you with a detailed step-by-step guide.

Table of contents
Why is SD Card Cloning the Best Option, Especially for Raspberry Pi?
Must-Dos Before Cloning the SD Card
How to Clone an SD Card with Software
How to Clone the SD Card Using the Command Line
Conclusion
FAQs

Why is SD Card Cloning the Best Option, Especially for Raspberry Pi?

To be honest, copy-and-paste is enough if you're just moving a small number of ordinary files, like photos and videos, from an old SD card. However, when it comes to bootable SD cards, professional device firmware, or complex file structures, cloning the SD card is the right way. Here are the reasons.

  1. Some applications or file systems rely on absolute paths, symbolic links, or special permissions. Cloning keeps these exactly as they are, while a manual copy can easily break those associations.
  2. If the original SD card is used for an embedded system, like a Raspberry Pi, the operating system resides on non-standard partitions on which copying files won’t retain bootability, while cloning preserves everything, even the entire partition structure, making the SD card bootable.
  3. Cloning means it will image the SD card sector by sector, duplicating everything, including hidden system files, boot information, configuration data, and more. A regular file copy only duplicates visible files.
  4. Compared to copying, it takes longer to clone a microSD card. However, it prevents you from having to reconfigure the environment or reinstall the system/programs.
  5. Cloning gives you an exact, perfect replica. If there is something wrong with the new SD card, you can get the old one back and run it again in no time.
  6. Last, even if your SD card is only used for saving regular data, when dealing with a large number of files, simple copy-and-paste is tedious, and it’s also risky to leave out some important files.

Must-Dos Before Cloning the SD Card

In summary, cloning is more advantageous for replacing an SD card in most cases. If you decide to do so, we suggest doing the following before you begin:

  1. If there are some important files in the new SD card, please back them up to your computer or an external hard drive since cloning will erase everything there.
  2. In Windows, type in "chkdsk [SD card drive letter, e.g., E]: /f /r /x" in the Windows command prompt. On Mac, use the First Aid in Disk Utility to check its health.
  3. Make sure that the storage capacity of the target SD card is equal to or greater than that used by the existing card.
  4. If possible, it's best to prepare two MicroSD and SD adapters.

Once you get everything ready, please continue reading. We will provide multiple methods to help you duplicate an SD card.

How to Clone an SD Card with Software

Cloning is inherently a complex process. If you want to copy the entire content from an old SD card to another without any changes, quickly and securely, then applying professional software for help is the first choice. Therefore, it’s very important to choose the right tool. Here we recommend two of the ones listed below. Though they differ in processing logic and applicable operating systems, they can achieve the same goal that you need.

#1. iBeesoft Disk Partition Wizard (Windows)

It's a professional disk management tool that integrates over 40 features for your trial, catering to almost any need. Professionalism and comprehensiveness are the main reasons to recommend. Besides, it will not only help you detect damaged sectors on the SD card and extract their data, but also allow you to freely change the storage layout after cloning. This is very useful in scenarios involving embedded systems such as the Raspberry Pi or NVIDIA Jetson Nano.

Steps to clone the SD card to a larger/smaller SD card in Windows 11/10:

  1. Connect both SD cards to your computer via SD card readers, making sure they’re detected by your computer as external hard drives.
  2. After downloading and installing iBeesoft Disk Partition Wizard on your computer, click "Disk Clone" in the sidebar.
  3. In the right of the window, select "Clone Data Disk" and click "Next".
  4. Select your old SD card and click "Next".
  5. Select the target SD card to clone to and click "Next".
  6. Select "Clone as the source" and check "Sector by sector clone" at the same time. After that, click "Start" and wait for the cloning process to complete.

#2. iBeesoft Data Recovery for Mac (Mac)

If you've previously used tools claiming to clone the SD card for Raspberry Pi on Mac, you've likely encountered situations where the system fails to boot after cloning. This is because macOS has stricter permission requirements for applications, which prevent them from truly obtaining root privileges.

Therefore, it should be a more reliable approach to use a working mode like Win32 Disk Imager, which creates an image file of the source SD card and then writes it to a new one. To do this, you can use iBeesoft Data Recovery for Mac. While its primary function is to help users recover deleted files on Mac, its latest version has added the feature to create sector-level storage device images. This happens to be able to achieve this.

How to duplicate an SD card on the Mac:

  1. Download the iBeesoft Data Recovery for Mac .dmg file and install it like any other software on your Mac.
  2. Launch the software. In its main interface, click "File Backup" in the sidebar.
  3. Ensure "Create Backup" is selected, then click "Next".
  4. Select the SD card from which you want to clone content, then click "Create Backup".
  5. In the pop-up window, select the location to save the image file and ensure the selected mode is "Sector-level", then click "Save".
  6. Once the image for the SD card is created, select "Recover" on the page from step 2 and click "Next".
  7. Select the image file from the old SD card, then select the new SD card to save it.

How to Clone the SD Card Using the Command Line

Perhaps if you are handy or an advanced user, then using commands to clone the SD card is still feasible. If you'd like to try it, here are the relevant commands and their detailed instructions. However, it should be noted that the capacity of the target SD card must be equal to or greater than that of the source SD card.

For Mac users:

  1. Locate the Applications folder, move to the Utilities folder to open Terminal.
  2. As shown in the screenshot, type "diskutil list" to view the identifiers of the two SD cards. Please carefully and repeatedly confirm which SD card is the source and which is the target. Here, we assume they are "Card1" and "Card2" respectively.
  3. Type "sudo umount /dev/Card1" and "sudo umount /dev/Card2" respectively and press Enter to unmount them to prevent data changes during copying.
  4. Last, type "sudo dd if=/dev/Card1 of=/dev/Card2 bs=4M status=progress conv=fsync && sync" and press Enter.

The following is an explanation of this command:

Parameters Full Name/Meaning Function
sudo SuperUser Do Get root access to read and write your SD card.
dd Disk Duplicator Copy byte by byte to preserve all information, such as the partition table and boot record, in each block.
if= Input File Specify the source of the cloned data.
of= Output File Specify the target device to write to
bs=4M Block Size The data block size for a single read/write operation is 4 Megabytes. The default size is 512 bytes, which is extremely slow. Setting it to between "1M-64M" can significantly reduce the number of I/O calls and improve the copying speed to the SD card.
status=progress It displays the amount of data transmitted, the speed, and the time taken in real time.
conv=fsync Convert/Fsync Force all data cached in memory to be physically written to the underlying SD card hardware.
&& sync A final check was performed to make certain that all data was securely written to the target SD card.

For Windows users:

Although there is no command similar to "dd" for sector-level copying in Windows, if you specifically want to use the above command to duplicate the SD card, you can use a tool that ports it and still achieve the same goal.

  1. After downloading Chrysocome dd for Windows, extract the zip file.
  2. Run Command Prompt as administrator.
  3. Type in "cd [path to Chrysocome dd for Windows, e.g., "J:\dd"]" and press Enter.
  4. Type in "dd --list" and press Enter to view the source and target SD cards' identifiers, respectively.
  5. Type in "dd if=\\.\Source SD card identifier of=\\.\Target SD card identifier bs=4M --progress" and press Enter.

Conclusion

We hope one of the above methods helps you clone the SD card so you can easily upgrade your hardware. As you see, though they’re different in processing, they can achieve the same goal. With them, whether you need to migrate ordinary files, upgrade the boot card, or deploy a preconfigured Raspberry Pi, we believe you can handle it with ease.

FAQs

iBeesoft only uses cookies to ensure you have the best browsing experience and does not collect any information.