CRC问题一般有三种可能
1、你的硬盘出现坏道
2、你的硬盘数据线受损
3、还可能是主板和内存的问题

硬盘坏道的表现
硬盘使用久了就可能出现各种各样的问题,而硬盘“坏道”便是这其中最常见的问题。硬盘出现坏道除了硬盘本身质量以及老化的原因外,主要是平时在使用上不能善待硬盘,比如内存太少以致应用软件对硬盘频繁访问,对硬盘过分频繁地整理碎片,不适当的超频,电源质量不好,温度过高,防尘不良,震动等。
硬盘坏道分为逻辑坏道和物理坏道两种,前者为软坏道,通常为软件操作或使用不当造成的,可用软件修复;后者为真正的物理性坏道,它表明你的硬盘磁道上产生了物理损伤,只能通过更改硬盘分区或扇区的使用情况来解决。如果你的硬盘一旦出现下列这些现象时,你就该注意硬盘是否已经出现了坏道:
(1)在读取某一文件或运行某一程序时,硬盘反复读盘且出错,提示文件损坏等信息,或者要经过很长时间才能成功;有时甚至会出现蓝屏等;
(2)硬盘声音突然由原来正常的摩擦音变成了怪音;
(3)在排除病毒感染的情况下系统无法正常启动,出现“Sector not found”或“General error in reading drive C”等提示信息;
(4)FORMAT硬盘时,到某一进度停止不前,最后报错,无法完成;
(5)每次系统开机都会自动运行Scandisk扫描磁盘错误;
(6)对硬盘执行FDISK时,到某一进度会反复进进退退;
(7)启动时不能通过硬盘引导系统,用软盘启动后可以转到硬盘盘符,但无法进入,用SYS命令传导系统也不能成功。这种情况很有可能是硬盘的引导扇区出了问题。
如果出现上述错误,你就需要加倍小心,这说明你的硬盘已经出现坏道了!
硬盘坏道的修复
1.修复逻辑坏道
首先从最简单的方法入手。借助Windows下的磁盘扫描工具,在资源管理器中选中盘符后单击鼠标右键,在弹出的驱动器属性窗口中依次选择(如图1) (图)“工具→开始检查”,将扫描类型设定为完全扫描,并选择自动修复错误,然后点击开始,扫描时间会因磁盘容量及扫描选项的不同而有所差异(如图2) (图)。
如果逻辑坏道存在于系统区导致无法正常启动,我们可以使用Windows 98/Me的启动盘,在DOS提示符下键入:Scandisk 盘符,按回车,一旦发现坏道,程序会提示你是否要Fix it(修复),选择Yes开始修复,许多因系统区出现逻辑坏道无法正常启动Windows的问题一般都可以用此方法解决。
因为Windows 98/Me在很大程度上只是自动修复逻辑坏道,而不能自动修复物理坏道,所以,事实上第1种方法往往不能奏效。如果碰见物理坏道我们应该怎么办呢?
2.用Scandisk检查物理坏道
对于物理坏道Scandisk就无能为力了,它只能将其标记为坏道以后不再对这块区域进行读写操作,物理坏道具有“传染性”向周边扩散,导致存储于坏道附近的数据也处于危险境地。
用Scandisk时在查到坏道时停止,注意观察Scandisk停止时会数值,如22%,假设硬盘总容量为2GB,2GB×22%=0.44GB,硬盘出现坏道的起始位置大致为440MB处,由于硬盘坏道易向周边扩散,所以必须留足够的缓冲区,将硬盘第一个分区容量设定为400MB,其余1.6GB按 200MB为单位分为8个区,使用Scandisk检查所有分区,将无法通过Scandisk检测的分区删除或隐藏,以确保系统不再读写这些区域。其余相邻的分区可合并后使用。分区、隐藏、删除、合并等操作可使用图形化界面的PartitionMagic或DiskMan等工具软件进行。
3.用软件隐藏物理坏道
用PartitionMagic5.0/6.0对硬盘进行处理。PartitionMagic可以在不破坏数据的情况下对硬盘重新分区、动态改变分区大小、改变分区的文件格式、隐藏或显示已有分区等等。将PartitionMagic5.0/6.0的DOS版拷在软盘上,用Windows 98/Me启动盘引导系统,运行软盘上的PQMAGIC.EXE。
然后进行扫描硬盘,可以直接用PartitionMagic中Operations菜单下的“check”命令来完成,标记了坏簇后,可以尝试着对它进行重新测试,方法是在Operations菜单下选择“Advanced/badSector Retest”;把坏簇分成一个(或几个)区后,再通过HidePartition菜单项把含有坏道的分区隐藏,以免在Windows 98/Me中误操作。
特别提示:如果没有经过格式化而直接将有坏道的分区隐藏的话,那么该分区的后续分区将由于驱动器盘符的变化而导致其中的一些与盘符有关的程序无法正确运行。解决的办法是利用Tools菜单下的DriveMapper菜单项,它会自动地收集快捷方式和注册表内的相关信息,立即更新应用程序中的驱动器盘符参数,以确保程序的正常运行。
4.修复硬盘0扇区坏道
对于硬盘0扇区损坏的情况,虽然比较棘手,但也不是无可救药,我们在这里给大家介绍两种方法。
第一种方法:我们借用DiskMan这个软件来修复。具体方法如下:
①在纯DOS模式下运行DiskMan,在“硬盘”菜单中选择驱动器符号,这时主界面中显示 该硬盘的分区格式为FAT32,起始柱面0,起始磁头1,总容量为2GB;
②然后依次进入“工具→参数修改”(或按F11),在弹出的修改分区对话框中,将起始柱面的值“0”改为“1”;
③按确定退回DM主界面并按F8保存修改结果。修改后需要重新格式化硬盘。

