オフラインWSUSのwsusutil export/importで置き換えできない原因と対処法(メタデータ混在・欠落コンテンツ復旧)

オフライン(切断)環境のWSUSは、オンライン側から wsusutil export/import で更新メタデータを取り込み、WSUSContent をコピーして運用します。しかしエクスポート不完全で欠落コンテンツが出ると、過去分を再インポートしてもメタデータが混在しがちです。本記事では「置き換え(差し替え)できない理由」と、確実に復旧する実務手順を整理します。

目次

オフラインWSUSの「エクスポート/インポート」運用で何が起きているのか

まず前提として、WSUS(Windows Server Update Services)は大きく次の2つを持っています。

  • メタデータ(SUSDB):更新プログラムの情報、適用条件、置き換え(superseded)関係、承認状態など
  • コンテンツ(WSUSContent):実際に配布する更新ファイル本体(.cab / .msu / .psf など)

切断環境ではMicrosoft Updateへ直接取りに行けないため、オンライン側WSUSで揃えたメタデータとコンテンツを、オフライン側へ「運ぶ」ことになります。その代表的な手段が wsusutil.exe export/import と WSUSContentのコピーです。

要素export/importで扱う別途コピーが必要よくある誤解
更新メタデータ(SUSDB)○(cabに格納してimport)-「importすれば全部そろう」と思いがち
更新ファイル本体(WSUSContent)×○(フォルダをコピー)cabの中に更新ファイルが入っていると思いがち

今回のトラブルは、ある月のエクスポート・取り込みのどこかで コンテンツが欠落し、復旧のために「過去の正常なエクスポート(例:5月)」を再インポートしたところ、新しい月のメタデータが消えずに残るというものです。

結論:wsusutil import は「置き換え型」ではなく「追記型」

先に結論を整理します。

  • wsusutil import には、インポートしたcabと完全一致するように既存メタデータを削除する機能はありません。
  • そのため、「このエクスポート状態に完全に戻したい(差し替えたい)」という要件は、importの実行だけでは成立しにくいです。

ここを誤解すると、復旧作業が泥沼化します。「5月の正常cabを入れ直せば、6月分の不整合も消えるはず」と期待しても、WSUSは“スナップショット復元”のように動きません。importは基本的に 不足分をDBに取り込む動作であり、既に存在しているデータを“巻き戻す”設計ではないためです。

「過去の正常エクスポート」を再インポートしても戻らない理由

オフラインWSUSでメタデータが混在する理由を、運用目線で噛み砕くと次の通りです。

  • WSUSの更新メタデータは、月ごとの単純な“1セット”ではなく、更新の追加・改訂(Revision)・置き換え関係が積み重なって管理される
  • importは 「存在しないものを追加する」方向に働き、「今あるものを削除して整合させる」方向には働かない
  • その結果、6月に入った(途中で欠落が生じた)メタデータが残り、5月のcabを入れても 5月+6月が同居しやすい

つまり、質問の核心である「置き換え(差し替え)インポート」は、WSUSの標準機能としては期待しない方がよい、という結論になります。

まずは原因切り分け:欠落コンテンツはどこで起きたか

同じ「コンテンツ欠落」でも、原因によって最短ルートが変わります。切り分けをせずにオフライン側を触り始めると、直るものも直りません。

症状原因候補確認ポイント優先アクション
特定の更新だけダウンロード失敗/ファイルが見つからないコピー漏れ、途中で転送中断WSUSContentのファイル数・容量、robocopyログ、転送先の空き容量コンテンツ転送のやり直し(同一セットで再コピー)
多数の更新で欠落/毎回同じ更新が無いオンライン側WSUSにそもそもコンテンツが揃っていないオンライン側で該当更新のファイルが存在するか、同期・ダウンロード状況オンライン側でreset等によりコンテンツを整合→再エクスポート
メタデータはあるのに配布できない更新が増えていく「月次cab+差分コピー」の運用設計が破綻(混在が拡大)オフライン側の更新数推移、不要な製品・分類が混ざっていないか再構築またはDB+コンテンツの同時復元を検討

復旧方針の早見表:目的別に最適解を選ぶ

「何をゴールにするか」で、選ぶべき手段が変わります。ここが曖昧だと、復旧しても運用が安定しません。

ゴール推奨手段メリット注意点
エクスポートセットと完全一致させたい(置き換え)解決策A:オフラインWSUS再構築
(または解決策C:同時点バックアップ復元)
混在が消え、状態が読める作業量は増えるが、結果は最も確実
欠落コンテンツだけ揃えたい解決策B:オンライン側でreset→再エクスポート
+コンテンツ再コピー
再構築せずに回復できる可能性メタデータ混在が既にある場合は残る
とりあえず配布できる状態へ戻したい(応急処置)コンテンツ再コピー/不要更新整理/クリーンアップ停止時間を短くできる“完全一致”はできない。根本原因が残る

