1、选择安装源
在 Windows 8.1 系统上不存在重复数据删除功能,需要从对应的服务器版本,即 Windows Server 2012 R2 上提取相关文件。
2、提取文件
安装源中的目录和文件很多,我们只需要要三个目录:
\WINDOWS\servicing\Packages,包文件;
\WINDOWS\winsxs:程序集文件。除了程序集子目录之外,其他的子目录不需要;
\WINDOWS\winsxs\Manifests:清单文件。
把这三个目录中的子目录和文件到复制一个目录下。假设全部文件、目录都复制到 s:\4\Packages 中。
3、增量压缩
增量压缩:Delta Compression
为什么要说到增量压缩呢?是因为复制到 s:\4\Packages 中的文件许多都是经过增量压缩的,如果用记事本打开,能看懂的只有开头的 DCN PA30 之类的内容,其余部分都是些乱码。
再说说文件标识。
DC,应该就是增量压缩的缩写,N 表示某种类型的压缩;除 DCN 外,还有 DCD、DCM。PA30 应该是增量压缩的版本,表示这种压缩是使用 msdelta.dll 作为引擎的,解压缩也使用 msdelta.dll ;还有一种版本 PA19,使用 mspatchc.dll 进行压缩,使用 mspatcha.dll 进行解压缩(解压缩又称为应用,apply)。
4、安装前的准备
禁用 Hash 测试。
因为默认的程序集文件应该是未压缩的,但是,我们从安装光盘中提取的文件是经过压缩的,在安装包时,系统要对程序集文件进行 Hash 测试,肯定无法通过测试。为此,必须关闭 Hash 测试的功能。需要在注册表中添加一个属性 DisableFileHashVerification,类型为 DWORD,值为 1,位置在 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\Configuration。
5、安装包
安装包使用的命令:Dism
Dism /online /Add-Package /PackagePath:包文件的路径
重复数据删除是文件服务角色中的一项功能,它依赖文件服务的某些基础功能,即 Microsoft-Windows-FileServer-Package 包。
Dism /online /Add-Package /PackagePath:Microsoft-Windows-FileServer-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.mum
Dism /online /Add-Package /PackagePath:Microsoft-Windows-FileServer-Package~31bf3856ad364e35~amd64~zh-CN~6.3.9600.16384.mum
Dism /online /Add-Package /PackagePath:Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.mum
Dism /online /Add-Package /PackagePath:Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~zh-CN~6.3.9600.16384.mum
6、启用功能前的准备
这一步非常关键,因为几乎所有的出错都与这里的设置有关。如果提取的文件是未经过压缩的原始文件,这一步可以跳过。
前面说过,重复数据删除功能涉及到十个程序集,其中有三个系统已经安装。
在包的安装过程中,注册表中的内容是应该自动写上的,但不一定。如果功能无法启用,可以参照附表对相关注册表值进行设置。注册表的位置为 HKLM\COMPONENTS\DerivedData\Components,文件为 \Windows\System32\Config\Components。
需要注意的是,通常情况下,HKLM\COMPONENTS 并不加载,需要加载以后,才能进行后续的操作。
7、启用功能
Enable-WindowsOptionalFeature -Online -FeatureName File-Services
Enable-WindowsOptionalFeature -Online -FeatureName CoreFileServer
Enable-WindowsOptionalFeature -Online -FeatureName Dedup-Core
8、验证
如果安装成功完成,下面的命令就可以运行了。
查看有关有关重复数据删除的命令:get-command dedup
启用对磁盘的重复数据删除:Enable-DedupVolume T:
扫描磁盘,计算重复数据删除后的状态:Update-DedupStatus T:
返回重复数据删除后的状态:Get-DedupStatus
版权声明:本文为博主原创文章,未经博主允许不得转载。