Windows 10
 Computer >> コンピューター >  >> システム >> Windows 10

Windows 10のインストールイメージ(WIMファイル)から不要なアプリ・機能・エディションを削除する方法

このガイドでは、Windows 10のインストールイメージ(install.wimファイル)から、Microsoft Storeのプロビジョニング済みアプリ、機能(Capabilities)、そして使用しないWindowsエディションを削除する方法を解説します。操作はDISMまたはPowerShellを使って手動で行いますが、スクリプトで自動化することも可能です。最終的には、不要なプログラムやコンポーネントを一切含まない、中核的なストアアプリと機能だけを残したクリーンなWindows 10イメージを作成できます。

この記事は、企業環境向けにクリーンインストールやビルドアップグレード用のWindows 10イメージを整理・最適化したい場合に役立ちます。たとえばSCCMを使ってsetup.exe /auto upgradeでユーザーPCをWindows 10 1803から1909へアップグレードした際、以前アンインストールしておいたUWP(Microsoft Store)アプリが再び現れてしまうという問題が発生することがあります。

注意:この記事ではWindows 10 Build 1909を例に説明しますが、同じ手順は他のWindows 10ビルドにもそのまま適用できます。

準備:DISMの最新版を入手する

Windows 10をPCにインストールするとき、実際に展開されるのはWindowsイメージ\sources\install.wim(またはinstall.esd)です。インストールイメージがISOファイルとして保存されている場合は、仮想CDドライブにマウントし、E:\sources\install.wim(またはinstall.esd)をローカルディスクにコピーしましょう。ディレクトリ全体をコピーしても構いませんが、必要なのは.wimファイルだけです。

.wimファイルの変更にはDISMコマンドを使用します。古いWindowsイメージを扱う場合でも、必ず最新バージョンのDISMを使用してください。他のOSバージョンからWindows 10のinstall.wimを操作するには、Windows ADK(Windows Assessment and Deployment Kit)のインストールが必要です。ADKはMicrosoft公式サイトからダウンロードでき、現在の最新版は「ADK for Windows 10, version 2004」です。ADK一式ではなく、「Deployment Tools」のみをインストールすれば十分です。

イメージ変更コマンドを実行する際は、DISM.exeへのフルパスを指定することをおすすめします(例:C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\amd64\DISM\dism.exe)。古いバージョンのDISMでは、新しい.wimファイルを正しく扱えない場合があります。

install.wimから不要なWindowsエディションを削除する方法

Windows 10 Media Creation Toolで生成したインストールイメージには、デフォルトで利用可能なすべてのWindowsエディションが含まれています。普段使いのエディションが1つだけ(通常はProfessionalかEnterprise)ならば、それ以外のエディションをイメージから取り除けます。

なお、不要なエディションを削除しても.wimファイルのサイズは大きく減りません。削除されるのはXMLファイルや一部のメタデータのみだからです。

まず、install.wim内に含まれるWindows 10エディションの一覧を取得します。

Dism /Get-WimInfo /WimFile:"e:\sources\install.esd"

この例では、Windows 10 Home、Home Single Language、Education、Enterprise、Proなど、インデックス1〜9までの9つのエディションがイメージに含まれています。

ESDファイルから特定のエディションだけをWIMイメージとして書き出すには、次のコマンドを使用します。

Dism /export-image /SourceImageFile:c:\sources\install.esd /SourceIndex:6 /DestinationImageFile:c:\iso\install.wim /Compress:max /CheckIntegrity

このコマンドにより、Windows 10 Proのみを含む新しいinstall.wimが作成され、そのインデックスは1に変わります。

残ったイメージの詳細情報を確認してみましょう。

dism /get-wiminfo /wimfile:c:\iso\install.wim /index:1

Index : 4
Name : Windows 10 Pro
Description : Windows 10 Pro
Size : 14,754,777,474 bytes
Architecture : x64
Version : 10.0.18363
Edition : Professional
Languages : en-US (Default)

複数のエディションをinstall.wimに残したい場合は、DISMの/Delete-Imageパラメータで不要なものだけを削除できます。たとえば、インデックス1と3のHomeおよびHome Single Languageを削除するには次のように実行します。

Dism /Delete-Image /ImageFile:c:\sources\install.wim /Index:1 /CheckIntegrity
Dism /Delete-Image /ImageFile:c:\sources\install.wim /Index:3 /CheckIntegrity

/CheckIntegrityパラメータを付けておくと、DISMがイメージの構造的破損を検出した場合に操作を取り消せるため安全です。名前を指定して削除することも可能です。

