Windowsインストーラーパッケージ、またはMSIファイルが呼び出されたときにそれらをインストールおよびアンインストールすると、インストールの進行が他のインストールパッケージよりも大幅に遅く表示されます。
なぜこれが当てはまるのでしょうか?そして、物事をスピードアップするために私は何ができますか?
Windowsインストーラーパッケージ、またはMSIファイルが呼び出されたときにそれらをインストールおよびアンインストールすると、インストールの進行が他のインストールパッケージよりも大幅に遅く表示されます。
なぜこれが当てはまるのでしょうか?そして、物事をスピードアップするために私は何ができますか?
回答:
3
またはを試してください7
)Windowsインストーラーセッションの遅さの多くは、ロールバック機能によるものです。まず、インストールまたはアンインストールの前に復元ポイントを作成します(システムの復元が無効になっていない場合)。その後、アンインストールとインストールの両方で影響を受けるすべてのファイルとレジストリキーをバックアップし、エラーが発生した場合にシステムを元の状態に復元できるようにします。Windowsインストーラーの以降のバージョンでは、この複雑さの一部を無効にし、速度を上げる方法を備えています。以下の技術情報を参照してください。
別の速度要因は、MSIのすべてのコンポーネントと機能がレジストリに登録されることです。これにはかなりのオーバーヘッドが伴いますが、重要な企業展開とシステム管理の利点を実現するために必要です。このレベルの制御を特徴とする他の展開テクノロジーはありません。
ソースファイルが埋め込まれた大きなMSIファイルは、インストーラファイルをtempフォルダーに抽出するのに時間がかかる場合があります。これは、すべての最大のボトルネックになることがあります。管理インストールを実行してこのようなパッケージからソースファイルを抽出し、MSIファイル自体と並んで表示されるようにすることをお勧めします。これにより、各マシンでローカルにファイルを抽出する必要がなくなり、展開時間を節約できます。ここに、MSIパッケージからのファイル抽出を簡単な用語で説明する別の記事があります。
更新(2018年2月):展開を高速化するために、非常に特殊な状況(リンクされたコンテンツを参照)でFASTOEMというプロパティを設定できます。私はこれを試したことがありませんが、読む価値があります。効果的に使用できるとは思いませんが、試してみる価値はあります。
執筆時点でのWindowsインストーラーの最新の更新プログラムであるWindowsインストーラー5(Windows Server 2012、Windows 8、Windows Server 2008 R2、またはWindows 7で利用可能)には、新しいプロパティMSIFASTINSTALLが含まれており、大きなMSIパッケージ。有効な値については、上記のリンクを参照してください。復元ポイントがない場合は3、FileCostingのみ(ディスク領域の要件を決定するプロセス)をお勧めします。または、進捗メッセージの頻度を減らすために7。
通常の「コスト計算」は、システム上に存在するものとインストールされるものとの間の、機能、コンポーネント、ディスク、およびレジストリの比較と計算の多くを特徴とします。私の意見ではこれのほとんどはめったに必要ではありません(クライアントPCのディスクスペースは一般的に豊富です-2018年の現実では、SDディスクが小さいため、スペースの問題が再発する可能性があります...)原価計算実行。
msiexec.exe / I "D:\ winzip112.msi" / QN MSIFASTINSTALL = 3
また、DISABLEROLLBACKプロパティを設定して、MSIインストーラーでのロールバックサポートを無効にすることもできます。新しいPCを準備している場合を除き、これを使用しないことを強くお勧めします。これは、何かが失敗した場合に最初からやり直すことができる特殊なケースです。実際に使用するコンピューターの場合、このプロパティを有効にすることはお勧めしません。
皮肉なことに、大量のファイルを置き換える巨大な更新パッケージを実行している場合、または大規模なアンインストールを実行している場合、アンインストールはすべての削除されたファイルをロールバック領域に移動するため、ロールバックを無効にすると速度が最も速くなります。非常に重要ですが、安全ではありません。コマンドラインでこのプロパティを設定するだけです:msiexec.exe / I "D:\ winzip112.msi" / QN MSIFASTINSTALL = 3 DISABLEROLLBACK = 1
最後に、背景情報で前述したように、MSIファイルの管理インストールを実行してファイルを抽出し、各マシンでローカルに抽出が行われないようにします。これは、ユーザーがかなり高速なネットワーク上にあり、ファイルのコピーが遅れることなく行われることを前提としています。遅延の大きいワイヤレスネットワークでは、1つずつコピーする必要がある小さなファイルを抽出すると、処理が遅くなる可能性があります。/ aをセットアップファイルに渡すだけで管理者インストールを実行します。
setup.exe / a
または
msiexec / a "D:\ winzip112.msi"
次に、プロンプトに従い、ファイルの抽出場所を選択する必要があります。この機能について説明しているスレッドについては、superuser.comを参照してください。
いくつかのリンク:
速度:
MSIFASTINSTALL
?ER
尾なし。