问题很简单,我想在运行 Optimize-VHD cmdlet 之前尽我所能清理/压缩 VM 的 .vhdx 驱动器。使用 Microsoft 的磁盘清理实用程序非常好。问题是它没有默认安装。
官方获取方式是使用“添加角色和功能”并添加“桌面体验”功能。有一些不想要的副作用,其中该功能还需要“媒体基础”和“墨水和手写”功能。我只想要“磁盘清理”。
问题很简单,我想在运行 Optimize-VHD cmdlet 之前尽我所能清理/压缩 VM 的 .vhdx 驱动器。使用 Microsoft 的磁盘清理实用程序非常好。问题是它没有默认安装。
官方获取方式是使用“添加角色和功能”并添加“桌面体验”功能。有一些不想要的副作用,其中该功能还需要“媒体基础”和“墨水和手写”功能。我只想要“磁盘清理”。
“磁盘清理”只需要 2 个文件即可工作(加起来,不到 260KB)
“cleanmgr.exe”用于您的平台,“cleanmgr.exe.mui”用于您的语言环境。它们已经在您计算机上的“%SystemRoot%\WinSxS”下的子文件夹中。
首先,在“%SystemRoot%\WinSxS”文件夹下搜索“cleanmgr.exe”。您可能会在“amd64”、“wow64”和“x86”文件夹中找到文件。我在我的 Windows Server 2012 Standard x64 安装中为这两个文件选择了“amd64”。
将这 2 个文件复制到以下位置:
(我假设,如果您使用不同的语言环境,WinSxS 会有更多选择,并且您必须将 .mui 文件复制到该语言环境的子文件夹。)
从技术上讲,你已经完成了。如果您希望它向您显示它可以清理的所有内容(包括存储在 WinSxS 中的陈旧 Windows 更新,现在是 Win2012 中的一个选项),请以管理员身份运行“cleanmgr.exe” 。
如果您想要更多“GUI-ness”,请继续...
要将新的“磁盘清理”放入“开始”菜单,请创建“cleanmgr.exe”文件的快捷方式。将新的快捷方式放在“%ProgramData%\Microsoft\Windows\Start Menu\Programs\Administrative Tools”文件夹中;将其命名为“磁盘清理”。现在,在“开始”菜单中,您只需键入“磁盘清理”,您就可以选择从一开始就以管理员身份启动它。
要让“磁盘清理”在磁盘驱动器的“属性”对话框中显示为按钮,您必须更改注册表以添加新键和“可扩展字符串值”。创建一个新的 .reg 文本文件并粘贴以下内容:
十六进制字符串是“%SystemRoot%\System32\cleanmgr.exe /D %c”,以防您想手动添加。对我来说,我只需要添加第一个键。第二把钥匙只是我发现设置所在的另一个地方。仅供参考,注册表中还有其他 2 个地方处理“cleanmgr.exe”,但幸运的是,它们对此并不重要,因为它们使用了一些 ClassID GUID 的东西。