Windowsアップデートの更新プログラムをコマンドラインからインストール/アンインストールする方法

Windowsアップデートの更新プログラムをコマンドラインからインストール/アンインストールする方法

本記事での更新プログラム適用方法

Windowsアップデートは自動でできますが、以下のようなケースでは更新プログラムをダウンロードして、適用するパソコンへ格納した後、インストールする必要があります。

  1. インターネットできないパソコンに更新プログラムを適用するとき
  2. 自動で行うWindowsアップデートは、インターネットに接続していないとできません。

  3. IT企業が納めるシステムに更新プログラムを適用するとき
  4. IT企業が会社や官公庁に納めるシステムは、原則、自動のWindowsアップデートは行いません。理由は、予め検証用システムに更新プログラムを適用し、テストで問題ないことを確認してから本番用システムに適用する必要があるからです。

自動で適用できないパソコンには、以下の手順で行います。この手順を本記事で解説します。

1)マイクロソフトのサイトからパッチをダウンロードする。
2)ダウンロードしたパッチファイルを適用対象のパソコンのディスクに保存する。
3)コマンドラインでパッチファイルをパソコンに適用する。

更新プログラムのインストール

例えば、マイクロソフトのサイトから「 Windows6.1-KB2425227-x64.msu 」というパッチファイルをダウロードして、このパッチファイルを「 c:¥patch¥ 」というフォルダに格納した状態でインストールするコマンドは、以下の通りです。

wusa.exe c:¥patch¥Windows6.1-KB2425227-x64.msu /quiet /norestart

「 c:¥patch¥ 」(¥は半角にすること)は、パッチファイルを格納しているフォルダ名

「 Windows6.1-KB2425227-x64.msu 」は、マイクロソフトのサイトからダウロードしたパッチファイル名

wusa.exe : 更新プログラムを適用するコマンド

/quiet : Wusa.exeをユーザーによる操作を必要としないQuiet モードで実行するオプション

/norestart : このコマンドを実行した後にWindowsを再起動させないオプション






更新プログラムのアンインストール

例えば、「KB3055664」というホットフィックスの更新プログラムをコマンドラインでアンインストールするコマンドは、以下の通りです。

wusa.exe /uninstall /kb:3055664 /quiet /norestart

wusa.exe : 更新プログラムを適用するコマンド

/uninstall : アンインストールを実行させるオプション

/norestart : このコマンドを実行した後にWindowsを再起動させないオプション






バッチ処理で半自動に更新プログラムを適用する方法

わざわざコマンドラインを打つのが面倒であったり、たくさんのバッチファイルを適用するとき、バッチ処理を作成し、半自動で更新プログラムのコマンドラインを実行できます。

バッチ処理でパッチファイルをインストールする方法

以下の例は、「 Windows6.1-KB2425227-x64.msu 」と「 Windows6.1-KB2488227-x64.msu」の2つのパッチファイルをインストールするパッチ処理の例です。

バッチ処理を作成する手順

1)メモ帳を開いて、以下の「 — ここから 」〜「— ここまで」をコピーして貼り付けます。

2)「c:¥patch¥」の部分は、実際に自分が更新プログラムを格納するフォルダ名に変更します。

3)「 Windows6.1-KB2425227-x64.msu 」と「 Windows6.1-KB2488227-x64.msu」は、実際に適用する更新プログラムのファイル名に変更します。

4)もし、3つ目の更新プログラムを増やすなら、以下の通り「 echo “3” 」という「3つ目の更新プログラム」を示すように変更します。

Wusa.exe c:¥patch¥Windows6.1-KB249999-x64.msu /quiet /norestart
echo “3”

バッチ処理の解説

  1. 「 echo “1” 」は、「いくつまでの更新プログラムのインストールが終わったか」を確認するためのものです。更新プログラムは適用に時間が掛かる場合があり、バッチ処理がどこまで進んでいるのか分かりやすくするためです。従って、更新プログラムの分だけ、カウントアップします。
  2. “Windowsパッチを適用しますか? (y or n):”は、誤ってバッチ処理を起動しても、処理をせず終了させるためです。
  3. 「pause」は、バッチ処理が終わったとき、メッセージが出てバッチ処理を最後の最後で止めるものです。バッチ処理がそのまま終わると画面が消えてしまうので、エラー等を確認するため、最後の最後でバッチ処理を一時停止させます。

— ここから
@echo off

set /p YORN=”Windowsパッチを適用しますか? (y or n):”
if not ‘%YORN%’==’y’ (
echo “Windowsパッチの適用を中止します”
GOTO END
) else (

Wusa.exe c:¥patch¥Windows6.1-KB2425227-x64.msu /quiet /norestart
echo “1”

Wusa.exe c:¥patch¥Windows6.1-KB2488227-x64.msu /quiet /norestart
echo “2”

echo “Windowsパッチの適用が完了しました”

)

:END

pause
— ここまで

バッチ処理でパッチファイルをアンインストールする方法

以下の例は、「 KB2425227 」と「 KB2499999」の2つのパッチファイルをアンインストールするパッチ処理の例です。

1)メモ帳を開いて、以下の「 — ここから 」〜「— ここまで」をコピーして貼り付けます。

2)「c:¥patch¥」の部分は、実際に自分が更新プログラムを格納するフォルダ名に変更します。

3)「 kb:2425227 」と「 kb:2499999 」は、実際にアンインストールする更新プログラムのKB番号を「 kb:(KB番号) 」に変更します。

 例えば、「 KB2425227 」なら「 kb:2425227 」と記載します。

4)もし、3つ目の更新プログラムを増やすなら、以下の通り「 echo “3” 」という「3つ目の更新プログラム」を示すように変更します。

wusa.exe /uninstall /kb:2411111 /quiet /norestart
echo “3完了”

— ここから
@echo off

set /p YORN=”アンインストールしますか (y or n):”
if not ‘%YORN%’==’y’ (
echo “処理を中止します”
GOTO END
) else (

wusa.exe /uninstall /kb:2425227 /quiet /norestart
echo “1完了”

wusa.exe /uninstall /kb:2499999 /quiet /norestart
echo “2完了”

)

:END

pause
— ここまで

スポンサーリンク

シェアする

フォローする