搜索
bottom↓
回复: 5

嵌入式Linux写的FAT格式文件在windows无法正常看到

[复制链接]

出0入0汤圆

发表于 2021-1-28 12:45:51 | 显示全部楼层 |阅读模式
使用嵌入式linux系统进行数据记录,SD卡格式为vfat,有一张卡出现奇怪的现象,在linux下能正常查看到新记录的文件,但是windows下无法看到。
初步分析,SD卡文件系统异常,在windows下chkdsk SD卡,会提示需要修复。我在linux系统中,每次挂载文件系统的时候都会用fsckf.vfat自动检查修复文件系统。
是由于linux和windows系统间fat文件 系统的差异导致的问题吗?有没有办法避免呢?

出0入0汤圆

 楼主| 发表于 2021-1-28 12:46:32 | 显示全部楼层
在windows下使用winhex可以看到新记录的文件

出215入1068汤圆

发表于 2021-1-28 13:01:48 来自手机 | 显示全部楼层
本帖最后由 dukelec 于 2021-1-28 13:04 编辑

linux 寫了數據 sync 了沒?


遇到過:fat 格式 U 盤在 linux 上可以讀寫,在 Windows 上不顯盤符、不報錯、也無法格式化,在 linux 上格式化再試也不行。換個 Windows 電腦卻又沒問題。

出0入0汤圆

 楼主| 发表于 2021-1-28 13:17:52 | 显示全部楼层
dukelec 发表于 2021-1-28 13:01
linux 寫了數據 sync 了沒?

记录的时候会定期调用sync函数的。我们会在写文件的时候进行SD卡插拔实验,文件系统肯定扛不住的,只是linux下和windows下表现不一致,这个不知道有没有办法搞成相同的

出215入1068汤圆

发表于 2021-1-28 13:39:49 来自手机 | 显示全部楼层
本帖最后由 dukelec 于 2021-1-28 13:42 编辑
lss1330 发表于 2021-1-28 13:17
记录的时候会定期调用sync函数的。我们会在写文件的时候进行SD卡插拔实验,文件系统肯定扛不住的,只是li ...


寫數據立即調用 sync,定時調用可能正好寫了數據沒 sync 就拔了卡

或者以 sync 方式掛載,就不用自己調用 sync 了

linux 魯棒性比 windows 好很多,我曾經買專輯內附贈品 U 盤,壞塊非常多,在 Windows 下使用,文件丟失特別嚴重,空盤只存了兩張圖片,安全退出再插入,圖片就打不開了。同一個 U 盤,全盤格式化成 ext4 格式在 linux 下使用,竟然一切正常,存了很多內容也不丟數據。

上上樓說的 windows 不認盤的問題,最終是在 linux 下,用 dd 命令把全盤寫 0,再重新分區、格式化,問題解決。

沒可能把 linux 的魯棒性降低到和 Windows 一樣。天下沒有完全相同的樹葉,上上樓的例子,同樣是 Windows 表現也不一致。

出0入0汤圆

 楼主| 发表于 2021-1-28 15:52:16 | 显示全部楼层
dukelec 发表于 2021-1-28 13:39
寫數據立即調用 sync,定時調用可能正好寫了數據沒 sync 就拔了卡

或者以 sync 方式掛載,就不用自己調 ...

以同步的方式挂载的话,记录的性能可能会被降低也,有什么方式可以保持记录性能不?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子论坛 -- 东莞阿莫电子网站 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2022-10-7 20:23

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表