Formatting an SD card/Linux: Difference between revisions
From Hacks Guide Wiki
More actions
There's a difference between the partition table and the partition |
wip edit, still need to do something about cfdisk and eventually add gui options (gparted, kde partition manager) |
||
| Line 25: | Line 25: | ||
# 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> | # Enter <code>o</code>, this will create a new MBR partition scheme | ||
# Enter <code>n</code>, then press enter until you're returned to the prompt | |||
#* The default values will work fine for all consoles | |||
# Enter <code>t</code>, 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: {{#tag:syntaxhighlight| | # 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 | Disk /dev/mmcblk0: 29.72 GiB, 31914983424 bytes, 62333952 sectors | ||
Revision as of 17:50, 31 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 assdaorsdb, if you use a USB adapter- If
ROis set to 1, make sure the lock switch is not slid down
- If
- Hit CTRL + C to exit the menu
- Type
sudo umount /dev/<device name>*(do not replace the*) - Install the
fdiskanddosfstoolspackages using your package manager of choice - Type
sudo fdisk /dev/<device name> - Enter
o, this will create a new MBR partition scheme - Enter
n, then press enter until you're returned to the prompt- The default values will work fine for all consoles
- Enter
t, then enter0c - Enter
aand thenp- 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 64to reformat the new partition- If the SD card is over 32GB in size, change
64to128
- If the SD card is over 32GB in size, change
- 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 assdaorsdb, if you use a USB adapter- If
ROis set to 1, make sure the lock switch is not slid down
- If
- Hit CTRL + C to exit the menu
- Install the
cfdiskanddosfstoolspackages using your package manager of choice - Type
sudo cfdisk /dev/<device name> - Choose the
Deleteoption and delete any existing partitions - Choose the
Newoption, keep partition size at the recommended size, and choose primary partition type - Choose the
Typeoption, scroll up until you seec W95 FAT32 (LBA)and select it - Finally, choose the
Writeoption. - Choose the
Quitoption - 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 assdaorsdb, if you use a USB adapter- If
ROis set to 1, make sure the lock switch is not slid down
- If
- Hit CTRL + C to exit the menu
- Install the
partedanddosfstoolspackages 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. - Copy your data back onto the SD card.