MicroSD卡设置为只读状态。如何在上面写数据?


29

我的笔记本电脑中装有MicroSD读卡器。当我将MicroSD存储卡插入其中时,我无法在其上写入任何数据-它是只读的。当我尝试在root用户下执行此操作时,也会发生相同的情况。而且我无法更改其权限策略。所有microSD卡(我已测试2张卡)都会发生此问题。我在Ubuntu 12.04 LTS上遇到过它,现在在Ubuntu 12.10上遇到了问题,仍然存在。当我尝试在手机中插入这样的“只读”卡时,一切正常,我可以在其中写入数据。因此,有人可以告诉我,如何将数据写入卡中?

UPD:这是fdisk -l输出:

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

卡的文件系统为msdos。对我来说很奇怪。

UPD2:我在卡适配器上发现了一个小的“锁定”开关,事实证明,当我将其插入笔记本时,它会打开。也许,我必须找到一些胶水或东西才能使开关卡住...

UPD3:我附近没有胶水,所以我决定购买另一个读卡器。


1
问题可能是文件系统(它可能被格式化为linux没有写支持的文件系统),可以将“ sudo fdisk -l”的输出粘贴到pastebin(paste.ubuntu.com)上并给我们链接?
山姆

@Sam fdisk -l应该足够小以内联代码格式。只需粘贴它,在帖子编辑器中选择它,然后按Ctrl + K。
ζ--

@ObsessiveSSo,很好,很高兴知道,我只是从这里问ubuntu开始。谢谢!
山姆

给自己买一个USB读卡器或一个microsd USB适配器(它很便宜,如50美分)。一些SD卡制造商免费提供此类适配器。
ipse lute

Answers:


31

两种可能性是,首先是作为硬件,因为micro SDHC有一个小槽口,您可以很容易地注意到它与读取器中的另一个槽口匹配,并且基本上只是以只读模式启用它。您无法更改,只需尝试使用另一个读取器,或者可以在槽口上放一块硅片或胶带,最简单的方法就是使用另一个读取器。

第二种可能性是文件权限问题,在这种情况下,您可以执行以下操作:在终端中,使用以下命令:

gksudo nautilus

这将在根shell中启动nautilus并绕过所有权限。要么:

sudo fdisk -l

这将为您提供系统上驱动器的列表,找出该驱动器在列表中,最简单的方法是查找,blocks因为这是空间。可能是/dev/sdb/dev/sdc,然后

sudo chown -hR <your username> <the SDHC drive, /dev/sdb for example>

这将更改驱动器的所有权。要么:

sudo chmod -R 777 <the SDHC drive, /dev/sdb for example>

尽管仅执行第一个命令sudo nautilus就可以避免所有麻烦,但是每次使用SDHC时都必须这样做。

如果所有这些都不起作用,请使用以下命令:

sudo mount --options remount,rw <the SDHC drive, /dev/sdb for example, find it using fdisk -l>

如果您不了解任何内容,请发表评论。


3
Micro SDHC不应具有只读的缺口IIRC。
ζ--

2
真?微?还是我将其与Mini / fullsize混合使用?
ζ--

1
嗯 我知道普通的SD卡只有一个,而在图像上看到的是带有缺口的适配器。不是Mini或Micro SD。
ζ--

2
好吧,我的Class 10 Transcend 32GB Micro SDHC确实有一个,这就是我所知道的。
杰克·梅耶兹

5
@JackMayerz我已经尝试了您上面提到的所有命令,但是不幸的是,它们都没有起作用。最后的命令结果表明,mount: cannot remount block device /dev/sdb1 read-write, is write-protected那么您对我有什么建议!
Waqas

12

无法获取它,请尝试以root模式登录。.打开终端类型

hdparm -r0 /dev/sdc

比您的写保护位或您的只读位将设置为零,现在您键入

mount /media/ur_pen_drive_name(like mine is HSR)/ -o remount,rw

就是这样。。。。。。。。。。。。。。。。。。。。的的的pd只需执行上述两个步骤,然后您就可以删除它...


11

物理写保护

对于以前从未使用过SD卡的用户,必须将LOCK开关移至解锁位置:

