Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2320428
  • 博文数量: 473
  • 博客积分: 12252
  • 博客等级: 上将
  • 技术积分: 4307
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-12 10:02
文章分类

全部博文(473)

文章存档

2012年(8)

2011年(63)

2010年(73)

2009年(231)

2008年(98)

分类: 服务器与存储

2009-06-01 15:01:30

首先推荐两个网页:
 
我们的相同之处就是用的fat文件系统,我的应用和第二个同志的一样,解决办法:移植一个修复工具dosfsck,其详细用法请参看:
dosfsck的工作机制如下(转自:):

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$
阅读(4692) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~