第二种方法:我们用部分人比较熟悉的Pctools9.0软件中的DE工具。具体方法如下:
①用Windows 98/Me启动盘启动,运行Pctools9.0目录下的DE.EXE,先进入Options菜单,选Configuration(配置),按空格去掉 Read Only(只读)前面的钩(按Tab键切换),保存退出;
②接着选主菜单Select(选择)中的Drive(驱动器);
③进去后在Drive type(驱动器类型)项选Physical(物理的),按空格选定,再按Tall键切换到Drives项,选中 Hard disk(硬盘),然后选 OK回车;
④之后回到主菜单,打开Select菜单,这时会出现Partition Table(分区表),选中并进入,之后出现硬盘分区表信息;
⑤如果硬盘有两个分区,l分区就是C盘,该分区是从硬盘的0柱面开始的,那么,将1分区的Beginning Cylinder(起始柱面)的0改成1就可以了;
⑥保存后退出;
⑦重新启动,按Delete键进入COMS设置,选“IDE AUTO DETECT”,可以看到CYLS比原来减少了1,保存退出,重新分区,格式化,至此大功告成。
提示:在修改之前先将硬盘上的重要资料备份出来,而且Pctools9.0不能在用FAT32分区的硬盘和Windows下运行,但可以在FAT16硬盘中运行。修复后一定要在CMOS中重新侦测硬盘,再分区和格式化,因为只有对硬盘作格式化后才会把分区表的信息写入1扇区(现在作为0扇区了)。
5.低级格式化修复坏道
上述所有办法都不能奏效,又不甘心硬盘就此报废,你就可以考虑使用低级格式化处理硬盘故障。但低级格式化会重新进行划分磁道和扇区、标注地址信息、设置交叉因子等操作,需要长时间读写硬盘,每使用一次就会对硬盘造成剧烈磨损,对于已经存在物理坏道的硬盘更是雪上加霜,实践证明低格将加速存在物理坏道的硬盘报废,而对于逻辑坏道,则根本无须使用低格程序作为修复手段。另外低格将彻底擦除硬盘中的所有数据,这一过程是不可逆的。因此低格只能在万不得已的情况下使用,低格后的硬盘要使用Format命令进行高级格式化后才能使用

1.利用恢复记录
  想要修复CRC是有条件的,必须是此RAR压缩包中有恢复记录,而此恢复记录是RAR压缩包被压缩时的可选项。

而WinRAR压缩时默认是不放置恢复记录的,如果提供的是这样的RAR压缩包,那么用户自己想要修复CRC错误是不可能的。

2.釜底抽薪
  如果RAR压缩包中的文件是那种即使文件有缺失仍能正常或较为正常地使用的(其实大多数的文件对部分数据损坏都不是非常敏感的),那便可以使出我们的终极杀招:釜底抽薪法!

其原理就是让RAR压缩包内损坏的文件解压缩出来,不理会WinRAR的警告,能解压多少就解压多少。解压缩软件还是用WinRAR,不过要做小小的设置。

在右键点击解压缩文件后跳出的窗口里,把“保留被损坏的文件”复选框选中,点击确定开始解压缩。不要理会解压缩出错的信息,解压缩结束之后你会发现损坏的文件被解压出来了。经过这样解压出来的损坏文件能正常使用的几率还是非常高的。

做好保险工作
  1.做好恢复记录
  原始RAR压缩包在压缩时,如果选择放置恢复记录,这样用户下载后即使CRC出错也有自己修复的机会!

2.采取分卷压缩
  采取分卷压缩的方法便可较大地减少因为出现不可恢复的错误带来的损失。

3.老文件也加恢复记录
  有人也许会问,新压缩的RAR压缩包可以加入恢复记录,那么已经压缩过的RAR包有没有办法也加上恢复记录呢?给已经压缩好的RAR压缩包加上恢复纪录是有办法的。

只需要打开压缩包,在“命令”菜单中选择“保护档案文件”即可。
小常识:
  其实RAR压缩包出错的解决方法主要是以预防为主!如果没有预防,等到真正出了问题,技术上也是没办法完美解决的!像循环冗余校验码(CRC)出错这种情况,如果RAR压缩包不包含恢复记录的话,用户自己想要修复CRC是不可能的!本文的主要目的是想告诉大家一些出错的原因以及讨论一些从根本上预防出错和把损失减少到最小的办法而已! 

