Windows 11のシステムファイルをキャッシュしている「コンポーネントストア」の最適化手順

Windows 11のシステムファイルをキャッシュしている「WinSXS」フォルダの最適化手順を紹介します

実は、Windowsの起動等に必要なシステムファイルはすべて「C:¥Windows¥System32¥WinSXS」(コンポーネントストア)にキャッシュされています。

Windows 10/11に標準搭載されているOSリカバリー機能や、コマンドプロンプト用ツール「DISM」「SFC」では、主にこのコンポーネントストアから正常なシステムファイルの復元を行っています。

Windows Update等で更新プログラムを適用すると、旧バージョンのシステムファイルのバックアップも作成されるため、使っているうちに容量が肥大化してしまうことが多々あります。

当然システムフォルダなので直接ファイルを削除するのは危険ですが、コマンドプロンプトから簡単な操作でキャッシュされているシステムファイルを最適化できます。

ファイル修復でおなじみ「DISM」コマンドでコンポーネントストアの内容を一発で最適化

StartComponentCleanup
コマンドを実行すると自動的に古くなったシステムファイルの圧縮が実行される。

今回使用するツールはシステムファイル修復でおなじみ「DISM」コマンドです。更新プログラムの適用でコンポーネントストアの容量が増えてきてしまった場合、以下のコマンドを打ち込むだけで最適化が完了します。

DISM /Online /Cleanup-Image /StartComponentCleanup

更新プログラムの適用時に作成された、古いシステムファイルのバックアップもすべて削除した上で最適化を行う場合は、上記コマンドに「/resetbase」オプションを追加します。 これでコンポーネントストアの容量をさらに削減できます。

ただし、resetbase オプションを付けて古いシステムファイルのバックアップを削除した場合、後から更新プログラムのアンインストールが一切できなくなってしまいます。 そのため、基本的には「DISM /Online /Cleanup-Image /StartComponentCleanup」を実行するだけで十分です。

resetbase
バックアップされたシステムファイルを削除することでさらに容量を解放できるが、更新プログラムのアンインストールが出来なくなってしまうので注意。

長期間利用していて、古いシステムファイルのバックアップでOSがインストールされているシステムドライブが圧迫されてきた場合のみ、/resetbase オプションを追加すると良いでしょう。

なお、コンポーネントストアには一部別のフォルダに実体が存在する「ハードリンク」が設定されたファイルも含まれています。 そのため、実はエクスプローラーからは正確な容量を取得することができません。

AnalyzeComponentStore

ただし、以下のコマンドを実行することで、前回コンポーネントストアを最適化した日付と共に実際の容量を確認することが可能です。

DISM /Online /Cleanup-Image /Analyzecomponentstore

実はタスクスケジューラーからも起動可能

タスクスケジューラー内「StartComponentCleanup」タスク
実はタスクスケジューラーからも実行可能。

また、手動で上記コマンドを実行せずとも、実は更新プログラムの適用から90日が経過した際に自動的にコンポーネントストアの最適化が実行されるタスクが「タスクスケジューラー」に登録されています。

タスクスケジューラーを起動して、[タスク スケジューラ ライブラリ] – [Microsoft] – [Windows] – [Servicing] を開くと、「StartComponentCleanup」タスクが登録されています。

こちらを直接実行しても、コマンドプロンプトから「dism /online /cleanup-image /startcomponentcleanup」を実行したときと同じように、コンポーネントストアの最適化を実施することが可能です。

まとめ

わざわざ手動でコマンドプロンプトからコマンドを実行しなくても、定期的にコンポーネントストアの最適化が実行されているため、基本的には特にユーザー側で対応する必要はありません。

ただ、長期的に利用していると古いシステムファイルのバックアップなどで意外と容量が増えていることもあります。

OSのインストールや初回起動から1〜2年程度経過した環境であれば、「/resetbase」オプションを付けた状態でコンポーネントストアを整理するのも良いかもしれません。

もともと「DISM」コマンドは、マスター作成などWindowsのイメージ全体を操作するツールとしてWindows 7で初めて実装されたツールとなります(ちなみにシステム修復で利用される /restorehealth オプションが利用可能になったのはWindows 8からになります)。

OSのシステム修復だけでなく、インストールされているドライバーのバックアップやOS全体のイメージバックアップ等も行える便利なツールなので、こちらについてもいずれ記事として紹介できればと考えています。

ページトップへ