Formatting an SD card/Linux: Difference between revisions

From Hacks Guide Wiki
(make generic (remove mentions of 3DS))
(Undo MSET9 Fresh mention - Linux)
Tag: Undo
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Page WIP|notes=
*This page needs to actually do repartitioning properly, or else on certain SD cards that come with exFAT, the partition table won't be updated to reflect this. Maybe use fdisk for this?
*GUI options for people who can use that such as GNOME Disks or GParted (which can be installed with most package managers).
}}
This is an add-on section for formatting an SD card to FAT32.
This is an add-on section for formatting an SD card to FAT32.


Line 9: Line 4:


== Instructions ==
== Instructions ==
{{warning|Before beginning these steps, copy all of your SD card's contents to a folder on your computer.}}


{{warning|The commands in this guide are case-sensitive. Enter them exactly as written, or there may be unintended consequences.}}
<tabber>
|-|fdisk=
<span>
# Make sure your SD card is '''not''' inserted
# Make sure your SD card is '''not''' inserted
# Launch the Linux Terminal
# Open a terminal window and type <code>watch lsblk</code>
# Type <code>watch "lsblk"</code>
# Insert the SD card and watch for a new device appearing in lsblk
# Insert your SD card into your PC
# Observe the output for the new device. It should match something like this: {{#tag:syntaxhighlight|
# Observe the output. 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  3,8G  0 disk
└─mmcblk0p1 179:1    0  3,7G  0 part /run/media/user/FFFF-FFFF
└─mmcblk0p1 179:1    0  3,7G  0 part /run/media/user/FFFF-FFFF
|lang=text}}
|lang=text}}
# Take note of the device name. In our example above, it was <code>mmcblk0p1</code>
# 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
#* 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 in the following for your SD card:
# Install the <code>fdisk</code> and <code>dosfstools</code> packages using your package manager of choice
#* 2GB or lower: <code>sudo mkfs.fat /dev/(device name from above) -s 64 -F 16</code>
# Type <code>sudo fdisk /dev/<device name></code>
#** This creates a single FAT16 partition with 32 KB cluster size on the SD card
# Enter <code>t</code> and then enter <code>0c</code>
#* 4GB - 128GB: <code>sudo mkfs.fat /dev/(device name from above) -s 64 -F 32</code>
# Enter <code>a</code> and then <code>p</code> - observe the output, and make sure the device is now formatted correctly
#** This creates a single FAT32 partition with 32 KB cluster size on the SD card
# If there are no issues, enter <code>w</code> - this will save changes and exit the fdisk prompt
#* 128GB or higher: <code>sudo mkfs.fat /dev/(device name from above) -s 128 -F 32</code>
# Type <code>sudo mkfs.vfat /dev/<device name>1 -s 64</code> to reformat the new partition
#** This creates a single FAT32 partition with 64 KB cluster size on the SD card
#* 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
# Copy your data back onto the SD card
</span>


|-|cfdisk=
<span>
# Make sure your SD card is '''not''' inserted
# Open a terminal window and type <code>watch lsblk</code>
# 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|
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
mmcblk0    179:0    0  3,8G  0 disk
└─mmcblk0p1 179:1    0  3,7G  0 part /run/media/user/FFFF-FFFF
|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
#* If <code>RO</code> is set to 1, make sure the lock switch is not slid down
# Hit CTRL + C to exit the menu
# Install the <code>cfdisk</code> and <code>dosfstools</code> packages using your package manager of choice
# Type <code>sudo cfdisk /dev/<device name></code>
# 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>Type</code> option, scroll up until you see <code>b W95 FAT32</code> and select it
# Finally, choose the <code>Write</code> option.
# Choose the <code>Quit</code> option
# Type <code>sudo eject /dev/<device name></code>, then remove and reinsert the SD card
# Copy your data back onto the SD card
</span>
|-|parted=
<span>
# Make sure your SD card is '''not''' inserted
# Open a terminal window and type <code>watch lsblk</code>
# 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|
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
mmcblk0    179:0    0  3,8G  0 disk
└─mmcblk0p1 179:1    0  3,7G  0 part /run/media/user/FFFF-FFFF
|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
#* If <code>RO</code> is set to 1, make sure the lock switch is not slid down
# Hit CTRL + C to exit the menu
# Install the <code>parted</code> and <code>dosfstools</code> packages using your package manager of choice
# Type <code>sudo parted /dev/<device name> mklabel msdos</code>
# Type <code>sudo parted -a opt /dev/<device name> mkpart primary fat32 0% 100%</code>
# Type <code>sudo eject /dev/<device name></code>, then remove and reinsert the SD card.
# Copy your data back onto the SD card.
</span>
</tabber>
{{hg imported|Guide_3DS}}
{{hg imported|Guide_3DS}}