CRC文件解压缩问题的更多相关文章

  1. 免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)

    前面介绍了六种.NET组件,其中有一种组件是写文件的压缩和解压,现在介绍另一种文件的解压缩组件SharpZipLib.在这个组件介绍系列中,只为简单的介绍组件的背景和简单的应用,读者在阅读时可以结合官 ...

  2. 如何解决rar文件解压缩失败

    附件经常会是一系列的压缩文件,下载是默认文件名是一个随机数字.因而下载完会出现压缩文件解压缩失败解决方法:下载时重命名为带一定顺序的文件名,如文件1,文件2,文件3等 如何解决单个文件解压失败?论坛中 ...

  3. iOS中的加密方式 与 文件解压缩

    1.Base64加密方式 Base64是一种加密方法,可逆的加密. Base64中的可打印字符包括字母A-Z.a-z.数字0-9,这样共有62个字符./ + 填充 = echo -n BC|base6 ...

  4. java Zip文件解压缩

    java Zip文件解压缩 为了解压缩zip都折腾两天了,查看了许多谷歌.百度来的code, 真实无语了,绝大多数是不能用的.这可能跟我的开发环境有关吧. 我用的是Ubuntu14.04,eclips ...

  5. 文件 "c:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\ttt.mdf" 已压缩,但未驻留在只读数据库或文件组中。必须将此文件解压缩。 CREATE DATABASE 失败。无法创建列出的某些文件名。请查看相关错误。 (.Net SqlClient Data Provider)

    问题: 文件 "c:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\ttt.mdf" 已压缩,但 ...

  6. Android Zip文件解压缩代码

    2011-04-01 17:58:52|  分类: Android |举报 |字号 订阅   在Android平台中如何实现Zip文件的解压 缩功能呢? 因为Android内部已经集成了zlib库,对 ...

  7. Android中用Java代码实现zip文件解压缩

    如果需要下载的文件有很多是中文名的,解压时有中文名的文件出现乱码,试了很多方法不能解决问题.据说有一个Java插件包,用这个插件包可以解决中文名乱码的问题,但不知解压的文件是否要用它提供的类压缩后的文 ...

  8. python利用unrar实现rar文件解压缩

    python第三方包unrar可以实现rar文件的解压缩,它以动态库UnRAR为基础,封装而成 1. 下载UnRAR动态库 https://pypi.python.org/pypi/unrar/0.2 ...

  9. Linux下*.tar.gz文件解压缩命令

    1.压缩命令: 命令格式:tar  -zcvf   压缩文件名.tar.gz   被压缩文件名 可先切换到当前目录下.压缩文件名和被压缩文件名都可加入路径. 2.解压缩命令: 命令格式:tar  -z ...

随机推荐

  1. (转)资源监控工具Spotlight监测LINUX

    个人1.安装spotlight,Spotlight on Unix2.配置spotlight,注意spotlight默认不能使用root用户进行连接,需要用户自己创建一个具有root权限的用户.(1) ...

  2. TCP长连接与短链接

    1. TCP连接 当网络通信时采用TCP协议时,在真正的读写操作之前,server与client之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接时它们可以释放这个连接,连接的建立是需要三次 ...

  3. ExtJS 表单 submit时错误处理

    这里不提success,提提Extjs 表单提交的failure方法. 在表单的提交中,当发生异常行为时通常分为三种情况 1. 无法连接到服务器 2. 表单验证错误 3. 业务逻辑错误 对应下面的代码 ...

  4. DOM节点中属性nodeName、nodeType和nodeValue的区别 < Delphi >

    http://msdn.microsoft.com/zh-cn/library/vstudio/hf9hbf87.aspx <?xml version="1.0"?> ...

  5. CMSIS-SVD Example (Schema Version 1.1)

    <?xml version="1.0" encoding="utf-8"?> <!-- File naming: <vendor> ...

  6. JAVA包管理

    package cn.java.mybole; class test6 { public static void main(String[] args) { System.out.println(&q ...

  7. Java Http 设置代理

    1.今天在Eclipse下面编译一个Http客户端时,发现可以连接局域网,连接不上外部网络,突然想起所用PC是通过代理访问网络的,设置代理后程序可以正常访问网络了: Properties props ...

  8. Integrate SharePoint 2013 with Team Foundation Server 2012

    Now that SharePoint 2013 is out I want to make sure that I can integrate SharePoint 2013 with Team F ...

  9. Thinkphp学习笔记6-redirect 页面重定向

    ThinkPHP redirect 方法可以实现页面的重定向(跳转)功能.redirect 方法语法如下: $this->redirect(string url, array params, i ...

  10. Asp.net 在网页编写C#代码示例-- 一个简单的web MsSql 命令执行环境

    在给一个客户做的系统上,因为要对数据库进行查看,但之前都是用TeamView来连接到客户的服务器进行数据库操作的 但最近客户那边的TeamView好像更改过密码导致我无法正常连接,而巧了客户的网官因为 ...