Windows10で巨大なWinSxSフォルダーを管理する方法

Windows10で巨大なWinSxSフォルダーを管理する方法

システムのディスク容量が少なくなると、サードパーティのユーティリティを使用して、大きなファイルや小さなファイルのコレクションを一目で見つけることができます。ここで、WinSxSフォルダーに出くわす可能性があります。サイズは約5〜10 GBで、多くのユーザーにとって、Windowsの世界のブラックボックスのようなものです。





当然、WinSxSにインストールされているファイルは正確には何であり、なぜそれが非常に大きいのかという疑問が生じます。 Web検索とフォーラムには、このフォルダーに関する質問がたくさんあります。 WinSxSの秘密とそれを管理する正しい方法をわかりやすく説明しましょう。





WinSxSの説明

WinSxS(Side-by-Side)は、 'を解決するために作成されました DLL地獄 'WindowsOSの問題。簡単に言うと、プログラムがダイナミックリンクライブラリ(DLL)ファイルを変更して、同じDLLを使用する必要がある他のアプリケーションの重要な機能に影響を与える場合が含まれます。





たとえば、アプリにバージョン番号1.0.2のDLLが必要であるとします。別のアプリがリソースを別のバージョン、たとえば1.0.3に置き換えると、バージョン1.0.2に依存する以前のアプリがクラッシュするか、互換性の問題が発生するか、さらに悪いことにブルースクリーンが発生します。

WinSxSの発売

Windows XPでは、コンポーネントストアが適切に起動しました。この場合、各コンポーネント(DLL、OCX、EXE)はWinSxSというディレクトリにあります。ソフトウェアおよびハードウェアパッケージによってインストールされたDLLのすべての異なるバージョンを保存し、オンデマンドで正しいバージョンをロードします。



では、アプリはどのバージョンのDLLをロードする必要があるかをどのようにして知るのでしょうか。これは、 ' マニフェストファイル 'は重要な役割を果たします。これには、プログラムの起動時にプログラムを処理する方法と正しいバージョンのDLLをオペレーティングシステムに通知する設定が含まれています。

各コンポーネントには、プロセッサアーキテクチャ、言語、バージョン、IDなどの一意の名前を持つIDがあります。これらのコンポーネントの特定のバージョンは、パッケージにまとめられます。これらは、システムを最新の状態に保つためにWindowsUpdateおよびDISMによって使用されます。





このタイムラインは、主要なOSのアップグレードごとにWinSxSが徐々に改善されていることを示しています。

ハードリンクは、WindowsOS全体で使用されます。 WinSxSに関しては、コンポーネントがシステム上に存在する唯一の場所です。コンポーネントストア外のファイルの他のすべてのインスタンスは、WinSxSフォルダーにハードリンクされています。では、ハードリンクとは何ですか?





によると Microsoft Docs 、ハードリンクは、2つのファイルがディスク上の同じ場所を参照できるようにするファイルシステムオブジェクトです。これは、Windowsが余分なスペースをとることなく同じファイルの複数のコピーを保持できることを意味します。

Windowsを更新するたびに、コンポーネントのまったく新しいバージョンがリリースされ、ハードリンクを介してシステムに投影されます。古いものは信頼性のためにコンポーネントストアに残りますが、ハードリンクはありません。

の助けを借りて fsutil コマンドを使用すると、任意のシステムファイルのハードリンクを確認できます。押す Win + X と選択します コマンドプロンプト(管理者) 、次に入力します

ラップトップはwifi接続ウィンドウをドロップします10
fsutil hardlink list [system file path]

たとえば、「audiosrv.dll」というシステムファイルのハードリンクを確認したい場合は、次のように入力します。

fsutil hardlink list 'C:WindowsSystem32audiosrv.dll'

WinSxSの重要性

コンポーネントストアは、Windowsのカスタマイズと更新に必要な機能をサポートする上で重要な役割を果たします。これらは次のとおりです。

  • 起動の失敗や破損からシステムを回復する
  • オンデマンドでWindows機能を有効または無効にする
  • 異なるWindowsエディション間でシステムを移動する
  • 問題のある更新をアンインストールする
  • WindowsUpdateを使用して新しいコンポーネントバージョンをインストールするには

WinSxSフォルダーサイズ

WinSxSには、PC上のハードウェアおよびソフトウェアとの互換性を維持するために必要なすべてのファイルが含まれています。 Windowsの最大の強みの1つは、 古いハードウェアとアプリを実行する 。ただし、このレガシー互換性には、ディスク容量とバグが犠牲になります。

に移動します C: Windows WinSxS 、それを右クリックして選択します プロパティ 。このフォルダは、約7.3GBのディスク領域を消費します。しかし、問題は、それは実際のサイズではないということです。その理由は、ファイルエクスプローラーや他のサードパーティツールが考慮しない「ハードリンク」です。

ハードリンクへの各参照を、場所ごとのファイルの単一インスタンスとしてカウントします。したがって、システムファイルがWinSxSディレクトリとSystem32ディレクトリの両方にある場合、ファイルエクスプローラーはフォルダーサイズを不正確に2倍にします。

WinSxSの実際のサイズを確認してください

Windowsコンポーネントストアの実際のサイズを確認するには、管理者特権のコマンドプロンプトウィンドウを開き、次のように入力します

Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

注: / AnalyzeComponentStore オプションは、Windows8以前では認識されません。

