苹果电脑更改sd卡只读_sd卡反复变成只读解决办法

本文介绍了如何使用dosfsck工具检查和修复FAT文件系统的问题,包括无效的cluster编号、循环的档案cluster链、坏cluster、目录问题等。文章通过举例展示了使用dosfsck命令的细节,以及在遇到不同错误时的处理方式,但最终修复无效,可能需要重新格式化。
摘要由CSDN通过智能技术生成

首先推荐两个网页:

我们的相同之处就是用的fat文件系统,我的应用和第二个同志的一样,解决办法:移植一个修复工具dosfsck,其详细用法请参看:http://linux.about.com/library/cmd/blcmdl8_dosfsck.htm

FAT (dosfsck)

依次序检查以下:

FAT 中有无效的 cluster 编号,发现则改成 EOF。

档案 cluster 链有循环

有坏 cluster (读取时有错误),发现则把该 cluster 标记为坏 cluster,并由使用它的档案中移除。

有大量坏项目的目录,发现则可能要遗弃整个目录。

档案 . 和 .. 不是目录,发现则需要改名。

在根目录发现目录 . 和 ..,发现则需要遗弃。

有坏档案名称,发现则需要改名。

有重复目录项目,发现则需要改名或遗弃。

有目录的档案大小为非零,发现则需要设定为 0。

有目录 . 不指向父目录 (parent directory),发现则需要调节指标。

有目录 .. 不指向父目录的父目录,发现则需要调节指标。

档案的第一 cluster 编号无效,发现则需要设档案大小为 0。

档案有坏或未使用的 cluster,发现则需要折断档案。

档案 cluster 链长于档案大小栏所指定的大小,发现则需要折断档案。

两个或以上的档案使用同一个 cluster,发现则除一个档案外,其档案都需要被折断。如果被折断是一个已检查的目录,折断后需要重新开以整个档案系统检查工作。

档案 cluster 链短于档案大小栏所指定的大小,发现则需要折断档案。

cluster 被标记为已使用但未有一个档案使用,发现则需要未使用。

此外,亦会检查以下但不进行修复:

启动磁区 (boot sector) 有无效参数

非根目录没有 . 和 .. 两项目

请注意这句话:If -a and -r are absent, the file system is only checked, but not repaired.

推荐这样使用:

./dosfsck -arV -w /dev/sda (该命令类似于dos下的chkdsk)

结果修复无效(如果这个指令有效,建议可以在程序中整合dosfsck修复的代码),看了只能重新格掉了

david@raptor:/media$ fsck /dev/sdb1

fsck 1.40.2 (12-Jul-2007)

dosfsck 2.11, 12 Mar 2005, FAT32, LFN

FATs differ but appear to be intact. Use which FAT ?

1) Use first FAT

2) Use second FAT

? 1

Reclaimed 416900 unused clusters (1707622400 bytes).

Free cluster summary wrong (584604 vs. really 1001504)

1) Correct

2) Don't correct

? 1

Leaving file system unchanged.

/dev/sdb1: 0 files, 1/1001505 clusters

david@raptor:/media$ fsck /dev/sdb1

fsck 1.40.2 (12-Jul-2007)

dosfsck 2.11, 12 Mar 2005, FAT32, LFN

FATs differ but appear to be intact. Use which FAT ?

1) Use first FAT

2) Use second FAT

? 2

Reclaimed 418050 unused clusters (1712332800 bytes).

Free cluster summary wrong (584604 vs. really 1001504)

1) Correct

2) Don't correct

? 1

Leaving file system unchanged.

/dev/sdb1: 0 files, 1/1001505 clusters

david@raptor:/media$

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值