解決策A:オフラインWSUSを再構築して「置き換え」を実現する

メタデータを「輸出セットと完全一致」させたい場合、現実的に最も確実なのは オフライン側WSUSを空に戻すことです。要は、importが削除しないなら、先に受け皿を空にする発想です。

再構築前にやっておくべきこと(失敗しないための控え)

再構築自体はシンプルですが、運用設定を戻せずにハマるケースが多いので、先に“控え”を作ります。

項目控え方の例なぜ重要か
DB種別(WID / SQL)インストール時の選択、接続先をメモ再構築後の接続先が変わるとimport以前に詰まる
WSUSContentのパスD:\WSUS\WsusContent などを記録パスが変わるとコピー設計が崩れる
製品/分類WSUSコンソールの設定画面をスクリーンショット設定差異があると必要更新が見えない・増えすぎる
言語英語のみ/日本語+英語などを記録言語が増えるとコンテンツ量が急増する
コンピューターグループ/承認方針グループ名、承認ルールをメモ再構築後に配布が止まりやすい

再構築の大まかな流れ

ここでは「切断側を一度空にして、正常なエクスポートセット(例:5月)だけを入れる」流れを、実務で使える粒度でまとめます。

  1. 正常なエクスポートセットを確定
    例:5月の cab とログ、同月時点の WSUSContent(またはオンライン側で整合させたコンテンツ)
  2. オフライン側WSUSのバックアップ(任意だが推奨)
    「戻れない」状態を避けるため、SUSDB と WSUSContent を退避
  3. WSUSロールの削除
    役割と機能からWSUSを削除(WID/SQLの扱いは環境に合わせる)
  4. 残骸の整理
    古いWSUSContentやSUSDBが残ると、再インストール後に混在が再発しやすい
  5. WSUSを再インストール
    同じ製品/分類/言語方針を再設定できるように進める
  6. コンテンツをコピー
    正常セットのWSUSContentを所定パスへ配置
  7. wsusutil import を実行
    選んだcabのみを取り込み、状態を固定する

コマンド例(export/import/reset)

コマンドは環境差がありますが、形としては次のようになります。実行は管理者権限で行い、ログは月ごとに分けて保管すると後から追いやすくなります。

オンライン側(上流)でエクスポート

wsusutil.exe export wsus-export-2025-05.cab wsus-export-2025-05.log

オフライン側(下流)でインポート

wsusutil.exe import wsus-export-2025-05.cab wsus-import-2025-05.log

オンライン側で欠落コンテンツを整合(必要時)

wsusutil.exe reset

再構築でつまずきやすい落とし穴

  • 製品/分類/言語を“なんとなく”で再設定してしまう
    結果として更新数が爆増し、オフライン転送が破綻します。再構築前の控えを基準に揃えるのが安全です。
  • WSUSContentのコピーを差分運用にして整合が崩れる
    「今月分だけ追加コピー」運用は、途中で失敗した瞬間に欠落が残り続けます。後述の再発防止策で“壊れにくいコピー”へ寄せます。
  • オフライン側でresetを実行してしまう
    切断環境では取得先が無く、欠落が埋まらないどころかログだけ増えて切り分けが難しくなります。resetはオンライン側で使うのが基本です。

解決策B:オンライン側でresetしてから、正常なエクスポートを取り直す

発端が「オンライン側WSUSにあるべきコンテンツが揃っていなかった」場合、オフライン側の操作だけでは直りません。オンライン側で wsusutil.exe reset を実施し、メタデータに対して不足しているコンテンツを取り直してから、改めてエクスポートします。

resetを使うときの実務ポイント

  • ディスク空き容量と時間を確保
    不足コンテンツが多いと再取得量が増え、WSUSContentが膨らみます。
  • プロキシやネットワーク経路を先に確認
    同期は成功しているのにコンテンツだけ欠ける場合、経路・証明書・検疫などの要因が隠れていることがあります。
  • reset後は“正常な状態”でexportを取り直す
    欠落を含んだ状態で作ったcabを何度運んでも、切断側で欠落が再現します。

ただし、resetはあくまで 「不足コンテンツを揃える」ための手段です。質問者の意図である「余計なメタデータを消して、インポート内容と完全一致させる」用途には直結しません。完全一致が目的なら、結局は解決策A(再構築)か、次の解決策C(バックアップ復元)が必要です。

解決策C:バックアップがあるなら「SUSDB+WSUSContent」を同じ時点に戻す

もしオフラインWSUSのバックアップや仮想基盤のスナップショットが「5月の正常状態」で残っているなら、実はこれが最短ルートになることがあります。

  • SUSDB(WID/SQL)のバックアップを復元し、メタデータをその時点へ戻す
  • WSUSContentも同じ時点のバックアップへ戻す(DBだけ戻すと、DBとコンテンツがズレて再び欠落が出ます)

