# Insert the SD card and watch for a new device appearing in lsblk
# Insert the SD card and watch for a new device appearing in lsblk
# Observe the output for the new device. It should match something like this: {{#tag:syntaxhighlight|
# Observe the output for the new device. It should match something like this: {{#tag:syntaxhighlight|
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 3,8G 0 disk
mmcblk0 179:0 0 29.7G 0 disk
└─mmcblk0p1 179:1 0 3,7G 0 part /run/media/user/FFFF-FFFF
└─mmcblk0p1 179:1 0 29.5G 0 part /run/media/user/FFFF-FFFF
|lang=text}}
|lang=text}}
# Take note of the name of the device that now appears. In our example above, it was <code>mmcblk0p1</code>, but it could show up as <code>sda</code> or <code>sdb</code>, if you use a USB adapter
# Take note of the name of the device that now appears. In our example above, it was <code>mmcblk0</code>, but it could show up as <code>sda</code> or <code>sdb</code>, if you use a USB adapter
#* If <code>RO</code> is set to 1, make sure the lock switch is not slid down
#* If <code>RO</code> is set to 1, make sure the lock switch is not slid down
# Hit CTRL + C to exit the menu
# Hit CTRL + C to exit the menu
# Type <code>sudo umount /dev/<device name>*</code> (do not replace the <code>*</code>)
# Install the <code>fdisk</code> and <code>dosfstools</code> packages using your package manager of choice
# Install the <code>fdisk</code> and <code>dosfstools</code> packages using your package manager of choice
# Type <code>sudo fdisk /dev/<device name></code>
# Type <code>sudo fdisk /dev/<device name></code>
# Enter <code>t</code> and then enter <code>0c</code>
# Enter <code>t</code> and then enter <code>0c</code>
# Enter <code>a</code> and then <code>p</code> - observe the output, and make sure the device is now formatted correctly
# Enter <code>a</code> and then <code>p</code> - observe the output, and make sure the device is now formatted correctly: {{#tag:syntaxhighlight|
Disk /dev/mmcblk0: 29.72 GiB, 31914983424 bytes, 62333952 sectors
/dev/<partition name> 8192 62333951 62325760 29.7G c W95 FAT32 (LBA)
|lang=text}}
# If there are no issues, enter <code>w</code> - this will save changes and exit the fdisk prompt
# If there are no issues, enter <code>w</code> - this will save changes and exit the fdisk prompt
# Type <code>sudo mkfs.vfat /dev/<device name>1 -s 64</code> to reformat the new partition
# Type <code>sudo mkfs.vfat /dev/<partition name> -s 64</code> to reformat the new partition
#* If the SD card is over 32GB in size, change <code>64</code> to <code>128</code>
#* If the SD card is over 32GB in size, change <code>64</code> to <code>128</code>
# Type <code>sudo eject /dev/<device name></code>, then remove and reinsert the SD card
# Type <code>sudo eject /dev/<device name></code>, then remove and reinsert the SD card
Line 40:
Line 51:
# Insert the SD card and watch for a new device appearing in lsblk
# Insert the SD card and watch for a new device appearing in lsblk
# Observe the output for the new device. It should match something like this: {{#tag:syntaxhighlight|
# Observe the output for the new device. It should match something like this: {{#tag:syntaxhighlight|
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 3,8G 0 disk
mmcblk0 179:0 0 29.7G 0 disk
└─mmcblk0p1 179:1 0 3,7G 0 part /run/media/user/FFFF-FFFF
└─mmcblk0p1 179:1 0 29.5G 0 part /run/media/user/FFFF-FFFF
|lang=text}}
|lang=text}}
# Take note of the name of the device that now appears. In our example above, it was <code>mmcblk0p1</code>, but it could show up as <code>sda</code> or <code>sdb</code>, if you use a USB adapter
# Take note of the name of the device that now appears. In our example above, it was <code>mmcblk0</code>, but it could show up as <code>sda</code> or <code>sdb</code>, if you use a USB adapter
#* If <code>RO</code> is set to 1, make sure the lock switch is not slid down
#* If <code>RO</code> is set to 1, make sure the lock switch is not slid down
# Hit CTRL + C to exit the menu
# Hit CTRL + C to exit the menu
Line 51:
Line 62:
# Choose the <code>Delete</code> option and delete any existing partitions
# Choose the <code>Delete</code> option and delete any existing partitions
# Choose the <code>New</code> option, keep partition size at the recommended size, and choose primary partition type
# Choose the <code>New</code> option, keep partition size at the recommended size, and choose primary partition type
# Choose the <code>Type</code> option, scroll up until you see <code>b W95 FAT32</code> and select it
# Choose the <code>Type</code> option, scroll up until you see <code>c W95 FAT32 (LBA)</code> and select it
# Finally, choose the <code>Write</code> option.
# Finally, choose the <code>Write</code> option.
# Choose the <code>Quit</code> option
# Choose the <code>Quit</code> option
Line 65:
Line 76:
# Insert the SD card and watch for a new device appearing in lsblk
# Insert the SD card and watch for a new device appearing in lsblk
# Observe the output for the new device. It should match something like this: {{#tag:syntaxhighlight|
# Observe the output for the new device. It should match something like this: {{#tag:syntaxhighlight|
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 3,8G 0 disk
mmcblk0 179:0 0 29.7G 0 disk
└─mmcblk0p1 179:1 0 3,7G 0 part /run/media/user/FFFF-FFFF
└─mmcblk0p1 179:1 0 29.5G 0 part /run/media/user/FFFF-FFFF
|lang=text}}
|lang=text}}
# Take note of the name of the device that now appears. In our example above, it was <code>mmcblk0p1</code>, but it could show up as <code>sda</code> or <code>sdb</code>, if you use a USB adapter
# Take note of the name of the device that now appears. In our example above, it was <code>mmcblk0</code>, but it could show up as <code>sda</code> or <code>sdb</code>, if you use a USB adapter
#* If <code>RO</code> is set to 1, make sure the lock switch is not slid down
#* If <code>RO</code> is set to 1, make sure the lock switch is not slid down
# Hit CTRL + C to exit the menu
# Hit CTRL + C to exit the menu
Revision as of 18:22, 25 August 2024
This is an add-on section for formatting an SD card to FAT32.
This page is for Linux users only. If you are not on Linux, check out the Windows or Mac pages.
Instructions
Before beginning these steps, copy all of your SD card's contents to a folder on your computer.
The commands in this guide are case-sensitive. Enter them exactly as written, or there may be unintended consequences.
Make sure your SD card is not inserted
Open a terminal window and type watch lsblk
Insert the SD card and watch for a new device appearing in lsblk
Observe the output for the new device. It should match something like this:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 29.7G 0 disk
└─mmcblk0p1 179:1 0 29.5G 0 part /run/media/user/FFFF-FFFF
Take note of the name of the device that now appears. In our example above, it was mmcblk0, but it could show up as sda or sdb, if you use a USB adapter
If RO is set to 1, make sure the lock switch is not slid down
Hit CTRL + C to exit the menu
Type sudo umount /dev/<device name>* (do not replace the *)
Install the fdisk and dosfstools packages using your package manager of choice
Type sudo fdisk /dev/<device name>
Enter t and then enter 0c
Enter a and then p - observe the output, and make sure the device is now formatted correctly:
Disk /dev/mmcblk0: 29.72 GiB, 31914983424 bytes, 62333952 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x########
Device Boot Start End Sectors Size Id Type
/dev/<partition name> 8192 62333951 62325760 29.7G c W95 FAT32 (LBA)
If there are no issues, enter w - this will save changes and exit the fdisk prompt
Type sudo mkfs.vfat /dev/<partition name> -s 64 to reformat the new partition
If the SD card is over 32GB in size, change 64 to 128
Type sudo eject /dev/<device name>, then remove and reinsert the SD card
Copy your data back onto the SD card
Make sure your SD card is not inserted
Open a terminal window and type watch lsblk
Insert the SD card and watch for a new device appearing in lsblk
Observe the output for the new device. It should match something like this:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 29.7G 0 disk
└─mmcblk0p1 179:1 0 29.5G 0 part /run/media/user/FFFF-FFFF
Take note of the name of the device that now appears. In our example above, it was mmcblk0, but it could show up as sda or sdb, if you use a USB adapter
If RO is set to 1, make sure the lock switch is not slid down
Hit CTRL + C to exit the menu
Install the cfdisk and dosfstools packages using your package manager of choice
Type sudo cfdisk /dev/<device name>
Choose the Delete option and delete any existing partitions
Choose the New option, keep partition size at the recommended size, and choose primary partition type
Choose the Type option, scroll up until you see c W95 FAT32 (LBA) and select it
Finally, choose the Write option.
Choose the Quit option
Type sudo eject /dev/<device name>, then remove and reinsert the SD card
Copy your data back onto the SD card
Make sure your SD card is not inserted
Open a terminal window and type watch lsblk
Insert the SD card and watch for a new device appearing in lsblk
Observe the output for the new device. It should match something like this:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 29.7G 0 disk
└─mmcblk0p1 179:1 0 29.5G 0 part /run/media/user/FFFF-FFFF
Take note of the name of the device that now appears. In our example above, it was mmcblk0, but it could show up as sda or sdb, if you use a USB adapter
If RO is set to 1, make sure the lock switch is not slid down
Hit CTRL + C to exit the menu
Install the parted and dosfstools packages using your package manager of choice
Type sudo parted /dev/<device name> mklabel msdos
Type sudo parted -a opt /dev/<device name> mkpart primary fat32 0% 100%
Type sudo eject /dev/<device name>, then remove and reinsert the SD card.