我的Raspberry Pi正常运行了两个月。然后,/usr/bin中的某些文件损坏了,重新启动时出现了很多错误。

我试图写一个新的映像,但是dd会阻止并且不执行任何操作。

sudo dd if=~/2013-02-09-wheezy-raspbian.img of=/dev/mmcblk0 bs=4M


我注意到我的SD卡未列出为兼容的,所以一周前我从一个支持的新SD卡开始,现在又发生了同样的事情。

这些卡似乎是卡在只读状态,并且ddfdisk没有影响。

ssh停止工作后,我确实拉了几次电源线以重新启动-我在没有显示器和键盘的情况下运行了它。

是否有可能通过拉扯电源线来永久损坏SD卡?

我已阅读了有关损坏的SD卡的信息,并希望深入了解该问题,但是我目前的担心是,每次尝试都需要购买一张新的SD卡。对于其他人来说,他们似乎可以通过写一个新映像来重新开始。

还有什么我可以尝试使SD卡重新工作的吗?

如果我尝试用相机格式化存储卡,其中显示“格式化错误”。

当我插入SD卡时,dmesg显示

...
[52254.614980] end_request: I/O error, dev mmcblk0, sector 1696056
[52254.614983] end_request: I/O error, dev mmcblk0, sector 1696064
[52254.614987] end_request: I/O error, dev mmcblk0, sector 1696072
[52254.615058] Aborting journal on device mmcblk0p2-8.
...
[52666.031183] journal commit I/O error
[52666.031186] journal commit I/O error
....
[52666.031220] journal commit I/O error
[52666.031227] journal commit I/O error
[52666.083902] EXT4-fs error (device mmcblk0p2): ext4_put_super:819:     
Couldn't clean up the journal
[52666.083910] EXT4-fs (mmcblk0p2): Remounting filesystem read-only


更新:我已经设法将新的图像写入第二张SD卡,但是第一张卡(Kingston 8 GB 4类,不在受支持的列表中)仍然损坏。因为只有一张看似损坏的卡,所以我并不担心它会继续发生。我想这是一次性的。

我的Raspberry Pi现在很少启动了。我检查了Raspberry Pi的电压,它的电压很低,因此我怀疑这是造成我麻烦的原因。我已经订购了新的电源。但是,我不知道为什么Raspberry Pi这么久才能工作。

评论

您能否确认当您尝试向损坏的卡中写入内容时,是否正在使用其他装有SD卡读卡器且对其他卡工作正常的计算机?您能提供用来写入卡的dd命令吗?您能否检查dmesg以查看您的卡是否存在任何I / O错误?

如果您要切断Pi的电源,请确保其突然且不缓慢。缓慢拔出电源线可能会并且最终会损坏SD卡。我强烈建议您使用电源开关来获取电源。一旦开始使用电源开关,而不仅仅是从Pi上拔下电源线,我就从未损坏过SD卡。另外,您对电源的选择也很重要。确保其至少为1000 mA,并具有一致的输出。我也不会从您用来将Pi连接到设备的USB集线器为Pi供电。

遇到了同样的问题,绝对奇怪的腐败使胡扯引发了问题。获得专用的Raspberry Pi认证电源和新的SD卡后,我所有的问题都消除了。旧的SD卡只能在找到Windows机器并运行SD关联中的免费低级格式化程序后才能再次使用。他们指出,没有块级格式化程序可以产生完全修复有问题的SD卡所需的真正的低级格式化。 YMYV

我有三台Raspberry Pi,并且有相同的问题。我现在有两个SD卡已损坏且为只读状态,并且使用fsck,fdisk或Linux或Windows中的任何其他实用程序都无法解决问题。一时兴起,我决定将其中一张存储卡放入三星相机中,然后尝试对其进行格式化。令我惊讶和高兴的是,相机中的格式化功能恢复了存储卡,并且可以再次使用。不幸的是,我无法用此卡恢复另一张卡,因为它是标准尺寸的SD卡,而不是带有适配器的MicroSD,并且相机具有MicroSD插槽。相机是三星ST72,仅供参考。

#1 楼

问题和潜在损坏

是的,通过拉出电线来关闭Raspberry Pi可能会造成损坏。实际上,有一个答案可以准确地详细说明这个问题。此问题并非特定于Raspberry Pi。在没有警告操作系统的情况下拔下电源线可能会导致问题-我用这种方式损坏了Windows内核。

如何修复


Mac

将SD卡插入Mac。然后,打开“磁盘工具”并删除您的分区。然后还原。最后,重新成像卡。如果您需要更多帮助,请参阅本教程。


Windows

使用Win32 Disk Imager软件。再次,删除分区,将其还原,然后对卡进行重新映像。


Linux

要将SD重置为可读写,请在其中键入hdparm -r0 /dev/xxx终点站。您可能必须先删除分区。

如何避免

从现在开始,您永远不要拔出Raspberry Pi来关闭它。而是转到控制台并键入:

sudo shutdown -h now


,或者,如果您使用的是startx,请单击注销按钮,然后选择关闭。

评论


据我所知,拔出电源不可能损坏SD卡本身。但是,可能会损坏卡上的文件系统。

– Krzysztof Adamski
13年4月15日在17:42

大多数现代文件系统都是在整理文件系统,不会因这种方式断电而损坏(尽管它们可能会丢失最新更改)。但是,存储卡倾向于向内核说谎已同步的内容。这会导致文件系统损坏。

– DonGar
13年5月3日在21:04



我的SD卡突然断电,无法进行大量擦拭和重新成像,似乎有坏扇区会使重新安装失败。我必须买一张新卡。所以是的,您可能会损坏卡本身。

– Yamikuronue
13年7月9日在15:17

关闭pi的另一种较短的方法是“ sudo halt”。

–马修
13年8月10日在17:37

在Windows和Mac OS上重新格式化SD卡的一种更好的方法是使用SD Association的SD Formatter。这是您应该硬格式化卡的官方方式。

–scruss
15年6月22日在22:27

#2 楼

问题在于,由于Raspberry Pi被挂起,您无法进入控制台,SSH可以部分起作用,但是不接受密码,并且Adafruit的WebIDE被挂起,并且不接受输入。别无选择,只能拔掉插头。大约有25%的时间可以工作,但是不可避免的是文件系统最终会损坏。即使启动加载程序将您引导到内核,它也会被挂起,并且您无法键入任何内容来使该卡失效,这会变得更糟。重新成像意味着丢失所有工作。我们绝对需要更好的解决方案。

#3 楼

您可以使用“ hdparm -r0 / dev / xxx”将其重置为读写状态。我个人必须删除分区并重新插入sdcard才能使用dd将新映像复制到该卡上。

评论


我试过了,但是dd仍然阻塞。我认为卡必须坏了。

–托马斯·林恩
13年4月16日在23:06

#4 楼

有一个更好的解决方案-只需将卡放入连接到另一台计算机的读卡器中,然后从该计算机运行fsck即可[然后希望它能工作!]。当然,真正的问题是必须首先运行fsck-通常可以通过适当地关闭机器而不是拉动动力来避免此问题,而不管它是否无头。

#5 楼

dd在SD卡上反复失败后,我使用Windows 7机器删除了分区并将其重新格式化为FAT32。只有这样dd才能给我一个有效的Raspberry Pi映像。

现在,我经常在dd(或dcfldd)之前运行以下命令,生成一个新映像:

time dcfldd if=/dev/zero of=/dev/sdc statusinterval=1 sizeprobe=of


提示/dev/zero的消息人士确实指出,该过程可能会缩短卡的寿命。