CDlinux 解决磁盘数据故障一例

一台装 Windows XP 的 Asus 1005HA 上网本,启动 Windows 系统十多分钟,打开磁盘操作等数分钟,D盘(FAT32分区)属性显示0字节。D盘上有重要数据。

用 CDlinux 0.9.6.1 U盘系统加 CDL_AMOUNT=no (不自动挂载分区)参数启动上网本。手动挂载D盘(/dev/sda5),执行 df 命令,D盘显示 I/O 错误。但是 cd 命令进入D盘可以查看到数据,用 cp 命令将重要数据通过网络拷到其它机器备份。

卸载掉D盘,用 gparted 程序修复错误不行;fdisk 命令下删除此分区,重建vfat分区重启后,用mkfs.vfat 格式化此分区不行;

进入 Windows 下修复分区错误不行(据一位数据修复经验丰富的朋友曾讲,重要数据出错后不能对磁盘进行任何写入操作,包括Windows下的磁盘错误检测与修复程序!);

重新进入 CDlinux 下,用mkfs.ntfs 命令把D盘格式化 NTFS 格式成功,格式化时显示的是首先将D盘写零初始化(Initializing device with zeroes)。把备份的数据拷回D盘。

重新启动进入 Windows 下,用 Windows 自带的磁盘检测与修复程序对D盘进入检查没有问题(我曾经碰到过用 linux 下的磁盘查错程序 fsck 纠正 windows 下的分区把windows下正常的文件报告为出错的情况,可能跟我挂载磁盘的参数有关 http://www.learndiary.com/home/space-1-do-blog-id-3134.html 。所以虽然是在Linux下成功创建了 NTFS 分区并拷贝了数据,我仍然觉得在 Windows 下有必要重新再检测一下)。

删除备份在其他机器上的文件。将电脑交到朋友的手上时给他说电脑工作时不要剧烈振动,常备份重要数据,如备份到台式机(个人认为台式机比常常移动的上网本之类出故障的几率小一些)。

CDlinux 在这里起的作用是确认了D盘数据错误、拷贝出了其中的数据、格式化并创建了 NTFS 分区。虽然我觉得 Windows 的问题最好是用 Windows 的工具尤其是 Windows 系统自带的工具,但是在保证数据安全的情况下,用 Linux 系统来维护 Windows 系统也是一个可选项。如果你在碰到此类的情况用 Windows 的方法不能解决的话,在保证数据安全的情况下(不要写操作是基本要求吧)可以试一试 Linux 系统来维护。

One thought on “CDlinux 解决磁盘数据故障一例”

  1. 竟然忘了在 mkfs.ntfs 格式化 ntfs 分区之前用 fdisk 把分区类型设为NTFS的,即分区类型为7(原为fat32分区的b)。虽然不知道这分区类型设错了究竟有什么妨害,而且,我发现好像用 fdisk 改变已有分区的类型Id不会对现有分区的数据造成损害。不过这些都是没有认真研究的。还是要把朋友的电脑里的那个分区类型改过来才行。改之前备份好这个分区的数据就是了。

Comments are closed.