[[Category:General guides]]
[[Category:General guides]]

Latest revision as of 18:16, 11 April 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

OOjs UI icon information-warning.svg Before beginning these steps, copy all of your SD card's contents to a folder on your computer.
OOjs UI icon information-warning.svg The commands in this guide are case-sensitive. Enter them exactly as written, or there may be unintended consequences.
  1. Make sure your SD card is not inserted
  2. Open a terminal window and type watch lsblk
  3. Insert the SD card and watch for a new device appearing in lsblk
  4. 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   3,8G  0 disk
    └─mmcblk0p1 179:1    0   3,7G  0 part /run/media/user/FFFF-FFFF
    
  5. Take note of the name of the device that now appears. In our example above, it was mmcblk0p1, 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
  6. Hit CTRL + C to exit the menu
  7. Install the fdisk and dosfstools packages using your package manager of choice
  8. Type sudo fdisk /dev/<device name>
  9. Enter t and then enter 0c
  10. Enter a and then p - observe the output, and make sure the device is now formatted correctly
  11. If there are no issues, enter w - this will save changes and exit the fdisk prompt
  12. Type sudo mkfs.vfat /dev/<device name>1 -s 64 to reformat the new partition
    • If the SD card is over 32GB in size, change 64 to 128
  13. Type sudo eject /dev/<device name>, then remove and reinsert the SD card
  14. Copy your data back onto the SD card

  1. Make sure your SD card is not inserted
  2. Open a terminal window and type watch lsblk
  3. Insert the SD card and watch for a new device appearing in lsblk
  4. 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   3,8G  0 disk
    └─mmcblk0p1 179:1    0   3,7G  0 part /run/media/user/FFFF-FFFF
    
  5. Take note of the name of the device that now appears. In our example above, it was mmcblk0p1, 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
  6. Hit CTRL + C to exit the menu
  7. Install the cfdisk and dosfstools packages using your package manager of choice
  8. Type sudo cfdisk /dev/<device name>
  9. Choose the Delete option and delete any existing partitions
  10. Choose the New option, keep partition size at the recommended size, and choose primary partition type
  11. Choose the Type option, scroll up until you see b W95 FAT32 and select it
  12. Finally, choose the Write option.
  13. Choose the Quit option
  14. Type sudo eject /dev/<device name>, then remove and reinsert the SD card
  15. Copy your data back onto the SD card

  1. Make sure your SD card is not inserted
  2. Open a terminal window and type watch lsblk
  3. Insert the SD card and watch for a new device appearing in lsblk
  4. 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   3,8G  0 disk
    └─mmcblk0p1 179:1    0   3,7G  0 part /run/media/user/FFFF-FFFF
    
  5. Take note of the name of the device that now appears. In our example above, it was mmcblk0p1, 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
  6. Hit CTRL + C to exit the menu
  7. Install the parted and dosfstools packages using your package manager of choice
  8. Type sudo parted /dev/<device name> mklabel msdos
  9. Type sudo parted -a opt /dev/<device name> mkpart primary fat32 0% 100%
  10. Type sudo eject /dev/<device name>, then remove and reinsert the SD card.
  11. Copy your data back onto the SD card.