画像提供:マイナビニュース

写真拡大

○Dism.exeで直接クリーンアップを実行する

Windows XPの時代からMicrosoftは、カスタマイズや更新に必要な機能をサポートする「コンポーネントストア」という仕組みをOSに実装している。破損したシステムファイルの復元や、問題が発生した更新プログラムのアンインストールなどに用いられるため、OSの安定性を向上させる上で重要な存在だ。

問題はコンポーネントストアの容量だ。そこで、コンポーネントストア(WinSxS)フォルダーを、Dism.exeを使って手動クリーンアップしてみよう。

WinSxSフォルダーの実体は「%SystemRoot&\WinSxS」フォルダーだが、Windows 10 Insider Previewを選択しているデスクトップPCでプロパティダイアログを開くと、約6.25GBと示されている。だが、これは正しい数字ではない。詳細な数字を確認するには、管理者権限を持つコマンドプロンプト上で「Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore」を実行する。

上図のように、環境によって数値は違うが、WinSxSフォルダーは基本的に自動メンテナンスされる。「タスクスケジューラ」の「タスクスケジューラライブラリ\Microsoft\Windows\Servicing」に登録された「StartComponentCleanup」が、コンポーネント更新30日後に不用になった古いコンポーネントを削除しているのだ。

この処理を手動で実行するには、タスクを手動実行しても構わないが、管理者権限を持つコマンドプロンプト上で「Dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase」を実行すればよい。各パラメーターも紹介しておこう。

「StartComponentCleanup」は、更新済みコンポーネントを除く古いコンポーネントをすべて削除する。こちらの場合は30日の猶予などは考慮されない。「ResetBase」は各コンポーネントに対する古いバージョンをすべて削除するというもの。いずれも、ストレージ空き容量の確保という目的には合致する。

ただし、前述のタスクが定期的実行されていない環境では、処理完了までに結構な時間を要する場合もあるので、時間に余裕があるときに試していただきたい。

阿久津良和(Cactus)