APP下载

其实简单,彻底玩转Windows中的Winsxs文件夹

2014-04-29飞雪散花

电脑迷 2014年20期
关键词:补丁文件夹对话框

飞雪散花

众所周知,在Vista及以后操作系统分区的Windows目录中,有一个体积较为庞大的文件夹:Winsxs,通常情况下,该文件夹可以占据3GB以上的空间(如图1),而且该体积会随着以后安装的软、硬件的增多而变大。那么,Winsxs究竟为何物?该文件夹是否可以删除?如果无法删除的话,我们又该采取什么样的策略,尽力减少其对系统分区的占用?答案尽在本文。

Winsxs究竟为何物?

Winsxs文件夹是微软为保证系统能正常、稳定运行而提供的一个非常重要的文件夹,该文件夹中保存有大量的系统运行所必需的组件,其中最为我们熟悉的就是动态链接库(DLL)。由于在Windows XP及先前的系统中,系统中DLL的版本是唯一的,因此当我们安装应用程序的时候,时常会看到诸如:“要安装的xxxx.dll 比系统中原有的要旧,是覆盖还是保留?”之类的提示,此时,如果我们选择覆盖安装,那么极有可能先前需要使用该DLL的程序会无法正常运行;如果选择保留新版本,那么,当前安装的程序就有可能无法运行。而Vista及以后的操作系统完美地解决了这一问题,它会在Winsxs文件夹同时保留多个DLL版本,以便在不同程序需要调用时,能根据实际情况为其提供不同的版本。

同样,当我们发现硬件新驱动有问题,不得不将其降级到旧版本时,旧版本实际上也是保存在Winsxs文件夹中的。

Winsxs文件夹中的文件不可随便删除,否则,极容易因为缺乏相应的组件,导致系统无法正常运行。

可否将Winsxs迁移到别的分区?

答案是肯定的!由于系统分区空间极其宝贵,为了提高系统的运行速度,减少它对系统空间的占用,我们可用下面的方法,将其它迁移到非系统分区。以在Win 8中操作为例。

1.获取Winsxs文件夹的完全控制权

由于Winsxs是系统属性的重要文件,所以我们首先要获取完全控制权,才能对其进行移动操作。

第一步:进入“C:\Windows”目录,右击winsxs文件夹,在弹出的右键菜单中选择“属性”,打开相应的对话框。切换到“安全”标签,单击“高级”按钮,然后在出现的“winsxs的高级安全设置”对话框中单击“所有者”项右侧的“更改”文字链接,打开“选择用户或组”对话框(如图2)。

第二步:单击“高级”按钮,打开相应的对话框。单击“立即查找”按钮,系统中存在的所有系统账号就会出现在“搜索结果”列表中,选择当前登录的账号,单击“确定”按钮(如图3)。返回上级对话框,连续单击“确定”按钮,权限的设置工作就完成了。

2.将文件夹移到非系统分区

第一步:进入http://technet.microsoft.com/en-us/sysinternals/bb897556.aspx页面,下载PendMoves and MoveFile工具,解压后,将其中的文件复制到“C:\Windows\System32”目录中(其中C是系统分区,下同)。

第二步:右击“开始”按钮,在出现的菜单中选择“命令提示符(管理员)”,打开命令提示符窗口,依次输入并执行以下命令(如图4。注意:每输入一行都要回车。其中括号中的内容为命令行注释。下同):

cd \windows (切换当前路径为Windows)

mklink winsas.link winsas.moved (建立一个指向Winsas.moved文件的名为Winsas.link的链接)

movefile C:\Windows\winsxs C:\Windows\Winsas.moved (将“C:\Windows”目录下的winsxs文件夹重命名为Winsas.moved)

movefile C:\Windows\Winsas.link C:\Windows\winsxs (将“C:\Windows”目录下的Winsas.link文件夹重命名为winsxs)

第三步:执行完毕,重启系统,在任一非系统分区建立起“Windows\winsxs”目录(如:E:\Windows\winsxs),然后将“C:\Windows\Winsas.moved”目录下的所有文件复制到新建的目录下。

第四步:重新建立关联并删除Winsas.moved文件夹。以管理员身份运行命令提示符窗口,输入并执行以下命令:

cd \windows (切换当前路径为Windows)

rmdir winsxs (删除名为winsxs的链接)

mklink winsxs E:\windows\winsxs (新建一个指向“D:\windows\winsxs”目录名为winsxs的链接)

至此,Winsxs文件夹的迁移工作便告结束。对于系统分区较少的朋友来说,用这种方法可以节省不少空间,同时也可加快系统的运行速度。

如何才能最大限度减少Winsxs的体积?

Winsxs中的文件很重要,但这并不意味着它的所有文件都有用。实际上,由于它会同时保留多个文件版本及其备份,这当中也包括系统补丁备份及老驱动备份等,所以当我们确认当前系统已更新完毕,新的驱动也已正常工作后,我们完全可以将老版本备份清除,仅保留新版本,以最大限度地节省磁盘空间。而要达到上述目的,我们可以用下面两种方法来实现。

1.如果你是Win7及以后操作系统的用户

实际上,从Win7系统开始,微软已经针对Winsxs文件夹中新老版本并存、文件夹体积过于庞大的问题,提供了相应的瘦身补丁,通常在开启了系统自动更新的前提下,该补丁会通过系统升级,自动安装到系统中。当然,如果你的系统未启用自动更新,也可以进入http://www.microsoft.com/zh-CN/download/details.aspx?id=40359页面手工下载安装。

第一步:补丁安装完毕,在Windows资源管理器中右击系统分区,在弹出的右键菜单中选择“属性”,打开相应的对话框,单击“磁盘清理”按钮(如图5)。

第二步:在出现的“磁盘清理”对话框中,单击“清理系统文件”按钮,打开相应的对话框,勾选“要删除的文件”列表中的“Windows更新清理”和“已下载的程序文件”项(如图6),确认后,Winsxs中无用的更新备份和所有下载的文件即会被删除,高危级安全补丁则会被保留,从而在保证系统安全的同时,在一定程度上减少了Winsxs文件夹对系统空间的占用。

2.如果你是Vista用户

Vista没有相应的补丁支持,所以对Winsxs的瘦身工作,只能借助Dism命令来完成。

以管理员身份运行命令提示符窗口,输入以下命令:

dism /online /Cleanup-Image /StartComponentCleanup /ResetBase

回车后,Winsxs文件夹中所有的老的驱动备份程序和已安装的非高危级的补丁备份,就会被统统清除了。

猜你喜欢

补丁文件夹对话框
磁力文件夹
正常恢复虚拟机
健胃补丁
Bootlace Worms’Secret etc.
What Is Beauty?
绣朵花儿当补丁
补丁奶奶
调动右键 解决文件夹管理三大难题
浅谈VB的通用对话框《CommonDialog》控件的使用
挂在墙上的文件夹