chenglei

chenglei

0个粉丝

13

问答

0

专栏

0

资料

chenglei  发布于  2018-08-10 20:29:34
采纳率 0%
13个问答
3097

SD卡长时间读写变为只读

 

sd卡使用fat32文件系统,进行连续录像,一段时间后,突然变为只读了,errno返回30

使用fsck或者重新格式化sd卡后变为正常。

我想知道,sd卡突然变为只读的根本原因是什么呢?会是硬件问题吗?

这类问题在软件上如何避免呢?

有没有大侠遇到过此类问题啊?

谢谢。
我来回答
回答18个
时间排序
认可量排序

ezreal_cs

1个粉丝

2

问答

7

专栏

1

资料

ezreal_cs 2018-08-11 11:29:38
认可0
上次退出没有正常退出,重新格式化一下就行了。
在应用层设计存储结构来避免了。之所以会变为只读,是因为fat32的簇链出错, fat32里的文件是用簇链的方式来描述的,修改文件大小或删除文件, 会动态的修改簇链, 如果这时候拔掉sd卡或者下电,就会导致簇链出错, 然后变为只读~~~

Azoni

0个粉丝

1

问答

0

专栏

0

资料

Azoni 2018-08-11 20:37:06
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=103205&ptid=51647]ezreal_cs 发表于 2018-8-11 11:29[/url]
上次退出没有正常退出,重新格式化一下就行了。
在应用层设计存储结构来避免了。之所以会变为只读,是因为 ...[/quote]

请教下,应用层的存储结构怎么个设计法才能避免这种只读问题呢

chenglei

0个粉丝

13

问答

0

专栏

0

资料

chenglei 2018-08-13 09:45:30
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=103205&ptid=51647]ezreal_cs 发表于 2018-8-11 11:29[/url]
上次退出没有正常退出,重新格式化一下就行了。
在应用层设计存储结构来避免了。之所以会变为只读,是因为 ...[/quote]

您好,

  感谢您的解答。

  不过,我这边的SD卡没有掉点或者突然拔掉。就是正常的读写过程中突然变为只读了。

qn1533003427

0个粉丝

1

问答

0

专栏

0

资料

qn1533003427 2018-08-14 14:06:04
认可0
是否有些文件删除不了?

chenglei

0个粉丝

13

问答

0

专栏

0

资料

chenglei 2018-08-14 17:40:48
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=103353&ptid=51647]qn1533003427 发表于 2018-8-14 14:06[/url]
是否有些文件删除不了?[/quote]

是的。有些文件无法删除。有些文件夹无法访问。

chenglei

0个粉丝

13

问答

0

专栏

0

资料

chenglei 2018-08-14 17:41:36
认可0
如果降低SD卡的工作时钟,比如 SDIO0 工作时钟选择最低的。会不会有作用呢?

qn1533003427

0个粉丝

1

问答

0

专栏

0

资料

qn1533003427 2018-08-15 10:01:35
认可0
能复现吗?那天要是有复现的设备,接上串口线,或者telnet让我看下

chenglei

0个粉丝

13

问答

0

专栏

0

资料

chenglei 2018-08-16 11:27:13
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=103421&ptid=51647]qn1533003427 发表于 2018-8-15 10:01[/url]
能复现吗?那天要是有复现的设备,接上串口线,或者telnet让我看下[/quote]

可以复现,您需要看哪些信息?我复现后贴上来。

chenglei

0个粉丝

13

问答

0

专栏

0

资料

chenglei 2018-08-17 12:55:50
认可0
同时 删除文件和创建文件同时进行会导致这个问题么

qn1533003427

0个粉丝

1

问答

0

专栏

0

资料

qn1533003427 2018-08-18 10:16:12
认可0
加我QQ 2746318932  出现问题的时候一起看下

chenglei

0个粉丝

13

问答

0

专栏

0

资料

chenglei 2018-08-18 14:12:19
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=103755&ptid=51647]qn1533003427 发表于 2018-8-18 10:16[/url]
加我QQ 2746318932  出现问题的时候一起看下[/quote]

已经加您。

我这边正在复现 。

qn1513131564

0个粉丝

13

问答

0

专栏

3

资料

qn1513131564 2019-05-29 15:08:12
认可0
SD卡的速度不够,更换高速的就可以。我原来出现过你这种情况。

微信用户

1个粉丝

87

问答

0

专栏

3

资料

微信用户 2019-05-30 14:38:14
认可0
什么等级的sd卡那?

jipd

0个粉丝

14

问答

0

专栏

0

资料

jipd 2018-08-11 10:32:13
认可0
顶起来。。。

wenzi

0个粉丝

2

问答

0

专栏

0

资料

wenzi 2018-08-14 21:44:12
认可0
顶一下:lol

fpnbt

0个粉丝

6

问答

0

专栏

0

资料

fpnbt 2018-08-19 10:03:18
认可0
:D:D:D:D:D

qn1514448727

0个粉丝

11

问答

0

专栏

0

资料

qn1514448727 2020-11-18 18:02:38
认可0
挂载SD卡时,一定要加上-o nosync参数(不然会默认sync方式),这样就能够确保文件直接写入卡里面,而不是缓存在linux的vfs里面,会少很多文件系统错误的机会。缺点是读写速度受卡本身的影响,会慢一些。
我之前试过一批设备,制度情况偶有发生,通过识别到只读之后,自动格式化才正常,但是这种治标不治本的方法始终是一个缺陷,改参数会好很多。
采用sync方式,很容易复现SD卡错误,用读卡器插在电脑就会弹出磁盘错误,是否修复的提示,错误多了或严重了就会只读。
如果在板子上一旦自动remount为只读,可以采用fsck.vfat命令自动修复错误,我把这个命令放在了rcS里面,启动时先检查并修复卡的错误,只读错误也是可以通过修复来最大限度地挽救数据。

Tracy_9216

2个粉丝

6

问答

79

专栏

29

资料

Tracy_9216 2020-11-20 13:47:11
认可0

fat32格式的是容易造成这个现象,可以在程序里定期检测一下,如果变只读了,卸载之后修复一下,再挂载

或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区