您的位置: 首页 >> 文章首页 >> 技巧评测 >>
 
 
交换数据流给文件也有一个“身份证”
作者: 刘晖 来源: 电脑迷 时间: 2006-4-27

 
    笔者的办公室配了一台新的品牌机,最近发现在下载软件时多出了一个“安全警告”对话框(如图1),这可是以前都没有遇见过的。办公室里的品牌机和旧电脑都是使用的Windows XP,可是为什么用旧电脑下载软件就没有这个对话框呢?经过仔细对比品牌机和旧电脑,发现品牌机的操作系统安装了SP2,而旧电脑则没有安装,兴许问题就在这儿了。后来咨询了一位专家,证实了笔者的猜想,这是微软的一项安全技术——交换数据流。

图一

    什么是交换数据流

    NTFS文件系统中有一个很少被大家注意的特性,通过该特性,我们可以在保证一个文件完整的情况下给该文件附加一些额外的信息,这些本不属于该文件的信息就叫做“交换数据流(Alternate Data Stream)”;而文件本身则叫做该文件的“主数据流(Primary Data Stream)”。在用IE浏览器下载软件时通常会弹出一个下载提示框时,可以选择直接运行或是保存到本地,如果选择了直接运行的话,软件就会被下载到临时文件夹,然后自动运行。当可执行文件在下载完成后自动运行时就会出现图1所示的对话框。由于这些可执行文件可能含有病毒或者其它危险因素,随意运行这些文件就有可能给我们的系统带来损害。为了防止用户错误地运行这种文件,微软在Windows XP SP2中使用了这样一个新功能来提醒用户,该功能就是依赖交换数据流工作的。

    当我们使用IE浏览器把网上的可执行文件保存到NTFS文件系统的分区上,IE浏览器就会自动给下载回来的文件附加一个交换数据流,当我们双击运行带有这种数据流的文件时,系统就会出现图2所示的提示。通过这个实例我们知道,要使该选项生效,需要同时满足下列条件:1、文件是从网络中获得的;2、文件必须保存在NTFS文件系统的分区上;3、文件必须使用IE浏览器下载到本地,使用其它下载工具下载的文件不会被添加这一数据流。

图二

    取消安全警告

    虽然这是一种善意的提示,但我们有可能会觉得麻烦,希望能够取消这种提示。我们可以直接在图1所示的对话框中取消“打开此文件前总是询问”的选中状态。或者直接查看文件属性,在“属性”对话框的“常规”标签上点击“解除锁定”按钮,也可以禁用这种提示。这两种方法都可以删除文件中的交换数据流,但是要注意,通过这两种方法删除的只是特定文件中的交换数据流,其它文件不受影响。换句话说,在运行其它包含交换数据流的文件时同样会出现这种提示,除非对其它文件重新执行上述操作。

    查看交换数据流

    我们如何查看某个文件里是否含有交换数据流呢?可以使用一个叫做Streams的工具。这是一个命令行工具,需要先打开命令提示符,再从命令提示符窗口中运行Streams,直接双击Streams.exe是无法运行程序的。假设我们要查看保存在C盘根目录下的dxwebsetup.exe文件的交换数据流,可以使用命令“streams c:\dxwebsetup.exe”。为了方便对比,我们对同一文件分别使用了该命令两次,第一次是在文件带有交换数据流的情况下使用的,运行结果显示为“:Zone.Identifier:$DATA 26”;而第二次则是删除交换数据流之后使用的,结果显示为“No files with streams found”,这充分说明了交换数据流的存在(如图3)。

图三

    提示:在运行streams时添加参数“-d”可以删除文件的交换数据流。

    交换数据流的其它作用

    想知道交换数据流还有什么其它作用吗?不说远了,就说电脑迷光盘中的卡巴斯基杀毒软件,该软件就利用了类似交换数据流的特性,只不过在卡巴斯基中该功能被称为“iChecker”(用于FAT32文件系统)和“iStreams”(用于NTFS文件系统)。

    当我们第一次使用5.0以上版本的卡巴斯基杀毒软件对整个系统查毒的时候,杀毒软件会自动给所有扫描过的文件添加交换数据流信息,标记该文件已经被检查过,是安全无毒的。日后再次扫描文件时杀毒软件会首先检查每个文件的交换数据流中有没有自己标记的信息,如果有,则会跳过这个文件,这会极大地提高扫描速度。

    你可能会担心每一个文件都被卡巴斯基添加了交换数据流后会占用很多硬盘空间,其实这个担心是多余的,交换数据流并不会占用硬盘空间,大家可以用前面的方法删除一个文件的交换数据流,然后对比删除前后的文件体积来验证。也许你还会想如果不再使用卡巴斯基了,该如何删除大量文件中留下的交换数据流呢?这里就需要用到卡巴斯基公司提供的一个小程序KLStreamRemover,与使用Streams一样,KLStreamRemover也需要用命令提示符来运行。将文件保存在想要清除数据流的文件所在的硬盘分区,然后打开命令提示符窗口,运行“Klstreamremover.exe -r”命令,程序就会自动将该分区下被卡巴斯基杀毒软件附加的交换数据流全部删除。

    提示:在使用KLStreamRemover之前应先把巴斯基杀毒软件卸载掉。KLStreamRemover一次只能清除一个分区内文件的数据流,若要清除多个分区的话,需要重复运行KLStreamRemover多次。
上一篇文章: “迷你酷狗”添加歌手列表“搜听”歌曲更方便
下一篇文章:
相关文章  
    查看Windows XP SP2是否原版技巧
    最新数据:XP SP3 能提升SP2性能!
    Windows Server 2003 SP2中文版
    微软最终发布XP SP2休眠补丁
    微软不再拦截SP2自动更新
    WinXP SP2再曝拒绝服务漏洞 可使系统崩溃
    Prescott和XP SP2 解决不兼容办法全公布
    WinXP SP2遇上AMD64位CPU会反复重启!
    微软WinXP SP2官方中文版发布!赶快下载。
    50款不兼容的WinXP SP2问题软件清单
相关软件  
Windows Xp sp2 补丁集 0508 升级补丁
Microsoft SQL Server 2005 SP2 中文版 升级补丁
Office 2003 SP2B 补丁集 升级补丁
 
本类 TOP10  
    Excel 2007表格的行和列的冻结或锁定
    Vista延迟删除技术的变更
    Word 2007 编辑教案更轻松
    开启Vista系统Aero缓慢动画
    Excel 2007怎么做隔列求和
    “迷你酷狗”添加歌手列表“搜听”歌曲更方...
    如何用WPS表格转换为歌词句首字母改大写
    用PowerPoint做多种类型的练习题
    开启Vista系统Aero缓慢动画
    Excel做成绩表自动实现同分同名次
最新推荐软件  
ACDSee Pro v2.0.238 汉化精装版
天网防火墙 v3.0.0.1010 build 1025 个人版
瑞星个人防火墙 v19.46.20 完全免费版
迅雷5 5.7.4.401
StyleBuilder v1.02
Windows清理助手 v2
恶意软件清理
360安全卫士  v3.64标准版
瑞星卡卡安全助手 v4.0.0.27
最近更新 | 关于我们 | 广告联系 | 版权声明 | 帮助中心 | 交流论坛
Copyright © 2007-2010 91down.com All Rights Reserved. 就要下载站 快乐下载新体验