この「DB+コンテンツを同時点に揃える」復元は、importの追記問題を回避しつつ、実質的に“置き換え”を達成できます。逆に言うと、バックアップが無い場合に“置き換え”を実現する手段が再構築に寄る、という整理です。

応急処置:混在状態を“マシにする”ためにできること

再構築の時間が取れない、または一時的に配布だけ復旧したい場合、次のような「ダメージコントロール」は有効です。ただし、繰り返しになりますが エクスポートセットと完全一致にはなりません。

手段狙い効くケース限界
WSUSContentの再コピー(完全ミラー)欠落ファイルを物理的に埋める単純なコピー漏れ上流に無いファイルは埋まらない
不要更新の整理(期限切れ・置き換え済みの扱い見直し)配布対象を絞って運用を安定化更新が増えすぎて管理不能混在の根は残る
クリーンアップ(WSUSのメンテナンス)古い情報を減らしDBを軽くする長期運用で肥大化「このcabに一致」にはならない

再発防止:オフラインWSUS運用を“壊れにくく”する設計

今回のような事故は、「月次でexport/importする」だけでは防げません。壊れるポイント(転送・整合・検証)を手順に織り込むと、欠落コンテンツやメタデータ混在の確率が大きく下がります。

おすすめの運用イメージ(スナップショット発想)

  • オンライン側:同期・ダウンロードが完了したら、その時点を1セットとして扱う
  • オンライン側:export(cab+log)を取得し、同じタイムスタンプのWSUSContentを準備する
  • 搬送:転送はミラー(完全一致)で行い、ログを残す
  • オフライン側:importは同一セットのcabのみを投入し、過去セットを“上書き”したいなら再構築/復元で対応する

コンテンツ転送は「差分」より「完全ミラー」が安全

オフライン運用で一番壊れやすいのは、WSUSContentの転送です。差分コピーは早い反面、途中失敗が“欠落”として残り続けます。ミラー転送(転送元と転送先を一致させる)にすると、作業は重くなりますが状態が読みやすくなります。

robocopy例(ミラー転送の一例)

robocopy \\ONLINE-WSUS\WSUSContent D:\WSUS\WsusContent /MIR /Z /R:3 /W:5 /NP /LOG+:C:\Logs\robocopy-wsuscontent.log
  • /MIR は転送先の余分なファイルも削除するため、パスの指定ミスが致命傷になります。テスト用フォルダで動作確認してから本番に適用してください。
  • ネットワーク越しに不安定なら、いったん外付け媒体へ落としてから搬送するなど、経路に合わせて設計します。

月次作業チェックリスト(そのまま手順書にできる形)

タイミングチェック項目完了条件
オンライン側:同期後同期エラーの解消、必要更新のダウンロード完了、空き容量確認「この時点が1セット」と言える状態
オンライン側:exportcab+logを日付付きで保存、保管場所の世代管理ログに致命的エラーが無い
搬送:コンテンツ転送ミラー転送、ログ保存、転送元/先の容量・ファイル数比較転送ログが成功で終わる
オフライン側:import対象cabが“今月の1セット”であることを確認して実行importログにエラーが無い
オフライン側:事後確認代表端末で検出・ダウンロード試験、配布対象グループの承認確認更新が正常に配布される

よくある質問

importで既存メタデータを削除して“完全一致”させるオプションはありますか?

基本的にありません。importは追記方向のため、完全一致(置き換え)をやりたいなら受け皿を空にする=再構築、またはバックアップ復元が現実的です。

オフライン側でresetを実行すれば欠落コンテンツは埋まりますか?

切断環境では取得先が無く、期待した効果は出にくいです。欠落の原因がオンライン側にあるならオンライン側でresetし、正常なコンテンツを揃えてから搬送する方が確実です。

再構築は避けたいのですが、混在したメタデータだけ消せませんか?

「特定の月だけを狙って消す」ような運用は難易度が高く、結果として整合性をさらに崩すリスクがあります。混在が運用に支障を出しているなら、再構築(または同時点復元)で状態を単純化した方が、長期的には総工数が下がります。

まとめ:置き換えを求めるなら「空に戻す」か「同時点に復元」

オフラインWSUSで wsusutil export/import を使う運用は有効ですが、importが追記型である以上、過去の正常cabを入れ直して“完全に戻す”ことはできません。目標が「輸出セットと完全一致」なら、オフラインWSUSを再構築して正常セットだけを入れる、またはバックアップで同時点に戻すのが最短です。欠落コンテンツが原因の場合は、オンライン側でresetしてから再エクスポートし、搬送・検証の手順を固めることで再発を防げます。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次