How to Restore USB drives back to their full capacity, recover lost storage space and reset a USB flash drive back to its original state. This post is for those who used tools like Etcher, Win32Disk Imager or dd to copy ISO to USB, overwriting the partition on a flash drive, and now want to repair USB by reverting back to a single FAT, FAT32, exFAT, or NTFS partition.
Reset USB Drives | Factory Restore | Recover Space
USB drive not showing up?
If your USB drive is not showing up, you may need to restore it to its original state by reformatting. This process effectively resets the USB drive, making it detectable, readable, and usable again on any computer.
Restoring or repairing a corrupted USB drive is often necessary after using tools like Balena Etcher to burn an ISO or Win32 Disk Imager to write an image to a removable device. These tools work much like the linux DD command and overwrite the USB drive's boot record, partition table, and filesystem, making the stick appear corrupted or unreadable. In which case, the following methods can be used to fix a corrupted flash drive.
In some cases, the flash drive might not even be assigned a drive letter and can not be detected by your Computer. This is because these tools use raw-write style dd tasks to put an .img or .iso file on the drive. As a result, the boot record, partition table data, and filesystem becomes overwritten with that of the raw image file.
How to Test for Fake or Damaged Flash Drives
Before attempting to restore your USB drive, it’s crucial to verify that the drive is genuine and not counterfeit. Many fake flash drives show inflated storage capacities but cannot hold as much data as advertised. Testing tools can also reveal if the USB is damaged beyond repair. Here are two powerful tools for testing flash drives: H2TestW and F3.
Testing USB Drives with H2TestW (Windows)
H2TestW is a popular tool for detecting fake flash drives and checking for read/write errors. Here's how to use it:
- Download H2TestW and start the program.
- Run the Test
Launch H2TestW and select the USB drive.
Choose to test the entire drive or specify a smaller area.
Click Write + Verify to test the drive's true capacity and detect errors. - Review the Results
A genuine drive will pass the test without errors, and its reported capacity will match the advertised size. A fake drive will fail, showing discrepancies between the claimed and actual capacities or data corruption during the write phase.
Testing USB Drives with F3 (Linux/macOS)
F3 (Fight Flash Fraud) is a command-line tool designed to verify flash drive capacities. It is an excellent alternative to H2TestW for Linux/macOS users. Follow these steps:
- Install F3
For Linux, install via your package manager (e.g.,sudo apt install f3
on Ubuntu/Debian).
For macOS, use Homebrew:brew install f3
. - Test the Drive
F3 offers two primary commands:f3write
: Writes test files to the USB drive until it’s full.f3write /mount/point
f3read
: Reads the written files and checks for errors.f3read /mount/point
- Analyze the Results
If the drive is genuine, it will show no errors, and the read/write speeds will be consistent. A fake or faulty drive will display errors, and the usable storage may be less than advertised.
Why Testing is Important
Running these tests ensures your efforts to restore the USB drive aren't wasted on fake or irreparably damaged hardware. If the drive fails the tests, it may need to be replaced. After confirming the drive is genuine and functional, proceed with restoration methods such as formatting, repartitioning, or resetting your USB stick.
Fix USB drives from Windows, Linux, or macOS
Windows users can follow the instructions below to fix or repair a corrupted USB drive or reset and restore a flash drive. Here we are using Diskpart, the SD Formatter, or BOOTICE for formatting a USB drive. MacOS users should also be able to use the SD tool. For those working from Linux this task can easily be accomplished via fdisk.
Restore USB drives using diskpart in Windows
To restore USB using diskpart for formatting a USB drive:
- Open a command Prompt as administrator (cmd.exe)
- Type diskpart
- Next type list disk
- Type Select Disk X (where X is the disk number of your drive).
- Type clean
If you encounter an error, refer to the note below - Next type create partition primary
- Type Format fs=exfat quick
Note: (for 32GB and smaller drives, use fs=fat32) instead. - Then type active
- Next type assign
- Finally, type exit to quit
DiskPart Has Encountered an Error: Access is Denied
If you encounter an error like this, simply repeat step 5.
DiskPart has encountered an error: Access is denied.
See the System Event Log for more information.
If repeating DiskPart clean does not work, you'll need to Fix the Corrupted USB Flash Drive with dd. This appears to be because Windows is unable to detect the Linux file format.
Restore USB Drives with SD Formatter Tool
Windows and or Mac OS users can use the SD Formatter Tool for restoring a USB drive - by formatting it back to its original state. Though originally designed to be used on SD cards, this tool can be used to reformat a flash drive as well.
- Download SD Formatter and launch the tool.
- Select your USB flash drive from the Drive: drop list.
- Choose your Format Option.
- Then press the Format button.
Using BOOTICE to Restore or Reset USB drives
Windows users can also use BOOTICE to format and restore USB flash drives and attempt to fix or repair them, if they appear corrupted. The tool uses a simple and intuitive GUI.
NOTE: It looks like this software may no longer be in active development as the last revision was released in 2016. A download link to the latest available version is being provided.
- Download BOOTICE, extract, then run Pauly's Tool.
- Once BOOTICE is running:
(1.) Select your drive from the list, (2.) Click Parts Manage. - Then, (1.) Click Repartitioning.
- (1.) Under Disk Mode, choose USB-FDD, USB-HDD, or USB-ZIP mode
(I prefer USB-HDD as it works with most BIOS systems)
(2.) Click OK.
Restore or Reset USB Drives using Linux
For wiping, resetting, partitioning and formatting a USB drive from a Linux terminal, you can use the following fdisk
commands:
A. First we need to delete the old partitions that remain on the USB key.
- Open a terminal Ctrl+Alt+T and then type sudo su.
- Type fdisk -l and note which letter belongs to your flash drive.
- Then type fdisk /dev/sdx (replacing x with your drive letter).
- Next type d to proceed to delete a partition.
- Type 1 to select the 1st partition and press enter.
- Then type d to proceed to delete another partition, if necessary. (fdisk should automatically select the second partition).
B. Next we need to create a new partition.
- Type n to make a new partition.
- Then type p and press enter to make this partition primary.
- Type 1 and then press enter to make this the first partition.
- Next press enter to accept the default first sector.
- Press enter again to accept the default last sector.
- Type w to write the new partition information to the USB key.
- Type umount /dev/sdx1 (replace x with your drive letter).
C. The last step is to create the fat32 or exFAT filesystem.
- For Fat32, type mkfs.vfat -F 32 /dev/sdx1 (replacing x with your drive letter)
- For exFAT, (if using Ubuntu or Debian), type apt install exfat-utils and then type mkfs.exfat /dev/sdx1 (again replace x with your drive letter)
Repair Corrupted USB drives or SD cards with dd
USB drive not showing up or still isn't being detected? If none of the options mentioned above worked to help you restore USB, or if you want to try another way to attempt to fix or repair a corrupted USB flash drive or SD card. Here is a last resort you can try before tossing your USB drive or sd card into the trash. Windows users will need to download dd.exe to follow along.
- Open up a terminal (or command prompt in Windows)
- Next, we will wipe out the partition table and leading filesystem information.
For Windows users using dd.exe. Replacing X with your actual USB drive letter, type the following and then press enter;dd if=/dev/zero od=X: count=1 bs=4096 --progress
If that fails, try the following, instead. Replace Harddisk1 with your actual disk number which can be found by running diskmgmt.msc
dd if=/dev/zero of=\\?\Device\Harddisk1\Partition0 count=1 bs=4096 --progress
For Linux users. Replacing X with your actual USB device, type the following and then press enter;
dd if=/dev/zero of=/dev/sdX count=1 bs=4096 status=progress
- Then try to format your thumb drive using any method you want.
That's it! These methods let you fix, reset, repair, and restore USB drives to their full capacity using Windows, Linux, or macOS. After completing these steps, your reset USB drive should be fixed with a single exFAT or FAT32 partition, making it compatible with any computer.
Note: You can also recover lost USB storage space. This is especially helpful if you've used dd to raw write an ISO image to your drive, which can make the device appear smaller than its original capacity and unusable for traditional storage. That tutorial can help you create a second partition to use for regular storage purposes.