分享

关于大文件传输问题的避免和解决办法

 WindySky 2018-02-10
前言:
因为网络传输中一旦有丢包,就很可能会文件错误,这个随时有一定概率会发生,但这个对于大文件来说,概率会成倍增加。
而且这个也是网络传输不可能规避的问题,即便bt这种靠随时校验的方式都不是绝对保险的,对于FTP,http等,文件损坏的概率会更大些。
为了降低这个的影响,所以普遍的做法是,大文件划分N多个小文件,(至少不至于整个重下,只需重下几个有问题的小包)同时加 CRC MD5 等校验码辅助

关于这个大文件传输问题是很多人都遇到的头疼的话题了,相关教程也蛮多,在这里我们有些就借花献佛,感谢文章出处
本教程分三章

二楼 如何将大文件分割小文件,如何生成sfv校验文件
三楼 对于已经下载的若干文件,如何校验判断问题
四楼 如何在下载时自动校验sfv
四楼 对于整个大文件,有问题如何解决,特别关于dmg的解决方案

在这里,要明确的一点就是,如果一个文件体积越大,那么在传输过程中出错的可能性就越高。因此我们第一个要解决的问题就是大文件的拆分和合并。常用的压缩软件都可以做到这一点。以WinRAR为例,就可以把一个文件按照任意的大小分卷压缩。

为了便于下载,文件(夹)做成WinRAR压缩包比较好,再加SFV校验,则会员可以在下载后测试下载到的压缩包的正确与否。这是一种通用的FTP下载网站的上传文件模式。建议做种会员都来这样发种。
第一步:选取要进行分卷压缩的文件,然后在文件上右击鼠标,选择“添加到压缩文件(A)...”



从上产生如下图。第二步:在”压缩文件名“处可以改压缩后的文件名称;在“压缩方式“对话框中选”存储“(注意:动态素材等不易压缩的文件可以选这项,其它可压缩性强的文件选“标准”比较好);在“压缩分卷大小字节”对话框中输入“15,000,000”,把压缩文件分成每个容量为14.31M的分卷包,点“确定”即可[注意:输入时为15,000,000字节] ,也可输入“50,000,000”或“100,000,000”,分别是47.68M和95.37M。% k# B8 a( K3 N



