web-dev-qa-db-ja.com

デスクトップエクスペリエンスをインストールせずにWindows 2012サーバーにディスククリーンアップをインストールするにはどうすればよいですか?

問題は、Optimize-VHDコマンドレットを実行する前に、VMの.vhdxドライブをクリーンアップ/圧縮するためにできる限りのことをしたいということです。 Microsoftのディスククリーンアップユーティリティを使用すると便利です。問題は、デフォルトではインストールされないことです。

これを取得する正式な方法は、「役割と機能の追加」を使用して「デスクトップエクスペリエンス」機能を追加することです。これには望ましくない副作用があり、その中には「メディアファンデーション」機能と「インクと手書き」機能がさらに必要です。 「ディスククリーンアップ」だけが必要です。

14
Granger

「ディスククリーンアップ」が機能するために必要なファイルは2つだけです(全体で260KB未満)

プラットフォームには「cleanmgr.exe」、ロケールには「cleanmgr.exe.mui」。マシンの「%SystemRoot%\ WinSxS」の下のサブフォルダーにすでにあります。

まず、「%SystemRoot%\ WinSxS」フォルダの下で「cleanmgr.exe」を検索します。 「AMD64」、「wow64」、および「x86」フォルダにファイルが見つかる可能性があります。 Windows Server 2012 Standard x64インストールの両方のファイルに「AMD64」を選択しました。

これらの2つのファイルを次の場所にコピーします。

  • %SystemRoot%\ System32\cleanmgr.exe
  • %SystemRoot%\ System32\en-US\cleanmgr.exe.mui

(別のロケールを使用している場合、WinSxSにはより多くの選択肢があり、.muiファイルをそのロケールのサブフォルダーにコピーする必要があると思います。)

技術的には、この時点で完了です。 "cleanmgr.exe"を実行します管理者として駆除できるすべてのものを表示したい場合(WinSxSに保存されている古いWindows Updateを含みます。これは現在Win2012のオプションです)。

もっと「GUIらしさ」が欲しいなら、先に進んでください...

新しい「ディスククリーンアップ」をスタートメニューに入れるには、「cleanmgr.exe」ファイルへのショートカットを作成します。 「%ProgramData%\ Microsoft\Windows\Start Menu\Programs\Administrative Tools」フォルダに新しいショートカットを配置します。 「ディスククリーンアップ」という名前を付けます。これで、スタートメニューで「ディスククリーンアップ」と入力するだけで、最初から管理者として起動することができます。

「ディスククリーンアップ」をディスクドライブのプロパティダイアログボックスのボタンとして表示するには、レジストリを変更して新しいキーと「拡張可能な文字列値」を追加する必要があります。新しい.regテキストファイルを作成し、以下に貼り付けます。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\cleanuppath]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,00,6c,00,\
  65,00,61,00,6e,00,6d,00,67,00,72,00,2e,00,65,00,78,00,65,00,20,00,2f,00,44,\
  00,20,00,25,00,63,00,00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\cleanuppath]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,00,6c,00,\
  65,00,61,00,6e,00,6d,00,67,00,72,00,2e,00,65,00,78,00,65,00,20,00,2f,00,44,\
  00,20,00,25,00,63,00,00,00

これを手動で追加する場合は、16進文字列は "%SystemRoot%\ System32\cleanmgr.exe/D%c"です。私にとっては、最初のキーを追加するだけで済みました。 2番目のキーは、設定を見つけたもう1つの場所でした。ちなみに、レジストリには「cleanmgr.exe」を扱う場所が2つありますが、ClassID GUIDのものを使用しているため、幸い、これは問題になりませんでした。

17
Granger