none
アップデートの統合について RRS feed

  • 質問

  • DISMでカスタマイズしたISOイメージの作成をしていますが、アップデートするとどんどんISOサイズが大きくなっていきます。

    ISOイメージにアップデートファイルを追加ではなく統合する方法はないでしょうか。

    例えば、Dism /Image:C:\test\offline /Add-Package

    では、アップデートファイルを追加するだけなのでサイズは大きくなります。

    追加ではなく統合する方法で何か良い方法はないでしょうか。

    2020年5月26日 5:11

回答

  • Sysprep は、大まかな分類では統合の仲間ですが意味合いで言うと別の部分のような物です。

    少しの勉強だと多分追いつかないと思います。

    実際にやる場合、OS統合イメージを作って各種設定を行ってからSysprepを行いますが

    おそらく行いたい事とかけ離れていると思います。

    容量を減らすというだけなら、WinSxSフォルダのバックアップフォルダの中を削除すれば減るには減ります。

    因みに私は、こちらの方法で統合を行っています。

    https://qiita.com/DamashiGami/items/c968c37292f7e6c3da97

    よろしければ、差し支えのない範疇で行っている統合の方法を教えて頂けますか?

    • 回答としてマーク batsusan 2020年5月29日 6:52
    2020年5月28日 3:52