Dism /Delete-Image /ImageFile:c:\sources\install.wim /Name:"Windows 10 Education" /CheckIntegrity

PowerShellを使って削除することもできます。

Remove-WindowsImage -ImagePath "c:\sources\install.wim" -Index 2 –CheckIntegrity

インストールイメージから組み込みUWPアプリを削除する

Windows 10のインストールイメージから、プロビジョニング済みのUWP(Microsoft Store)アプリをすべて削除できます。これによりインストール時間の短縮とディスク容量の節約になり、不要なウィジェットもなくなるため、ユーザーにとってよりシンプルなOS環境を提供できます。

まずドライブ上にC:\mountというフォルダを作成し、そこにWindowsインストールイメージ(WIM)をマウントします。

dism.exe /mount-wim /wimfile:c:\iso\install.wim /mountdir:c:\mount /index:1

ここで/index:1を指定しているのは、前述の手順で不要なエディションを削除済みだからです。必要なイメージのインデックスを指定してください。

WIMファイルをマウントしたら、プロビジョニング済みのストアアプリパッケージ一覧を表示できます。出力を見やすくするため、テキストファイルに出力するのがおすすめです。

Dism.exe /image:c:\mount /Get-ProvisionedAppxPackages > c:\ps\apps.txt

各アプリの情報は次のような形式で表示されます。

DisplayName : Microsoft.BingWeather
Version : 4.25.20211.0
Architecture : neutral
PackageName : Microsoft.BingWeather_4.25.20211.0_neutral_~_8wekyb3d8bbwe

ここからが本番です。不要なアプリを削除していきます。ただし、Edge、Cortana、Contact Supportなどの一部アプリは削除できません(GPOで無効化することは可能です)。また、新しいWindows 10ビルドにはクラシック(デスクトップ)版が存在しないため、電卓(Microsoft.WindowsCalculator)、フォトビューアー(Microsoft.Windows.Photos)、Microsoft.VP9VideoExtensionsは残しておくことをおすすめします。さらにMicrosoft.WindowsStoreも削除しないでください。一度削除すると、後から復元するのが非常に困難だからです。

アプリは1つずつでも一括でも削除できます。マウントしたイメージからモダンアプリを削除するには、PackageNameを指定します。BingWeatherを削除する例は以下の通りです。

dism.exe /image:c:\mount /Remove-ProvisionedAppxPackage /PackageName:Microsoft.BingWeather_4.25.20211.0_neutral_~_8wekyb3d8bbwe

同じ要領で、不要な組み込みアプリをすべて削除します。作業が完了したら、イメージをアンマウントして変更を保存します(手順は後述)。

PowerShellスクリプトで一括削除する方法

TechNet Galleryで公開されている既製のPowerShellスクリプトを使えば、プリインストールアプリをまとめて削除することもできます。この方法の利点は、wimファイルを手動でマウントする必要がないことです。.wimファイルのパスを指定してスクリプトを実行するだけです。ただし、問題が発生した場合、原因がDISM側にあるのかスクリプト側にあるのか切り分けが難しくなる点には注意が必要です。

PowerShellを管理者として開き、次のコマンドを実行します。

.\removeapps.ps1 -pathtowim c:\Windows10\sources\install.wim -selectapps $true

各アプリが1行ずつ表示され、削除する(Y)か残す(N)かを選択できます。すべてのアプリについて選択が終わると、スクリプトが不要なアプリを削除します。DISMと異なり、.wimへの変更保存はスクリプトが自動で行ってくれます。

すべて削除してよい場合は、コマンド末尾のselectapps $trueパラメータを外せば、削除可能なアプリケーションがすべて削除されます。

なお、PowerShellの実行ポリシー設定によってスクリプトの実行がブロックされることがあります。その場合は次のコマンドで実行ポリシーを変更してください。

Set-ExecutionPolicy -ExecutionPolicy Unrestricted

これでPS1スクリプトが実行できるようになります。

イメージから機能(Capabilities)とフィーチャーを無効化・削除する

DISMを使えば、Windows 10インストールイメージから特定の機能を削除(または追加)できます。まず、マウント済みイメージにプリインストールされているコンポーネントの一覧を取得します。

Dism.exe /image:c:\mount /Get-Capabilities

コンポーネントは「Installed(インストール済み)」または「Not Present(未インストール)」のいずれかの状態です。PowerShellでも一覧を表示できます(この例ではインストール済みコンポーネントのみ表示)。

Get-WindowsCapability -Path c:\mount|?{$_.State -eq "Installed"}