图像归因

与内部带有MicroSD的Micro SD适配器类似:加密狗在适配器上:



1
我之所以投票,是因为您只是在这里复制了这个答案,在此过程中碰到了一个老问题。这不行。我没有在RPi.SE上投票给您,因为您似乎在那儿工作。
德米特里·格里戈里耶夫

1
@DmitryGrigoryev感谢您的反馈。将堆栈交换分离到多个网站是有缺陷的,因为它会创建这样的重复项,并且没有跨站点重复项。图片是对这个问题的最佳答案。如果其他人在那里添加了两个不同的类似图像,您会有不同的感觉吗?:-)
Ciro Santilli新疆改造中心法轮功六四事件

1
@DmitryGrigoryev同样适用于跨站点重复的所有答案:-)
Ciro Santilli新疆改造中心法轮功六四事件

1
这是100%的书面答案。自5年以来一直在使用ubuntu,现在感觉就像是
菜鸟

5

在命令窗口中,您可以看到系统是否反对将磁盘读写。例如,假设将其安装为/ dev / sdb1。成为root或使用sudo:

mount -orw,remount /dev/sdb1 

将使磁盘可写,或者给您显示一条错误消息,说明为什么不能。


$ sudo mount -orw,remount /dev/sdf1没有给我任何错误消息,但我仍然无法写入。
亚伦·弗兰克

4

我只是遇到了同样的问题,并且在另一篇文章中读到,如果不正确地删除SD,Ubuntu会以某种方式锁定SD。收到“目标为只读”消息的任何人,请检查SD到MicroSD适配器中的锁定开关是否处于锁定模式,如果是这样,请在注销Ubuntu并重新登录后重试。

在Ubuntu 16.04中为我工作。


Angstrem在第二次更新UPD2中
Dimitri Podborski

2

我也有这个问题。当它不允许我清空垃圾箱时,我首先注意到它。我在这里搜索解决方案,但没有任何尝试。然后,我在SD适配器上注意到一个小的滑动卡舌,可以“锁定”卡。滑动它,使其不被锁定。简单。从来没有注意到它。经过数小时将我的头撞在墙上之后,这是一个简单的机械解决方案。


实际上,这正是我遇到问题的原因。我必须正确移动SD适配器上的滑翔机,但第一次尝试没有成功。
2015年

SD适配器上的只读滑行器太容易移动,因此,当我将适配器插入插槽时,滑行器会移动并更改只读状态。我必须非常小心地插入它,并尝试几次才能成功。有时,软件问题仅仅是由不良的硬件设计或制造引起的。
Jan Vlcinsky 2015年

2

我遇到过同样的问题。尝试在插入SD卡的情况下重启系统。重新启动后,我的SD卡意外地可写。


我凝视着这个答案有一会儿,想着“不,那不可能”,但随后它解决了问题。如果您一直在通过此页面寻找答案,则没有理由不尝试此答案。
Humdinger

0

遇到同样的问题。使用了2个卡,2个适配器和系统内置的读卡器。

可以使用本论坛中提到的某些方法以root用户身份将数据写入卡,但在Nautilis中出现“只读”错误。

然后使用Windows 8(双启动,同一系统)将文件格式化为FAT 32,现在一切正常。

fdisk输出:

ubx@UB1-001:~$ 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

ubx@UB1-001:~$ 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)

删除分区,并使用磁盘实用程序工具使用FAT创建新分区。写作很好。

使用磁盘实用程序将其重新格式化为主引导记录(如前所述),并重新创建了分区(FAT,如前所述)。现在它也可以...

奇怪...几个月前另一张卡出现了相同的问题,执行了相同的步骤,并且也有效。

无法解释..但对我有用的东西:

  • 在Windows中格式化卡

0

您必须使用Gnome Disk Utility并重新格式化所有数据,并将它们设置为零。在那之后它将完美地工作。那里有一些专有的垃圾会直接从包装中挡出来。


0

仅供参考,我有一个microSD卡,该卡因其具有OPs症状的原始Samsung SD适配器而发生故障(只读)。最后一次掷出骰子,将其放入其他SD适配器中,这次来自SanDisk使其再次运行。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.