WSUSからの配信でダウンロードエラーが発生した時の対処法
こんばんは。
nanana-blog管理人のナナナです。
ブログを訪問し記事を読んでいただきありがとうございます。
私が勤めている会社ではWSUS(Windows Server Update Service)を構築していて、そこからWindows Updateの更新プログラムを配信しています。
テスト用のパソコンでは問題なくインストールできるのに、全社に向けて配信をかけるとダウンロードエラーが発生するパソコンが必ず出てきます。
そんな時は必ずSoftwareDistributionフォルダの再作成をするようにしています。
本日はWindowsUpdateのダウンロード時にエラーが発生した時の対処方法を紹介します。
SoftwareDistributionフォルダには何が入っているのか
SoftwareDistributionフォルダはCドライブのWindowsフォルダの中にあります。
ダウンロードされたWindow Updateのプログラムパッケージや適用履歴のデータベース、ログファイルなどが保存されています。
このフォルダの中にあるファイルが破損すると、WindowsUpdateの動作がおかしくなってしまいエラーが発生してしまいます。
SoftwareDistributionフォルダを再作成する方法
数台のPCであれば手動でやりますが、台数が多いとだんだん面倒になってくるので最近はバッチファイルを作成して、ユーザに実行してもらうようにしています。
バッチファイルの内容は次の通りです。
スクリプト
set dt=%date:~0,4%%date:~5,2%%date:~8,2%
net stop wuauserv net stop bits cd /d c:\ cd c:\Windows ren SoftwareDistribution SoftwareDistribution-%dt% net start bits net start wuauserv
スクリプトの解説
1行目は変数にバッチファイル実行日をセットしています。
3、4行目でサービスを停止しています。この2つのサービスを停止しないと、SoftwareDistributionフォルダの再作成に失敗してしまいます。
3行目の「wuauserv」はWindowsUpdateのサービスです。
4行目の「bits」はBackground Intelligent Transfer Serviceの略で、使用していない通信回線を利用して他のプログラムの邪魔をしないでファイル送受信をするサービスです。
6、7行目でCドライブのWindowsフォルダに移動しています。
8行目でSoftwareDistributionフォルダのファイル名を変更しています。ファイル名の最後に1行目でセットをした日付を追記しています。
10、11行目で停止をしたサービスを開始させています。
スクリプトの使い方
コマンドプロンプトを管理者モードで起動してスクリプトを貼り付けて実行することができます。
複数台のパソコンで実行するなら、バッチファイルを作成して各パソコンで管理者モードで実行する方法をおすすめします。
スクリプトを実行する時の注意点
このスクリプトを実行すると、更新プログラムの履歴がなくなってしまいます。
過去にインストールした更新プログラムを調べたくても分からなくなってしまうので、それが困る場合は、事前にメモを取っておくといいかもしれません。
最後に
いかがだったでしょうか。
Windows10のパソコンだと、WindowsUpdateのダウンロードがエラーになることが少なくなりましたが、Windows7のパソコンだと結構発生します。
もし発生したらこのスクリプトを一度試してみてください。