$PatchCache$フォルダ内のファイルは消しても良い?
バックアップしていた時に気付いたんですけど、C:\Windows\Installer フォルダ直下に $PatchCache$ という 1GB 以上のサイズのフォルダがあります。
その名前からパッチのキャッシュだと容易に想像できますが、果たしてこのフォルダの中を消してしまって良いのか悩みます。
以下の記事を斜め読みした感じだと、$PatchCache$ フォルダそのものは駄目だけど、$PatchCache$ フォルダの中はクリアしてしまって良いそうです。
- Officeをインストールした時の謎の巨大フォルダを作らない設定 - Windows 2000 Blog
- Can I delete the folder "C:\WINDOWS\Installer\$PatchCache$"? - Super User
- MSDN Blogs
- Installer\$PatchCache$ on OS drive is very big - How can I move it to a secondary drive
- MSDN Blogs
それと、レジストリの HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer キーに MaxPatchCacheSize というDWORD(32ビット)値を作成して、そのデータを0にすれば、新しいパッチはキャッシュに追加されなくなるようです。
で、このレジストリキーを見てふと思ったんですが、これってグループポリシーエディタでも設定できる項目なんじゃないでしょうか?
手順はこうです。
↑[Windowsロゴ]+[R]キーを押して表示した【ファイル名を指定して実行】ダイアログに"gpedit.msc"と入力して[OK]ボタンを押す。⇒【ローカルグループポリシーエディター】画面が表示される。
↑左側のペインに表示されたツリーノードの中から、[ローカルコンピューターポリシー]→[コンピュータの構成]→[管理用テンプレート]→[Windowsコンポーネント]→[Windowsインストーラー]を開き、右側のペインに表示された設定の内、[ベースラインファイルキャッシュの最大サイズを制御する]をダブルクリックする。⇒【ベースラインファイルキャッシュの最大サイズを制御する】ダイアログが表示される。
↑左上にある[有効]ラジオボタンを選択し、[ベースラインファイルキャッシュの最大サイズ]に"0"を入力して、[OK]ボタンを押す。
↑[ベースラインファイルキャッシュの最大サイズを制御する]設定の状態が「有効」になっている。
レジストリを確認すると、以下のキーに MaxPatchCacheSize 値が追加されており、それぞれデータが"0"となっていることを確認できました。
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\Installer
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\{ED679EDC-AEF0-4863-ADE1-DCF37ACC90C0}Machine\SOFTWARE\Policies\Microsoft\Windows\Installer
直接レジストリを修正するよりも、グループポリシーエディタで変更したほうが安全だと思います。
ちなみに、調査中に msizap.exe および msicuu2.exe というインストーラを削除する(?)ためのツールの存在を知ったんですが、今はもう正式には配布していないみたいですね。