分析後、コンポーネントストアの実際のサイズは5.37GBになります。この値は、WinSxSフォルダー内のハードリンクを考慮に入れています。 Windowsと共有 ハードリンクされたファイルのサイズを示します。 最終クリーンアップの日付 最近完了したコンポーネントストアのクリーンアップの日付です。

WinSxSフォルダーのサイズを縮小する方法

多くのユーザーは、WinSxSフォルダーからファイルを手動で削除できるかどうかをよく尋ねます。答えは ビッグノー

Windowsに損傷を与える可能性が高く、重要なWindowsUpdateが正しくインストールされない可能性があります。 WinSxSフォルダーからファイルを削除することに成功したとしても、どのアプリが機能しなくなるかはわかりません。

あなたはしかしすることができます サイズを小さくする いくつかの組み込みツールを備えたWinSxSフォルダーの。ディスククリーンアップ、DISMコマンドなどのツールを使用し、Features on Demandを削除して、WinSxSフォルダーをトリミングします。

ディスククリーンアップツール

検索ボックスに「ディスククリーンアップ」と入力し、[ ディスククリーンアップ 。このウィンドウから、をクリックします システムファイルをクリーンアップします ボタン。これにより、ユーティリティが再起動し、すべてのクリーンアップオプションへのアクセスがロック解除されます。インストールファイル、以前のWindowsバージョンなどを削除できます。ディスククリーンアップツールは、Windows10をクリーンアップするための開始点です。

これを読む Windows10をクリーニングするための最良の方法を見つけるためのステップバイステップガイド

オンデマンドで機能を削除する

Windowsでは、デフォルトのWindows機能をオンデマンドで有効または無効にできます。いくつかの便利な機能を追加できます--- Hyper V、PDFに印刷、Windows Subsystem for Linux(WSL)など。

チェックを外した機能はWinSxSフォルダーに残り、ディスク領域を占有します。ストレージの量が少ないユーザーは、Windowsのインストールを可能な限りスリム化することをお勧めします。管理者特権のコマンドプロンプトウィンドウを開き、次のように入力します

DISM.exe /Online /English /Get-Features /Format:Table

機能名とそのステータスのリストが表示されます

システムから機能を削除するには、次のように入力します

DISM.exe /Online /Disable-Feature /featurename:NAME /Remove

(「NAME」をリストに記載されている機能の名前に置き換えてください)

あなたが実行する場合 / Get-Features もう一度コマンドを実行すると、ステータスが「」と表示されます。 ペイロードを削除すると無効になります 'だけでなく' 無効 。」後で、削除されたコンポーネントをインストールすることを選択した場合、Windowsはコンポーネントファイルを再度ダウンロードするように要求します。

DISMコンポーネントのクリーンアップ

Windows 8 / 8.1には、システムが使用されていないときにコンポーネントストアを自動的にクリーンアップする機能が組み込まれています。開ける タスクスケジューラ に移動します Microsoft> Windows>サービス 。アイテムを右クリックして、 走る。

タスクは、更新されたコンポーネントがインストールされてから少なくとも30日待ってから、前のバージョンのコンポーネントをアンインストールします。このタスクには1時間のタイムアウトもあり、すべてのファイルをクリーンアップできない場合があります。

DISM付き /クリーンアップ-画像 パラメータを使用すると、コンポーネントの以前のバージョンをすぐに削除でき(30日の猶予期間なし)、1時間のタイムアウト制限はありません。開ける コマンドプロンプト(管理者) と入力します

DISM.exe /online /Cleanup-Image /StartComponentCleanup

追加した場合 ResetBase スイッチを押すと、すべてのコンポーネントの置き換えられたバージョンをすべて削除できます。ただし、現在の更新をアンインストールすることはできません(たとえそれらが不完全であっても)ことを忘れないでください。

DISM.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase

次のコマンドは、サービスパックのアンインストールに必要なバックアップコンポーネントをすべて削除します。これは、Windowsの特定のリリースの累積的な更新のコレクションです。

DISM.exe /online /Cleanup-Image /SPSuperseded

Windowsファイルを削除してディスク領域を解放する

WinSxSコンポーネントストアは、Windowsの日常的な機能において重要な役割を果たします。したがって、スペースの問題の解決策として、ファイルを削除したり、WinSxSフォルダーを移動したりしないでください。 Windowsのアップグレードにより、代わりに他のスペースホッグを見つけるために使用できる詳細なレポートおよびクリーンアップツールが提供されました。

上記の手法に従うと、WinSxSフォルダーのサイズをわずかに小さくすることができます。この記事を読んで調べてください ディスクスペースをさらに解放するために削除できるWindowsファイルとフォルダ

グーグル広告は私の電話にポップアップし続けます
共有 共有 つぶやき Eメール コマンドプロンプトを使用してWindowsPCをクリーンアップする方法

Windows PCのストレージ容量が不足している場合は、これらの高速コマンドプロンプトユーティリティを使用してジャンクを一掃します。

次を読む
関連トピック
  • ウィンドウズ
  • ファイルシステム
  • ウィンドウズ・エクスプローラ
  • ストレージ
  • トラブルシューティング
著者について ラフルサイガル(162件の記事が公開されました)

アイケアス​​ペシャリティのM.Optom学位を取得したラフルは、大学で長年講師を務めました。他の人を書いたり教えたりすることは常に彼の情熱です。彼は現在、テクノロジーについて書き、それをよく理解していない読者が理解できるようにしています。

RahulSaigalのその他の記事

ニュースレターを購読する

ニュースレターに参加して、技術的なヒント、レビュー、無料の電子書籍、限定セールを入手してください。

購読するにはここをクリックしてください