如果你要做成“旧风格”文件名(这是一种资源论坛上常用的压缩文件序号“,可以在参数”高级“中勾选”旧风格分卷名“。如果你想对压缩包加密码,可以在”设置密码“处点击。如图。




现在得到如下图之几个分卷压缩文件了。把所有文件放到新建的同名文件夹中(注意路径不要冲突):1


第三步:校验FTP下载文档
  FlashSFV是一款非常简易的免费文件校验工具,支持校验SFV文件。
该程序的official下载:http://www./flashsfv/ 汉化版下载地址为 http://www.onlinedown.net/soft/29164.htm (注意:汉化版中有广告插件,勾掉)

打开校验工具FLASHSFV,如图

第四步:运行FLASHSFV,点“选项”按钮。勾选SFV和MD5的4个选项!然后单击确定!


第五步:选中需要进行校验的文件夹[所有需要进行校验的分卷文件都必须放在这个文件夹内],右键选取 “创建 SFV”选项! 这时FLASHSFV软件会自动对文件夹内所有的文件进行校验,并将所生成的SFV文件存在此文件夹内。 如图



为保险起见,不妨验证一下。

对于下载的若干文件,如何校验判断有无问题
 这个SFV文件非常有用,它用来校验所下载的软件是否完整。运行FlashSFV程序文件,查看其工具栏。首先,点击“打开”按钮,在弹出对话框中选择打开指定目录中的.sfv文件(图1)。然后,大家在FlashSFV主界面中,点击“检查”按钮,程序将自动执行校验操作。大家查看如图2所示界面,在该界面下端会实时显示出单一校验文件进度与总进度,以及速率和剩余时间。校验完毕后,将在程序状态上看到结果,即是否有坏文件。


图1


图2
注意:
★在进行校验时把要校验的文件和SFV文件放在同一文件夹中。
★FlashSFV同样支持MD5码的生成和校验,生成校验码时,只需要在保存校验码文件时选择“保存类型”为“MD5 (*.md5)”即可,生成速度上与WinMD5相当,而且软件对WinMD5和MD5summer生成的MD5文件都提供了较好的兼容性。
★FlashSFV同样可以关联MD5和SFV文件,单击“选项”按钮,在“以下类型关联FlashSFV”下面选中“MD5”和“SFV”选项即可。

在FTP下载中自动校验

有的人会问每次下载下来都要通过SFV工具校验太麻烦了,有没有什么办法可以边下载边校验呢?答案是肯定的。


flashfxp从2.1开始支持下载完成后调用外部程序的功能,这个一般是用来扫描病毒的, 我们正好可以用它来实现校验。

详见flashfxp技术文档中:
 
Added program execution after transfer complete.
To use this functionality you must add the following section to the FlashFXP.ini
[run]
app=<full\path\to\exe>
param=<any params you need to pass, use the %f macro to pass the filename>
show=1
show application window has two values 0=hidden 1=visible
 
Simple Example
[run]
app="c:\vscan.exe"
param="/scan %f"
show=0
 


我们用CruZer写的一个叫csfvse的校验程序,主页地址http://cruzer.
它有客户端的csfv和服务器端的csfvse两个版本。
csfvse除了具有像servuplus的功能外,还有以下几个独到之处:


Drop a nfo when the entire sfv file is ok
Execute a file when the entire sfv file is ok
Make "DiskSpace info" folders
"Announce to file" (mainly for use with G6Stats)
Program priority settings
Generate list of latest uploads
Can extract mp3 media info

下载地址 http://cruzer./files/cSFVse_v2.69b.rar

 

具体操作步骤图解

第一步:先将csfvd压缩包内3个文件解压到flashfxp的目录。
图片 57.png (92.25 KB)
2009-6-9 17:41


第二步:在flashfxp的配置文件flashfxp.ini的[run]段中加入如下的命令

图片 58.png (63.69 KB)
2009-6-9 17:41

编辑flashfxp的FlashFXP.ini文件加入下面的代码。
[run]
app="C:\Program Files\FlashFXP\cSFVd.exe" /这里是cSFVd的路径
param=-file "%f" -user_name "Flashfxp" -user_group ""show=0

其中app的参数改成放置cSFVd的位置,例如图示中我的文件在桌面上

图片 60.png (7.28 KB)
2009-6-9 17:41



第三步:用flashfxp下载,如果目录中有sfv文件,就会自动调用cSFVd进行边下载边校验了。从而减少了重复下载问题的发生。


小提示:

一些高级应用我们可以通过运行cSFVd -gui.exe进行一些效果设置,帮助csfvd校验得更精确。另外其他sfv校验工具只要其支持命令行模式也可以用类似方法稍作修改来用。

如何解压有问题的文件包
一、对于RAR格式的文件,数据少部分破坏如何使用

WinRAR本身有一定的数据恢复功能。一般情况下,如果压缩包中损坏的数据是连续的,并且损坏的文件大小不超过压缩包大小的0.6%,那么WinRAR 自己就可以完成数据恢复的工作。不过这需要你设置一下(这里全部以英文版为准)。打开WinRAR,在“Options”菜单下点击 “Settings”,在弹出窗口的“Compression”选项卡下,点击“Create Default”然后选中“Archiving Options”下的“Put Recovery Record”,这样,以后制作的压缩包就有自动恢复功能了,如果下载的文件有小的损坏,WinRAR直接就可以帮助你恢复数据,而不用重新下载。

现象一:最近WinRAR不论解压缩什么文件,都是提示“CRC 校验失败,文件被破坏”。
解决方案:出现这种情况,可能是WinRAR的临时文件保存出现了问题,一般只需要打开系统临时目录(Windows 2000/XP下为\Documents and Settings\用户名\Local Settings\Temp),删除其中名为“Rar$DI00.*”之类的文件夹即可。

现象二:刚下载的一个软件压缩包,使用WinRAR解压时提示某个文件“CRC 校验失败,文件被破坏”。
解决方案:这种情况可以判断是那个压缩包出了问题,但很多情况下出现CRC错误时并不代表整个压缩包都已经坏掉,很可能只是某个文件有部分损坏。你可以尝试使用“命令”菜单中的“修复压缩文件”,一般可以解决部分CRC错误的问题。如果仍然不能解决,你可以尝试一下强制解压技巧:首先打开压缩包,选择除那个CRC错误文件以外的所有文件,先将正常的文件解压出来,然后解压那个出错的文件,当提示CRC错误信息时,不要点击任何确认按钮,打开“资源管理器”,找到解压后的文件保存路径,可以看到那个出错的文件实际已经被解压了,把它复制到其他文件保存的文件夹中,然后再试试看程序能否正常运行,很多情况下,如果这个文件不是可执行程序,对运行的影响不是很大。

二、对于dmg格式的文件,数据少部分破坏如何使用
windows下需要用到一个软件,叫transmac,(可以到服务器FTP-Tools目录下下载,教程中涉及的软件一般均放在FTP-Tools)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多