How to hard format sd card on macOS?

I try to make sd card with raspbian software, but on my windows PC from work i don't have enough permissions to do it. Unfortunately it formatted into multiple partitions. Now i can see only one in Mac Disk Utility with 300 MB (sd card have 64GB). Somebody has idea how to fix it back to get full space?


Solution 1:

This will erase all data* that currently exists on the SD card:

  1. Remove your SD card.
  2. Open Disk Utility.
  3. In the menu bar, click [View] > [Show All Devices].
  4. Insert your SD card, ensuring the write-lock switch is in the unlocked position (towards the side of the card which has the gold contacts). You should see your SD card appear in the sidebar in Disk Utility as something like "Apple SDXC Reader Media". Click this item.
  5. Click [Erase] in the top bar.
  6. Enter a name of your choosing.
  7. For the format, choose "MS-DOS (FAT)".
  8. For the scheme, choose "Master Boot Record".
  9. Click [Security Options...], move the slider to "Fastest", then click "OK".
  10. Click [Erase].

* As Ralph Bolton points out in the comments, this doesn't make the data completely unrecoverable; data recovery tools can easily get the erased data back. I just wanted to put a warning at the start that formatting effectively deletes everything, so before formatting, at least make sure you have a backup of any data that you still want. If you don't want the data to be recoverable, then you should set the [Security Options...] slider to something other than "Fastest".

Solution 2:

Sometimes window partitions on drives can be tricky and difficult for a Mac to erase, like the windows protected boot partition. Same goes for linux. That being said, if you really want to "Clean and reset" your SD card you could zero it using the dd utility in terminal.

  1. Open up the terminal app in Mac OS.
  2. Type Diskutil list.
  3. Find the external drive that you want to erase (it should be labeled /dev/diskX with "X" being the number of your drive that you want to erase.
  4. Then use the dd command on the DRIVE YOU WANT TO ERASE: Warning, this will completely erase everything!

    sudo dd if=/dev/zero of=/dev/diskX bs=1m
    
  5. Wait for the DD command to show a completion message.

  6. Now reformat the drive in disk utility and full space should be restored.