MicroSD card is set to Read-only state. How can I write data on it?
I have a MicroSD card reader in my notebook. When I insert a MicroSD memory card into it, I can't write any data on it - it's read-only. The same thing happens when I try to do it under root. And I can't change the permission policy for it. This problem happens for all microSD cards (I've tested 2 cards). I've encountered it on Ubuntu 12.04 LTS, now I'm on Ubuntu 12.10, the problem is still on it's place. When I try to insert such a "read-only" card in my mobile phone, everything's OK and I can write data on it. So, can anybody tell me, how can I write a data onto the card?
Disk /dev/sdc1: 2013 MB, 2013135360 bytes 62 heads, 62 sectors/track, 1022 cylinders, total 3931905 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 Disk identifier: 0x00000000 Device Boot Start End Blocks Id System
The file system of the card is
msdos. As to me it's weird.
UPD2: I've found a small "lock" switch on my card adapter, and it turns out, that when I insert it in my notebook, it switches on. Perhaps, I have to find some glue or something to get that switch stuck...
UPD3: There was no glue near me, so I've decided to buy another card-reader.
the problem might be the filesystem (it might be formatted to a filesystem which linux does not have write support), could you paste us the output of "sudo fdisk -l" on a pastebin (paste.ubuntu.com) and give us the link?
@Sam `fdisk -l` should be small enough to post inline with code formatting. Just paste it, select it in the post editor, and press Ctrl+K.
Two possibilities, first is that being a hardware thing, as micro SDHC have a little notch you can easily notice which matches another notch in the reader and that basically just enables it in read-only mode. That you can't change, just try to use another reader or you could put a piece of silicon or tape on notch, easiest thing is to use another reader.
Second possibility is that being a file permission issue, in which case you can do the following : In terminal, use these commands:
This will launch nautilus in root shell and bypass all permissions. OR:
sudo fdisk -l
This will give you a list of the drives on your system, figure out which drive it is in the list, easiest way is to look for the
blocksas this is the space. It will probably be
sudo chown -hR <your username> <the SDHC drive, /dev/sdb for example>
this will change ownership of the drive to you. OR:
sudo chmod -R 777 <the SDHC drive, /dev/sdb for example>
Though if you just execute the first command
sudo nautilusit will save you all this trouble, but you'll have to do it every time you use the SDHC.
If all of this doesn't work, use this command :
sudo mount --options remount,rw <the SDHC drive, /dev/sdb for example, find it using fdisk -l>
If there's anything you don't understand just comment.
Hmm. I know normal SD has one, and looking at images it's the *adapter* that has the notch. Not Mini or Micro SD.
Well, my class 10 Transcend 32GB Micro SDHC indeed has one, that's all I know.
Hmm. Can you edit the post to note that the adapter should also have a read-only notch?
Actually, the issue is in the read-only notch. But it's a notch of an adapter, not the microsd itself. Well, I'll try to stuck it.
Aha, so the adapter you're using is a micro SD to Normal SD, right? You might want to try to use a USB micro SDHC reader, they tend to have this problem less often. And before that, make sure the lock on the adapter isn't locked in (locked in is bottom state), as this is what causes the read-only mode. In USB readers, it's the micro SDHC notch is what sets it in place.
@JackMayerz I have tried all commands you mentioned above but none of them worked for unfortunately. the last command results says `mount: cannot remount block device /dev/sdb1 read-write, is write-protected` so what do you suggest for me !
Not able to get it try this login to root mode.. open terminal type
hdparm -r0 /dev/sdc
than your write protection bit or say ur read only bit will be set to ZERO and now you type
mount /media/ur_pen_drive_name(like mine is HSR)/ -o remount,rw
And that's it.... remember windows can't do this because there is a virus in your pen drive ok... now it doesn't any permission to be changed so if you find any .exe file not getting deleted from your pd just do the above two step and than you'll be able to delete it...
Physical write protection
For those who never used SD cards before, you have to move the LOCK switch to the unlocked position:
It is analogous for a micro SD adapter with a MicroSD inside: the dongle is on the adapter:
I downvoted because you simply copied this answer here, bumping an old question in the process. This is not OK. I didn't downvote you on RPi.SE because you seem to work on your rep there.
@DmitryGrigoryev thanks for feedback. Stack exchange separation into multiple websites is flawed as it creates duplicates like this, and there are not cross site duplicates. Images are the best answer possible to this question. Would you feel differently if someone else added two different analogous images there? :-)
That question on RPi.SE was answered in 2013, and nobody seemed to have problems finding the lock. I don't believe having those pictures which take a whole screen to scroll were necessary. Besides, you have already provided a link to this answer over there, wasn't that enough?
@DmitryGrigoryev the same applies to all answers on cross site duplicates :-)
this is 100 percent write answer. using ubuntu since 5 years now feeling like noob
While in the command window, you could see if the system objects to making the disk read-write. Suppose for example it is mounted as /dev/sdb1. Become root or use sudo:
mount -orw,remount /dev/sdb1
will either make the disk writable or give you an error message indicating why it can't.
I was just having the same problem and read in another post that Ubuntu somehow locks the SD once it's been improperly removed. Anyone who gets the "Destination is read-only" message check that the locking switch in the SD to MicroSD adapter is not in Lock mode, and if that's true, try again after logging out of Ubuntu and logging back in.
Worked for me in Ubuntu 16.04.
I too had this problem. I first noticed it when it wouldn't let me empty the bin. I searched on here for a solution and nothing I tried worked. Then, I noticed on the SD Adapter a little sliding tab which 'locks' the card. Slide that so that it isn't locked. Simple. Never noticed it. After hours of beating my head against a wall, it was a simple mecahnical solution.
Actually this was exactly the cause of my problems. I had to move the glider on SD adapter properly, my first try did not succeed.
The read-only glider on my SD adaptor is too easy to move, so when I insert the adaptor into slot, the glider moves and changes read-only status. I had to insert it very carefully and try it few times to succeed. Sometime the software problems are simply caused by poor hardware design or manufacturing.
I had the same issue. Try to reboot system with SD card inserted. After reboot my SD card surprisingly became writable.
Ran into same issue. used 2 cards, 2 adapters and system build in card reader.
Could using some ways mentioned in this forum write data to the card as root but got 'read-only' error in Nautilis.
Then formatted the cards using windows 8 (dual boot, same system) as FAT 32, now everything works fine.
[email protected]:~$ fdisk -l /dev/sdd Disk /dev/sdd: 1977 MB, 1977614336 bytes 64 heads, 63 sectors/track, 957 cylinders, total 3862528 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 Disk identifier: 0x00000000 Device Boot Start End Blocks Id System /dev/sdd1 135 3858623 1929244+ b W95 FAT32 [email protected]:~$ fdisk -l /dev/sdd Disk /dev/sdd: 32.9 GB, 32883343360 bytes 64 heads, 32 sectors/track, 31360 cylinders, total 64225280 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 Disk identifier: 0x000a65fd Device Boot Start End Blocks Id System /dev/sdd1 32 64225279 32112624 c W95 FAT32 (LBA)
Removed partition, and created new one with FAT using disk utility tool. Writing goes fine.
Reformatted using disk utility as master boot record (as done earlier) and recreated partition (FAT, as done earlier). Now it also works...
Strange... had the same issue with another card few months ago, did the same procedure and it also works.
Can't explain.. but thing that worked for me:
- Format card in windows