Windows 10 1909には、次のコンポーネントがプリインストールされています。

App.Support.QuickAssist~~~~0.0.1.0
Browser.InternetExplorer~~~~0.0.11.0
Hello.Face.18330~~~~0.0.1.0
Hello.Face.Migration.18330~~~~0.0.1.0
Language.Basic~~~en-US~0.0.1.0
Language.Handwriting~~~en-US~0.0.1.0
Language.OCR~~~en-US~0.0.1.0
MathRecognizer~~~~0.0.1.0
Media.WindowsMediaPlayer~~~~0.0.12.0
OneCoreUAP.OneSync~~~~0.0.1.0
OpenSSH.Client~~~~0.0.1.0

インストール済みのコンポーネントは名前を指定して削除できます。顔認証コンポーネントHello.Faceを削除する例は次の通りです。

Dism.exe /image:c:\mount/Remove-Capability /CapabilityName:Hello.Face.18330~~~~0.0.1.0

逆に、イメージへ機能を追加することもできます。たとえば、RSAT管理ツールをすべてインストールするには次のようにします。

Get-WindowsCapability -Path c:\mount |? {$_.Name -like "*RSAT*" -and $_.State -eq "NotPresent"} | Add-WindowsCapability -Path c:\mount

同じ方法で他のコンポーネントも有効化/無効化できます。たとえば.NET 3.5を有効化し、SMB1を無効化するには次のコマンドを実行します。

dism.exe /image:C:\mount /enable-feature /featurename:netfx3 /all /source:E:\sources\sxs
dism.exe /image:C:\mount /disable-feature /featurename:smb1protocol

同様の手順で、ドライバーの統合や最新のセキュリティ更新プログラムの適用も行えます。

Windows 10 WIMイメージの最適化

イメージへの変更が完了したら、/cleanup-imageパラメータを使って最適化とクリーンアップを行います。

/ResetBaseオプションを付けて、古いバージョンのコンポーネントを削除します。

Dism /Image:C:\Mount /cleanup-image /StartComponentCleanup /ResetBase

続いてDism /ScanHealthでイメージの整合性をチェックします。

DISM /Image:C:\Mount /Cleanup-Image /ScanHealth

最後に、イメージをアンマウントして変更をWIMファイルに保存します。

dism.exe /unmount-wim /mountdir:c:\mount /commit

変更を破棄したい場合は、/commitの代わりに/discardパラメータを使用してください。

容量をさらに節約したい場合は、install.wimをinstall.esdに圧縮することもできます。

Dism /Export-Image /SourceImageFile:c:\iso\install.wim /SourceIndex:1 /DestinationImageFile:c:\iso\install.esd /Compress:recovery

その後、完成したinstall.wim(install.esd)をWindowsインストールメディアにコピーします。コピーするのは.wimファイルだけで、他のファイルは更新しないでください。

インストールファイルからISOイメージを作成するには、無料のポータブルソフト「Folder2ISO」などを利用すると便利です。

  1. Windows 10のスタートメニューから「最も使用されているアプリ」を削除する方法

    Windows 10は、カラフルなインターフェースや革新的なアプリを備えていますが、決して完璧なOSではありません。バグや不具合も少なくなく、Microsoftがオーブンから出したばかりの「焼き加減が足りないクッキー」だったと言っても過言ではありません。 しかし、Windows 10の大きな魅力のひとつがカスタマイズ性の高さです。たとえば、スタートメニューに表示される「最も使用されているアプリ」の一覧は、自由にコントロールすることができます。 特定のアプリだけをリストから外したい場合も、リスト自体を完全に表示したくない場合も、簡単な操作で対応可能です。この記事では、「最も使用されているアプリ」

  2. Windows 10からトロイの木馬を検出・削除する方法【完全ガイド】

    インターネットのない生活はもはや想像できません。ハッカーはこの現実につけ込み、トロイの木馬やウイルスといった脅威をネット経由で拡散しています。これらのマルウェアはシステムに侵入するだけでなく、PCを乗っ取って金銭を奪おうとします。だからこそ、適切な対策を講じ、PCへの感染を未然に防ぐことが重要です。 ウイルス・トロイの木馬・マルウェアを最も簡単に検出・削除する方法 「マルウェア」とは、ランサムウェア、ワーム、アドウェア、トロイの木馬などを総称する言葉です。PCやスマートフォンに感染しようとする悪意のあるソフトウェアであり、これらの脅威からシステムを守る最も手軽な方法は、優れたアンチウイルスソ