すべての返信

  • 統合のイメージが思い浮かばなかったのですが、近いものとしてはタスクシーケンスを作成してOSイメージ展開時に一緒に更新プログラムを適用できるMicrosoft Deployment ToolkitやConfiguration Managerかと勝手に想像しました。。。
    2020年5月26日 5:47
  • 統合のイメージとしては、アップデートされるファイルを既存のものと置き換えるというイメージです。

    「追加ではなく置き換える方法」と質問したほうがよかっですかね。すいませんでした。

    Microsoft Deployment ToolkitやConfiguration Managerについては、名前を目にしたことはありますが

    詳しいことは全く分かりません。

    これらを利用すれば上記のような置き換えはできますでしょうか。

    2020年5月26日 6:12
  • アップデートと呼ばれているのは、品質更新プログラム(いわゆるセキュリティパッチ)を適用する事を指しているのでしょうか?

     

    その場合ですが、更新プログラムの適用によるシステムファイルの更新は追加では無く新しいバージョンへの置き換えですので、システムファイルに関してだけ言えば意図している統合が行われているでしょう。(新しいバージョンへの置き換えなので多少はサイズが大きくなりますが)

     

    イメージサイズが大きくなる原因はシステムファイルの更新では無く、更新プログラムの一時ファイルによるところが多いのかと思われます。OSがオンラインで操作できる場合はディスククリーンアップで一時ファイルをクリーンアップしてみると良いでしょう。

    また、品質更新プログラムは基本的にロールアップ形式ですので、過去あった毎月の更新プログラムを全て適用する必要は無く、最新のロールアップ更新プログラムを適用するだけで十分です。もし、大量のロールアップ更新プログラムを適用されているのであれば、その運用を見直すのも良いかと思います。

     

    OSをオンラインで操作できない場合ですが、Microsoft は VLSC 等で定期的に品質更新プログラムを組み込んだ状態のISOを追加提供していますので、そちらに差し替えると良いでしょう。(ISOのタイトルは以下の様なタイトルです)

     

    Windows 10 (business editions), version 1903 (updated April 2020)

     

    2020年5月26日 15:34
  • 質問の仕方が下手なためか、私の思うところがうまく伝わっていないようですね。

    更新すれば確かにシステムファイル等は置き換えられています。更新の内容によっては若干ファイルサイズが大きくなることもあるでしょう。でもその場合大きくなるサイズは大きくても数メガ程度だと思います。

    しかしながらパッチを当ててISOを作成すると、ほぼ更新ファイルのサイズ分(数百メガ程度)大きくなってしまいます。詳しいことは分かりませんが、たぶん削除の時のため古いファイルがまだ残っているのではないかと思います。私が望んでいることは、そのようなことはせず純粋に置き換えだけしたいということです。

    なお、更新ファイルは最新のものだけ当てております。


    • 編集済み batsusan 2020年5月27日 1:33
    2020年5月27日 1:31
  • 削除のための古いファイルや一時ファイルを作らず、更新プログラムをイメージに適用したいとの事で良いでしょうか?

    残念ながら、私が知る限りその様な方法は無い認識です。他の方が知っている可能性も有りますので、統合を実現したいとの事であれば他の方からの情報提供をお待ち頂くと良いでしょう。

     

    なお、主にイメージサイズが増えているのは恐らく "%WINDIR%WinSxS" フォルダーが肥大化している事によるものと推測されます。

    代替策となりますが、このフォルダーをクリーンアップする方法は有る様なので、以下で紹介されている DISM "/Cleanup-Image /StartComponentCleanup /ResetBase" オプションを実行してみると良いかもしれません。(希望されている統合とは異なり、更新プログラムの適用→クリーンアップといった手順を踏む必要はありますが)

    https://docs.microsoft.com/ja-jp/windows-hardware/manufacture/desktop/clean-up-the-winsxs-folder#span-iddismexespanspan-iddismexespandismexe

    2020年5月27日 2:49
  • >削除のための古いファイルや一時ファイルを作らず、更新プログラムをイメージに適用したいとの事で良いでしょうか?

    そのとおりです。

    DISM でクリーンアップはしているのですが期待する効果には至りませんでした。

    /Cleanup-Image /SPSuperseded オプションも試してみましたがだめでした。

    やはりそもそも出来ないのでしょうかねぇ・・・

    2020年5月27日 6:23
  • DISM によるオフラインイメージへの更新の適用でイメージサイズが(ほぼ更新サイズだけ)増えるというのは、WinSxS フォルダーに置き換え前の古いモジュールが残るからでしょう。

    それを削除するのが書かれている /Cleanup-Image /SPSuperseded や /ResetBase ですが、これらのオプションはオンライン イメージでしか有効でないのではないかと思います(コマンドの例でもすべて /online が付いています)。

    参考:https://docs.microsoft.com/ja-jp/windows-hardware/manufacture/desktop/clean-up-the-winsxs-folder

    参照コンピューターに実際にインストールしてからクリーンアップして、それを Sysprep してからキャプチャする.....という方法は考えられますが。


    Hebikuzure aka Murachi Akira

    2020年5月28日 1:02
  • /SPSupersededはオンライン用のオプションだったんですね。オフラインでやっても「バックアップがありません」みたいなメッセージが出るので不思議に思ってましたが、これで納得できました。

    Sysprepの名前はよく目にしてましたが、一度インストールしてからというのがどうにも面倒で…
    オフラインでインストール前に何とかできないかといろいろ試行しておりました。

    Sysprepを少し勉強して試してみようと思います。
    ちなみに
    仮想マシン上でSysprepしたものをキャプチャして一般的に利用できる
    システムイメージを作成することはできるのでしょうか。


    • 編集済み batsusan 2020年5月28日 3:28
    2020年5月28日 3:26
  • Sysprep は、大まかな分類では統合の仲間ですが意味合いで言うと別の部分のような物です。

    少しの勉強だと多分追いつかないと思います。

    実際にやる場合、OS統合イメージを作って各種設定を行ってからSysprepを行いますが

    おそらく行いたい事とかけ離れていると思います。

    容量を減らすというだけなら、WinSxSフォルダのバックアップフォルダの中を削除すれば減るには減ります。

    因みに私は、こちらの方法で統合を行っています。

    https://qiita.com/DamashiGami/items/c968c37292f7e6c3da97

    よろしければ、差し支えのない範疇で行っている統合の方法を教えて頂けますか?

    • 回答としてマーク batsusan 2020年5月29日 6:52
    2020年5月28日 3:52
  • うーん、少しの勉強では無理ですか・・・
    個人で使用するためだけのイメージファイル作成するのに、そこまで手間をかけるのも面倒ですし。

    >容量を減らすというだけなら、WinSxSフォルダのバックアップフォルダの中を削除すれば減るには減ります。
    これは手動で無理やり削除するということですか?

    紹介されているURLのコマンドを見る限り、サイズを大きくしないという意味においては効果がないように思えます。

    >差し支えのない範疇で行っている統合の方法を教えて頂けますか?
    私は統合は敢えて行っていません。(質問内容のことが出来ればしたいが)
    現在使用しているビルドは19041.1で更新ファイルは一つも入っていないものを使用しています。
    カスタマイズおよび最適化したISOのサイズは2.94GBです。これでインストールは7~8分で完了します。

    更新は必要と思えばインストール後行いますがなるべく更新は行わないようにしてます。(不具合がない限り)

    • 編集済み batsusan 2020年5月28日 6:26
    2020年5月28日 5:19
  • 昔と違ってセキュリティ更新も品質向上更新も累積的なので、バージョンの Gold メディアでクリーンインストールしても必要になる更新の数はごく少数ですから、サービスパックをスリップストリームしていた Windows 2000 のころのような面倒は無いと思います。

    追記:どうしてもスリップストリームしないとダメなのは、Windows の起動時に InBox 以外のドライバーが必要になるような構成のデバイスにクリーンインストールする場合でしょうね


    Hebikuzure aka Murachi Akira


    2020年5月28日 6:00
  • これは手動で無理やり削除するということですか?

    イメージを Esd 化する前に手動で削除する事で対応します。

     

    紹介されているURLのコマンドを見る限り、サイズを大きくしないという意味においては効果がないように思えます。

    一応、小さくなります。

    大本のイメージには、3つか4つ分のイメージが入っていて、作成時に1つに絞り

    オフラインで /RestoreHealth や /ResetBase を適用出来ていますので。

     

    >更新は必要と思えばインストール後行いますがなるべく更新は行わないようにしてます。(不具合がない限り)

    私は、逆に初期版の不具合に出会って対処を迫られた為に統合は避けられない状況でした。

    特に今は毎月の更新による不具合を避ける為に WSUS の配信がほぼ停止されており

    予め更新を行っておかないと必要なパッチが適用されない状況です。

    逆に Windows Update の時間を減らす為の統合という考え方でもあります。

    • 編集済み 七辻屋 2020年5月28日 10:51 改行追加2
    2020年5月28日 10:49
  • >一応、小さくなります。
    >大本のイメージには、3つか4つ分のイメージが入っていて、作成時に1つに絞り
    私は不要なエディションは削除して一つで行っているので、
    ResetBaseをしても期待するほどの効果はなかったです。

    それにしても、これほど皆様からご意見をいただいたのに解決策がでないということは、
    そもそもDISM等のコマンドでは純粋に置き換えるということは無理なのでしょうかね。

    唯一、Sysprepは可能性がありそうですがどうにも敷居が高い^^;;;
    のんびり勉強しながら仮想マシンで試してみようかしら。


    2020年5月28日 14:25