54

When I plug in my USB flash drive, it shows up on my computer as write-protected or read-only. I am unable to transfer data to it, nor can I modify or delete any files already stored on it. I also cannot repartition or reformat the drive using Windows Disk Management, DiskPart, GParted, or other tools. The drive does not have a write-protect switch.

Why did this happen and what can I do about it? Is there a way to remove the write protection?

(Note that this can happen with some memory cards, too, as they often use controllers similar to those used in flash drives. In some cases, the system may report that the drive or card was formatted successfully even though it was never actually formatted; the original data reappears when the device is reinserted.)

This question comes up often and the answers are usually the same. This post is meant to provide a definitive, canonical answer for this problem. Feel free to edit the answer to add additional details.

3

3 Answers 3

49

If the drive appears to be write-protected, start by inserting the drive into another computer to isolate the cause of the issue.

If you're able to write to the drive from another computer, you might be experiencing one of the following problems:

  1. Filesystem corruption. The drive might have a corrupted filesystem or other issue (possibly specific to a particular computer or OS) that can be corrected by using CHKDSK or a similar utility. If this addresses the problem, your drive is probably working normally. It's also important to eject the drive properly before removing it or at least wait until the drive has finished writing, as removal of the drive while it is writing data can cause low-level data corruption.

  2. Incorrect Group Policy settings. If you're running Windows, it's possible that your system's Group Policy may be disallowing writing to external storage devices, including USB flash drives. The registry key HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\StorageDevicePolicies should either be absent or set to 0; if it is set to 1, Windows will not allow writing to external storage devices.

  3. (SD cards only) Broken or altered write-protect switch in the card slot. The mechanical lock switch on an SD card is not connected to its electronics:

    It is the responsibility of the host to protect the card. The position of the write protect switch is unknown to the internal circuitry of the card.

    This means that hardware and software other than the card itself is responsible for checking the lock state of the card. If this mechanism isn't working as designed, a SD card can appear to be write-protected even if it is otherwise functioning normally. Typically, this can be addressed by replacing the card reader, although faulty drivers or incorrect software configuration can also cause this problem.

  4. Power problem on the USB used to read the drive. The easiest and most reliable way to check if you are experiencing this issue is to test the drive on a different computer. If another computer is not available, shutting the machine off, letting it cool down for a while and then retrying might solve the issue

  5. Force the drive to ignore the issue and write to it anyway. This can be done in Linux in two different ways. The simple and soft way. The hard and really pushy way. These options are of the topic "probably the drive is dead, but I want to try anyway if that's the case, and I certainly don't care about recovering my data"


If the drive is read-only no matter what computer you plug it into, or you've tried the above steps to no avail, then the drive has probably experienced a fault condition, and it's generally not possible to remove write protection from a faulty flash drive. This behavior is typical of flash drive controllers when they detect a problem with the underlying NAND (e.g. too many bad blocks). The write protection is intended to prevent this condition from actually causing data loss, e.g. the NAND becoming unreadable altogether. For example, SanDisk customer support says:

Write protection errors occur when a flash drive detects a potential fault within itself. The drive will go into write-protected mode to prevent data loss. There is no method to fix this.

Note that depending on the drive, there may in fact be ways to disable (or more accurately, reset) the write protection by reprogramming the flash memory controller, such as by using the techniques listed under "Potential Hardware-Specific Restoration" in this answer. Doing this is not a good idea because the write protection signals that a problem has been detected by the controller; overriding this and continuing to write to the drive could result in data loss.


The upshot of this behavior is that any data on the drive is still accessible. Because the drive is failing, you should back up the contents of the flash drive as soon as possible and replace the drive. (If the drive contains sensitive information, be sure to physically destroy it before you dispose of it.)

Getting data off the drive may be tricky because some data corruption may have already occurred by the time drive went into read-only mode. This commonly manifests itself as the filesystem experiencing low-level corruption causing the filesystem to appear as RAW or the OS prompting the format the drive. Recovering from this kind of corruption can be complicated because the filesystem cannot be directly repaired—the drive is, after all, write-protected.

You may be able to retrieve data from a drive corrupted in this manner by using data recovery utilities such as the open-source TestDisk. You can also get a drive of equal or greater capacity and copy over the failing drive's contents sector by sector onto the new drive using GNU ddrescue, and follow up with a CHKDSK to fix the filesystem errors. If these fail, and the data is particularly valuable, you could send the drive to a dedicated data recovery service; however, these services tend to be very expensive due to their highly specialized nature and are rarely worth it.

0
11

I found my Transcend StorageJet was set to be read-only too. It can be written on other computer but not on my laptop. (Both systems are Win7)

I don't find any strange codes, e.g. WriteProtect, under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control in my registry.

Finally I found this solution and it can work now! (I modify some mistakes and add my own expressions from the reference article.)

To solve this issue, you must use diskpart:

  1. Open a Command Prompt with administrative privileges (Right-click > Run as Administrator).

  2. Type diskpart and press Enter. You can see the command prompt is changed to be DISKPART>

  3. List the disks by typing:

list disk

  1. Select the external USB disk by typing (in my example the external disk was disk 2):

select disk 2

  1. List the volume by typing:

list volume

  1. Select the volume by typing (in my example the external disk was using volume 4):

select volume 4

  1. Display the volume details:

detail disk

  1. Display the volume details:

detail volume

(You may find the read-only attributes of the selected disk and volume set to be YES)

  1. Set the read-only attributes for the disk and volume to be off:

attributes disk clear readonly

attributes volume clear readonly

  1. Execute detail disk and detail disk again to check the read-only attribute. Write something to your external USB HD.

See also

External Hard Drive Read Only Issue and Solution

DiskPart Command-Line Options

1
  • I thought I had a similar read-only problem. Turned out that disk was FAT32 formatted and I tried to copy 10GB file. Got confused by Windows 10 reporting "Copy failed. Please remove the write protection". Sep 8, 2019 at 21:23
7
  1. Ensure that the "Write-Protect Switch" is not locked: Flash drive with physical lock switch

  2. In some cases low-level format tools may help (but it needs a few hours to completely format. Also backup files.): https://puvox.software/blog/free-file-recovery-software/

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .