Visual Studio のネットワーク インストールを作成、保守、デプロイする

適用対象:yesVisual Studio noVisual Studio for Mac noVisual Studio Code

エンタープライズ管理者は、クライアントワーク ステーションに展開できる Visual Studio ファイルを含むネットワーク インストール ポイントの作成が必要になる場合があります。 これは、クライアント コンピューターのアクセス許可が制限されている場合や、インターネットへのアクセスが制限されている場合、組織が特定のバージョンの開発者ツールセットを標準化する場合のシナリオを促進します。 管理者が内部ネットワークに格納できるネットワーク レイアウト (ファイル キャッシュ) を作成および維持できるよう、この機能を設計しました。 ネットワーク レイアウトには、初期インストールと後続製品の更新プログラムの両方に必要なすべての Visual Studio ファイルが含まれています。

この Web ページには多くの情報が表示され、次のセクションにグループ化されています。

開始する前に

開始する前に計画し、注意する必要がある重要な点がいくつかあります。

  • フォルダー管理: 複数のエディションの Visual Studio を企業内で利用している場合 (たとえば、Visual Studio 2019 Professional と Visual Studio 2019 Enterprise の両方)、エディションごとに個別のネットワーク インストール共有を作成する必要があります。 また、レイアウト パスは 80 文字未満である必要があります。ただし、一部の組織ではシンボリック リンクを使用して 80 文字の制限を回避しています。
  • 更新プログラムの計画: 最初のクライアント インストールを行う前に、クライアント コンピューターで製品の更新プログラムを受け取る方法 を決定する必要があります。 これは、クライアントの更新場所の構成が正しく設定されていることを確認するために必要です。 選択には、クライアントがネットワーク レイアウトの場所またはインターネット上の Microsoft でホストされているサーバーから更新プログラムを取得する方法が含まれます。

重要

Visual Studio 2019 の機能のみを使用する場合、レイアウト管理には次の制限があります。クライアントがレイアウトからインストールされた後、クライアントの更新場所はロックされ、変更できません。 これは、修復およびアンインストール機能を維持しながら、クライアントがレイアウトから更新プログラムを受信することを意図している場合は、クライアントがインストールした元のレイアウト フォルダーに後続のすべての製品更新プログラムを配置する必要があります。 つまり、ベースとなる Visual Studio 2019 機能では、クライアントが 1 つのレイアウトの場所から元のインストールを実行し、そのクライアントに別のレイアウトの場所から製品の更新プログラムを受信する機能はサポートされていません

この制限は、製品の更新場所が固定され、製品の更新プログラムが Visual Studio 2022 に存在しない元のインストール レイアウトと同じレイアウト フォルダーに存在する必要があります。 Visual Studio 2022 では、更新プログラムのクライアントのソースの場所を簡単に変更できます。 すべての最新バージョンの Visual Studio 製品ファミリを管理する最新版 (Visual Studio 2022) インストーラーを含め、使用して、Visual Studio 2019 レイアウトを管理し、2019 バージョンの製品の制限を排除することができます。 以下の「常に最新のインストーラーを含め、提供するレイアウトを構成する」セクションでは、これを有効化する方法について説明します。

  • フォルダー管理: 複数のエディションの Visual Studio を企業内で利用している場合 (たとえば、Visual Studio 2022 Professional と Visual Studio 2022 Enterprise の両方)、エディションごとに個別のネットワーク インストール共有を作成する必要があります。 また、レイアウト パスは 80 文字未満である必要があります。ただし、一部の組織ではシンボリック リンクを使用して 80 文字の制限を回避しています。
  • 更新プログラムの計画: 最初のクライアント インストールを行う前に、クライアント コンピューターで製品の更新プログラムを受け取る方法 を決定することをお勧めします。 これは、クライアントの更新場所の構成が正しく初期化されていることを確認するものです。 選択には、クライアントがネットワーク レイアウトの場所またはインターネット上の Microsoft でホストされているサーバーから更新プログラムを取得する方法が含まれます。 さいわい、初期インストールが行われた後にクライアント ソースの場所を更新用に構成できます。

Visual Studio ブートストラップをダウンロードしてネットワーク レイアウトを作成する

目的の Visual Studio エディションのブートストラップをダウンロードし、レイアウトのソースの場所として使用するディレクトリにコピーします。 レイアウトが作成されたら、それを使用し、あらゆるクライアント コンピューターに Visual Studio をインストールできます。 ブートストラップは、他のレイアウト操作の作成、更新、および実行に使用する実行可能ファイルです。 この手順を完了するには、インターネット接続が必要です。

以下に示すブートストラップでは、いつ実行するかに関係なく、常に最新のセキュアなバージョンの Visual Studio 2019 がインストールされます。 または、Visual Studio 2019 の特定のバージョンをインストールまたは更新する場合は、各サービス リリースの固定バージョン ブートストラップへのリンクが記載されている Visual Studio 2019 リリースのページにアクセスし、任意のものをダウンロードします。 レイアウトのソースの場所として使用するディレクトリにコピーします。

Edition ブートストラップ
Visual Studio 2019 Enterprise バージョン 16.11 vs_enterprise.exe
Visual Studio 2019 Professional バージョン 16.11 vs_professional.exe
Visual Studio 2019 Build Tools バージョン 16.11 vs_buildtools.exe

その他にサポートされているブートストラップして、vs_teamexplorer.exevs_testagent.exevs_testcontroller.exe があります。

以下に示すブートストラップでは、いつ実行するかに関係なく、現在のチャネル上に、常に最新のセキュアなバージョンの Visual Studio 2022 がインストールされます。 または、Visual Studio 2022 の特定のバージョンまたは特定のチャネルのレイアウトを作成または更新する場合は、各チャネル上で各サービス リリースのevergreenおよび固定バージョン ブートストラップへのリンクが記載されている Visual Studio 2022 リリース履歴のページにアクセスし、任意のものをダウンロードします。 レイアウトのソースの場所として使用するディレクトリにコピーします。

Edition ブートストラップ
Visual Studio 2022 Enterprise vs_enterprise.exe
Visual Studio 2022 Professional vs_professional.exe
Visual Studio 2022 Build Tools vs_buildtools.exe

ヒント

前にブートストラップ ファイルをダウンロードしてあり、そのバージョンを確認したい場合は、次のようにします。 Windows でエクスプローラーを開き、ブートストラップ ファイルを右クリックし、 [プロパティ] を選択して、 [詳細] タブを選択し、 [製品バージョン] の値を表示します。 この値に対応する Visual Studio のリリースを調べるには、「Visual Studio 2019 リリース」の下部の表を参照してください。

ヒント

前にブートストラップ ファイルをダウンロードしてあり、インストールされるバージョンを確認したい場合は、次のようにします。 Windows でエクスプローラーを開き、ブートストラップ ファイルを右クリックして、 [プロパティ] を選択してから [詳細] タブを選択します。 [製品バージョン] フィールドに、ブートストラップでインストールされるチャネルとバージョンが記載されます。 バージョン番号は、常に「指定されている最新のサービス バージョン」 として読み取られるため、チャネルは明示的に指定されていない限り、最新になります。 そのため、LTSC 17.0 の製品バージョンを持つブートストラップでは、17.0 LTSC チャネルで利用可能な最新の 17.0.x サービス リリースがインストールされます。 製品バージョンのブートストラップで Visual Studio 2022 とだけ表示される場合は、最新チャネルの Visual Studio 2022 の最新のサービスバージョンがインストールされます。

ネットワーク レイアウトを作成する

このステップを実行するにはインターネット接続が必要です。

管理者権限でコマンド プロンプトを開き、ブートストラップをダウンロードしたディレクトリに移動し、「コマンドライン パラメーターを使用して Visual Studio をインストールする」ページで定義されているようにブートストラップのパラメーターを使用して、ネットワーク レイアウトを作成および維持します。 初期レイアウトの作成の一般的な例については、下記と「Visual Studio のインストールに使用するコマンド ライン パラメーターの例」ページを参照してください。

1 つの言語ロケールの完全な初期レイアウトを使用するには、Visual Studio Community では約 35 GB のディスク領域、Visual Studio Enterprise では 45 GB が必要です。 その他の言語ロケールには、それぞれ約 0.5 GB が必要になります。

推奨される方法は、ネットワーク サーバー上のレイアウト ディレクトリ内ですべての言語とすべてのワークロードを含む、Visual Studio Enterprise の初期レイアウトを作成するものです。 そうすることで、クライアントは製品オファリング全体にアクセスできます。 Visual Studio の完全なレイアウトを作成するには、ネットワーク レイアウトをホストするコンピューターから次のコマンドを実行します。

vs_enterprise.exe --layout c:\VSLayout

レイアウトに正しいチャネルが含されていることを確認する

ネットワーク レイアウトが正しい チャネルからのものであることを確認することが重要です。これは、 管理者によって更新される条件の 1 つであり、組織全体に展開されている場合は、どのクライアントインスタンスを更新する必要があるかを特定するために使用します。 たとえば、レイアウトが VisualStudio.17.Release.LTSC.17.0 チャネルからのもので、クライアントが Microsoft ホスト サーバーから更新プログラムを受信するように構成されている場合、17.0 LTSC チャネルで利用できるようになったすべてのセキュリティ更新プログラムは、そのレイアウトからインストールまたは更新されたクライアントで使用できるようになります。

上記のブートストラップは、現在のチャネルに基づいています。 LTSC チャネルのいずれかに基づいてレイアウトを作成するには、 Visual Studio 2022 リリース履歴ページから適切なチャネルのブートストラップを取得し、それをレイアウト フォルダーにコピーして、レイアウトを作成または更新するために使用します。

ネットワーク レイアウトの内容を構成する

ネットワーク レイアウトはいくつかの方法でカスタマイズできます。 言語ロケールワークロード、コンポーネント、推奨の依存関係または任意の依存関係からなる特定のセットのみを含む部分的レイアウトを作成できます。 これは、一部のワークロードだけをクライアント ワークステーションに展開することがわかっている場合に便利です。 レイアウトをカスタマイズするための一般的なコマンド ライン パラメーターには次のようなものがあります。

  • --addワークロードまたはコンポーネント ID を指定します。
    --add を使用すると、--add で指定されたワークロードとコンポーネントだけがダウンロードされます。 --add を使用しない場合、すべてのワークロードとコンポーネントがダウンロードされます。
  • --includeRecommended指定したワークロード ID のすべての推奨コンポーネントを含めます。
  • --includeOptional指定したワークロード ID のすべての任意コンポーネントを含めます。
  • --lang言語ロケールを指定します。

次に、レイアウトを部分的にカスタマイズする例をいくつか紹介します。

  • 1 つの言語に対して、すべてのワークロードとコンポーネントを使って作成するには、以下を実行します。

    vs_enterprise.exe --layout C:\VSLayout --lang en-US
    
  • 複数の言語に対して、すべてのワークロードとコンポーネントを使ってレイアウトを作成するには、以下を実行します。

    vs_enterprise.exe --layout C:\VSLayout --lang en-US de-DE ja-JP
    
  • 1つのワークロードとそのワークロードの推奨コンポーネントすべてを含むレイアウトを作成するには、すべての言語で、次のように実行します。

    vs_enterprise.exe --layout C:\VSLayout --add Microsoft.VisualStudio.Workload.Azure --includeRecommended
    
  • 3 つの言語に対して、2 つのワークロードと 1 つの任意のコンポーネントを使ってレイアウトを作成するには、以下を実行します。

    vs_enterprise.exe --layout C:\VSLayout --add Microsoft.VisualStudio.Workload.Azure --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.VisualStudio.Component.Git --lang en-US de-DE ja-JP
    
  • 2 つのワークロードとそのすべての推奨コンポーネントと任意コンポーネントを使ってレイアウトを作成するには、次を実行します。

    vs_enterprise.exe --layout C:\VSLayout --add Microsoft.VisualStudio.Workload.Azure --add Microsoft.VisualStudio.Workload.ManagedDesktop --includeRecommended --includeOptional
    

レイアウトが最新のインストーラーを使用していることを確認する

レイアウトには常に最新の Visual Studio インストーラーを使用し、クライアントに配布することをお勧めします。 これにより、製品の今後のバージョンで使用できるようになる新機能にアクセスできるようになります。 たとえば、Visual Studio 2019 のレイアウトで Visual Studio 2022 インストーラーを配布する場合、そのレイアウトに基づく Visual Studio 2019 クライアントでは、更新プログラムのソースの場所を変更できます。 この機能が役立つシナリオは、1 つのレイアウトからインストールし、別のレイアウトから更新プログラムを取得する場合です。 最新のインストーラーの使用を無効にする方法などの詳細については、以下を参照してください

重要

最新のインストーラーを使用するこの機能は、最初に出荷された Visual Studio 2022 の後に作成された Visual Studio 2019 ブートストラップにのみ使用できます。 そのため、次の例の vs_enterprise.exe は、2021 年 11 月 10 日より後に出荷されたバージョンである必要があります。

  • 利用可能な最新で最高のインストーラーを使用する製品全体のレイアウトを作成するには、次を実行します
    vs_enterprise.exe --layout C:\VSLayout --useLatestInstaller
    

ネットワーク共有にレイアウトをコピーする

クライアント コンピューターから実行できるようにネットワーク共有でレイアウトをホストする必要があります。 ローカルコンピューターにレイアウトを作成した場合は、ネットワーク上の場所にコピーする必要があります。 xcopy の使用例を次に示します。 必要であれば、robocopy を使用することもできます。 例:

xcopy /e c:\VSLayout \\server\share\layoutdirectory

重要

エラーを回避するには、ネットワーク共有の完全なレイアウトパスが 80 文字未満であることを確認します。 また、一部の組織では、 シンボリックリンク を使用して 80 文字の制限を回避することができました。

レイアウトの更新または変更

最新バージョンの Visual Studio を受け取るクライアント ワークステーションのインストール ポイントおよび更新ソースとして使用できるように、最新の製品更新プログラムを使用して Visual Studio のネットワーク レイアウトを更新することができます。 特に、クライアントがレイアウトから更新プログラムを受け取るようにする場合は、レイアウトを定期的に更新することをお勧めします。 このセクションでは、最も一般的な、または便利なレイアウト メンテナンス操作について説明します。

ファイル共有上にレイアウトをホストしている場合は、レイアウトのプライベート コピーを更新し (例: c:\VSLayout)、すべての更新されたコンテンツがダウンロードされた後に、ファイル共有にそれをコピーします (例: \\server\products\VS)。 この操作を行わない場合、レイアウトの更新中にユーザーがセットアップを実行しても、レイアウトが完全に更新されていないため、レイアウトの中身がミスマッチになる可能性が非常に高くなります。

レイアウトを製品の最新バージョンに更新する

Microsoft では、更新されたバージョンの製品を頻繁にリリースして、機能やセキュリティの問題を修正しています。 新しいクライアントのインストールで常に最新の情報が得られるように、最新バージョンの製品でレイアウトを更新しておくことをお勧めします。 また、クライアントがレイアウトから更新プログラムを受け取るように構成されている場合は、レイアウトの更新を維持することも非常に重要です。

初期レイアウトを作成すると、レイアウトに含めるワークロードや言語など、指定されたオプションがレイアウトの構成ファイルに保存されます。 後で、そのレイアウトを新しいバージョンの製品に更新する場合、初期レイアウトの作成時に使用したオプションを再指定する必要はありません。 レイアウトの更新コマンドは、保存されたレイアウト設定を自動的に使用します。

上記の表で、evergreen ブートストラップのいずれかを使用して、この部分レイアウトを既に作成しているとします。

vs_enterprise.exe --layout c:\VSLayout --add Microsoft.VisualStudio.Workload.ManagedDesktop --lang en-US

Microsoft が提供し、Microsoft サーバーでホストされている最新バージョンの製品にこのレイアウトを更新するのは簡単です。 同じ evergreen ブートストラップを使用し、--layout コマンドを再度実行して、最新のパッケージをレイアウトにダウンロードするだけです。

vs_enterprise.exe --layout c:\VSLayout

ここでは、お使いのレイアウトを無人方式で新しいバージョンに更新することもできます。 レイアウト操作は、新しいコンソール ウィンドウでセットアップ プロセスを実行します。 ユーザーが最終的な結果と、発生した可能性のあるエラーの概要を確認できるように、ウィンドウは開いたままになります。 無人方式でレイアウト操作を実行している場合は (たとえば、定期的に実行してお使いのレイアウトを最新バージョンに更新するスクリプトがある場合)、--passive パラメーターを使うと、プロセスは自動的にウィンドウを閉じます。

vs_enterprise.exe --layout c:\VSLayout --passive

レイアウトを製品の特定のバージョンに更新する

場合によっては、 特定のバージョンの製品にレイアウトを更新することが必要になることがあります。 たとえば、組織の標準化に使用しているサービス ベースラインの最新のセキュリティで保護されたバージョンとレイアウトを一致させることができます。 その方法を次に示します。

Visual Studio 2019 のリリースページにアクセスして、特定の修正済みのバージョンのブートストラップをダウンロードし、それをレイアウトにコピーした後、それを使用してレイアウトをブートストラップで指定された正確なバージョンに更新することができます。 上記とまったく同じ構文を使用します。

Visual Studio 2022 のリリース履歴ページにアクセスして、特定の修正済みバージョンのブートストラップをダウンロードし、それをレイアウトにコピーした後、それを使用してレイアウトをブートストラップで指定された正確なバージョンに更新することができます。 上記とまったく同じ構文を使用します。

管理者の更新プログラム を使用して、レイアウトを特定のバージョンに更新することができます。 管理者向け更新プログラムを入手するには、Microsoft Update カタログに移動し、レイアウトを更新する更新プログラムを検索します。 レイアウトをホストしているコンピューターに update.exe をダウンロードし、そのコンピューターでコマンド プロンプトを開き、次のようなコマンドを実行します。

visualstudioupdate-17.0.0to17.0.1.exe layout --layoutPath c:\VSLayout

管理者の更新プログラムでは、元のレイアウトのインストールは開始されないことに注意してください。これらのユーザーは、既存のレイアウトまたはクライアント インスタンスのみを更新します。

ネットワーク レイアウトのチャネルを変更する

場合によっては、チャネルがサポート対象外に移行するときに、クライアントが引き続きセキュリティ更新プログラムの通知を受け取ることができるように、サポートされているチャネルからネットワーク レイアウトが引き続き使用されるようにする必要があります。 レイアウトが VisualStudio.17.Release.LTSC.17.0 チャネルに基づいている場合、17.0 LTSC チャネルがサポート対象外になると、それ以上のセキュリティ更新プログラムがリリースされず、レイアウトとクライアントが安全ではなくなります。

レイアウトの基になっているチャネルを変更するには、 Visual Studio 2022 リリース履歴ページから目的のチャネルのブートストラップを取得し、それをレイアウト フォルダーにコピーして、通常の更新プログラムを実行するだけです。 クライアントには、セキュリティも維持できるように、更新プログラムを適切に通知する必要があります。

レイアウトの内容を変更する

このレイアウトを変更し、その他のワークロード、コンポーネント、または言語を追加または削除することができます。 次の例では、Azure ワークロードとローカライズされた言語を、上記で作成したレイアウトに追加します。 変更が完了すると、管理対象のデスクトップと Azure の両方のワークロードと、英語とドイツ語のリソースがこのレイアウトに含まれます。 さらに、レイアウトが利用可能な最新バージョンに更新されます。

vs_enterprise.exe --layout c:\VSLayout --add Microsoft.VisualStudio.Workload.Azure --lang de-DE

すべてのレイアウトになるように既存の部分レイアウトを変更する場合は、次の例に示すように、--all オプションを使用します。

vs_enterprise.exe --layout c:\VSLayout --all

最後に、バージョンを更新せずに追加のワークロードとローカライズされた言語を追加する方法を示します。 (このコマンドを実行すると、ASP.NET と Web 開発のワークロードが追加されます。) これで、Managed Desktop、Azure、および ASP.NET & Web 開発ワークロードがこのレイアウトに含まれるようになりました。 英語、ドイツ語、フランス語の言語リソースもすべてのワークロードに含まれます。 ただし、このコマンドが実行されるとレイアウトは利用可能な最新バージョンに更新されません。 そのため、既存のバージョンのままになります。

vs_enterprise.exe --layout c:\VSLayout --add Microsoft.VisualStudio.Workload.NetWeb --lang fr-FR --keepLayoutVersion

重要

更新操作では、レイアウトにもクライアントにも、追加のオプション コンポーネントがダウンロードされることも、インストールされることもありません。 オプション コンポーネントを追加または変更する必要がある場合、まずlayout.json構成ファイルから古いオプション コンポーネントを削除し、layout.json の [追加] セクションに、必要な新しいコンポーネントを含めます。 その後、レイアウトを更新するために--layoutコマンドを実行すると、新しく追加されたコンポーネントがレイアウトにダウンロードされます。

クライアント マシンに新しいコンポーネントをインストールするには、次の 3 つの手順を必ず行います。 最初に、上の説明のとおりに、新しいコンポーネントがレイアウトに含まれていることを確認します。 次に、レイアウトでクライアントを最新版に更新します。 最後に、再びクライアントで、クライアント コンピューターに (レイアウトに追加された) 新しいコンポーネントをインストールする変更操作を実行します。

常に最新のインストーラーを含め、提供するレイアウトを構成する

インストーラーが最新バージョンの Visual Studio の一部と見なされている場合でも、"常に" 最新のインストーラーを含め、クライアントに提供するようにレイアウトを構成することができます したがって、クライアントがこのレイアウトから更新する場合、クライアントはこのレイアウトによって含め、提供される最新のインストーラーを取得することになります。 この利点は、最新のインストーラーがクライアント上に配置されると、クライアントのインストールによって、Microsoft がインストーラーに追加し続けているバグ修正や新機能を利用できるようになることです。

ヒント

クライアントの Visual Studio 2019 インストールから更新プログラムが検索される場所を変更する場合は、クライアント コンピューターに最新の Visual Studio 2022 インストーラーを配置する 必要があります。 これを行う方法の 1 つは、以下で説明するパラメーターを使用して、Visual Studio 2019 レイアウト内に Visual Studio 2022 インストーラーを含めることです。 最新のインストーラーを使用するこの機能は、最初に出荷された Visual Studio 2022 の後に作成された Visual Studio 2019 ブートストラップにのみ使用できます。 そのため、次の例の vs_enterprise.exe は、2021 年 11 月 10 日より後に出荷されたバージョンである必要があります。

レイアウトで最新のインストーラーを含め、提供できるようにするには、次の 2 つの方法があります。

  • レイアウトを作成または更新するときに、--useLatestInstallerパラメーターをブートストラップに渡すことができます。 これにより、設定が layout.json ファイルに設定されます。これは、レイアウトのルート ディレクトリにあります。 次に、レイアウトを更新し、使用可能な最新で最高のインストーラーを使用するように構成する方法の例を示します。

    vs_enterprise.exe --layout C:\VSLayout --useLatestInstaller
    
  • この設定を追加するには、直接 layout.json ファイルを編集します。

    {
       "installChannelUri": ".\\ChannelManifest.json",
       "channelUri": "\\\\server\\share\\layoutdirectory\\ChannelManifest.json",
       "installCatalogUri": ".\\Catalog.json",
       "channelId": "VisualStudio.16.Release",
       "productId": "Microsoft.VisualStudio.Product.Enterprise",
    
       "useLatestInstaller": true
    
    }
    

layout. json ファイルでこの設定をプログラムによって削除することはできません。そのため、Microsoft が提供する最新のインストーラーを使用してレイアウトを停止し、代わりにブートストラップに対応するバージョンのインストーラー (ほとんどの場合は最新のインストーラーよりも古い) を使用し、layout.json ファイルを単純に編集して"UseLatestInstaller": true設定を削除することができます。

レイアウトの response.json ファイルにもこの "UseLatestInstaller": true 設定がありますが、そこでは無視されることに注意してください。 response.json ファイルは、クライアントがレイアウトからインストールまたは更新するときに、"クライアント" の既定の構成オプションを設定するために使用されます この特定の "useLatestInstaller": true 設定は、"レイアウト" の内容に最新のインストーラーが含まれていることを確実にするために使用されます。これにより、クライアント コンピューターがレイアウトから最新のインストーラーを取得できるようになります

レイアウトを検証する

パッケージ ファイルが見つからないか無効であるかを確認するネットワーク レイアウトの検証を実行するには、--verify を使用します。 検証の最後に、見つからないファイルと無効なファイルのリストを出力します。

検証は、特定のマイナー バージョンの Visual Studio の最新のバージョンに対してのみ機能します。 新しいバージョンがリリースされるとすぐに、以前のリリースを含むレイアウトでは検証が機能しません。

vs_enterprise.exe --layout <layoutDir> --verify

注意

レイアウト フォルダーには --verify オプションで必要とされるいくつかの重要なメタデータ ファイルが必要です。 これらのメタデータ ファイルが見つからない場合、"--verify" が実行できず、セットアップでエラーが返されます。 このエラーが発生した場合は、レイアウトを再度更新するか、別のフォルダーに新しいネットワーク レイアウトを再作成してみてください。

Microsoft は定期的に Visual Studio の更新プログラムを提供しているので、[固定リンクブートストラップ](#download-the-visual-studio-bootstrapper-to create-the-network-layout) を使用しない限り、より新しいレイアウトには初期レイアウトと同じバージョンが含まれていない可能性があることに注意してください。

レイアウトを修正する

--fix を使用して --verify と同じ検証を実行して、特定された問題の修正も試みます。 --fix の処理にはインターネット接続が必要なため、--fix を呼び出す前に、コンピューターがインターネットに接続していることを確認してください。

vs_enterprise.exe --layout <layoutDir> --fix

以前のバージョンをレイアウトから削除する

ネットワーク キャッシュにレイアウトの更新を実行した後、レイアウト フォルダーには最新の Visual Studio のインストールに不要な古いパッケージがいくつか含まれている場合があります。 --clean オプションを使用すると、ネットワーク レイアウト フォルダーから古いパッケージを削除できます。

これを行うには、その古いパッケージが含まれるカタログ マニフェストのファイル パスが必要になります。 カタログ マニフェストは、ネットワーク レイアウト キャッシュの "Archive" フォルダーにあります。 これは、レイアウトの更新時に保存されたものです。 "Archive" フォルダーには、1 つまたは複数の "GUID" 名フォルダーがあり、そのそれぞれに古いカタログ マニフェストが含まれています。 "GUID" フォルダーの数は、レイアウトに対する更新プログラムの数と同じである必要があります。

各 "GUID" フォルダー内にいくつかのファイルが保存されています。 特に関係のあるファイルが "catalog.json" ファイルと "version.txt" ファイルの 2 つです。 "catalog.json" ファイルは --clean オプションに渡す必要がある古いカタログ マニフェストです。 その他の version.txt ファイルには、この古いカタログ マニフェストのバージョンが含まれています。 バージョン番号に基づき、このカタログ マニフェストから古いパッケージを削除するかどうかを決定できます。 他の "GUID" フォルダーでも同じように行います。 クリーンアップを実行するカタログが決まったら、そのカタログのファイル パスを指定して --clean カタログを実行します。

--clean オプションを使用する方法の例を次に示します。

c:\VSLayout\vs_enterprise.exe --layout c:\VSLayout --clean c:\VSLayout\Archive\1cd70189-fc55-4583-8ad8-a2711e928325\Catalog.json --clean c:\VSLayout\Archive\d420889f-6aad-4ba4-99e4-ed7833795a10\Catalog.json

このコマンドを実行すると、セットアップでネットワークのレイアウト フォルダーが分析され、削除されるファイルのリストが検索されます。 このリストで、削除されるファイルを確認し、削除を確定できます。

ネットワーク インストールからクライアント コンピューターに Visual Studio をインストールする

管理者はインストール スクリプトの一部として Visual Studio をクライアント ワークステーションに展開することができます。 あるいは、管理者権限を持つユーザーは共有から直接セットアップを実行し、自分のコンピューターに Visual Studio をインストールできます。

  • ユーザーは、次のコマンドを実行して、ネットワーク レイアウトから製品を手動でインストールできます。

    \\server\products\VS\vs_enterprise.exe
    
  • 管理者は次のコマンドを実行することで、無人モードでインストールできます。

    \\server\products\VS\vs_enterprise.exe --quiet --wait --norestart
    

注意

しばらくお待ちください。 インストーラーと製品の両方が完了していることを確認し--waitます。 レイアウトからクライアントをインストールまたは更新する場合、インストーラーは常に最初にインストールまたは更新されます。その後、Visual Studio 製品自体がインストールまたは更新されます。 これらのプロセスはいずれも、正常な更新と見なされるために完了する必要があります。

無人自動バッチファイルの一部としてインストールまたは更新を実行する場合、--waitオプションを選択すると、 インストールが完了するまでプロセスvs_enterprise.exeが待機し、終了コードが返されます。 これは、企業の管理者が完了したインストールでさらにアクションを実行するときに役立ちます (たとえば、インストールの完了後、製品キーを適用する等)。 --wait オプションを使用すると、後続の操作が途中で開始されるのを防ぐことができます。 --wait を使用しない場合、インストールの両方の部分が完了する前に vs_enterprise.exe プロセスが終了し、インストール操作の状態を表していない不正確な終了コードが返されます。

インターネットにアクセスできないクライアントにインストールする

レイアウトからインストールする場合、インストールされる内容はデフォルトでレイアウトから取得されます。 ただし、レイアウトに含まれていないコンポーネントを選択し、クライアントが Microsoft ホステッドサーバーで更新プログラムを確認するように構成されている場合は、インストーラーによって、インターネットからも Visual Studio パッケージの取得が試行されます。 Visual Studio のセットアップでレイアウトにない内容がウェブからダウンロードされないようにするには、--noWeb オプションを使用します。 --noWeb が使用されていて、インストール対象として選択されている内容がレイアウトにない場合、セットアップは失敗します。

重要

この --noWeb オプションを使用しても、クライアントが Microsoft でホストされるサーバーで更新プログラムを探すように構成されている場合、インターネットに接続されているクライアント コンピューター上の Visual Studio インストーラーによる更新プログラムの "チェック" が停止されることはありません --noWeb を使用すると、クライアントが製品パッケージをダウンロードできなくなるだけです。 詳細については、「ネットワーク レイアウトからインストールされた Visual Studio クライアントを更新する」ページを参照してください。

"次のパラメーターと一致する製品が見つかりません" というエラー メッセージが表示される場合は、--noweb スイッチを使用していることを確認します。

このレイアウトの初期クライアントのインストールの既定値を構成する

[レイアウト] フォルダー内の一部のファイルを変更して、製品が最初にクライアント コンピューターにインストールされたときに使用される既定値を設定することができます。 共通の構成のオプションには、次のようなものがあります。

  • 初期インストール時に 既定で選択する必要があるワークロード、コンポーネント、または言語を構成 する機能。
  • クライアントが更新プログラムを受信する場所を指定する機能。 オプションは、管理者によって制御されるネットワーク レイアウトの場所から、またはインターネット上の Microsoft ホストサーバー (既定) からのものです。

レイアウトの既定のクライアント設定をカスタマイズして構成する方法の詳細については、「応答ファイルを使用した Visual Studio インストールの自動化」を参照してください。

エンタープライズ展開の動作を構成する

また、次のようにその他のエンタープライズ展開の動作を制御することもできます。

  • 管理者の更新プログラムを有効にする必要があるかどうか、およびその適用方法。
  • [更新プログラムの設定] ダイアログボックスで、使用可能な更新チャネルと、クライアント コンピューターに対するネットワーク レイアウトの表示方法を指定します。
  • 共有されているパッケージがインストールされている場所。
  • パッケージのキャッシュ場所とキャッシュされているかどうか
  • 通知の表示または非表示。

詳細については、「Visual Studio のエンタープライズ展開に既定値を設定する」を参照してください。

エラー コード

--wait パラメーターを使用した場合、操作の結果に応じて、%ERRORLEVEL% 環境変数は次のいずれかの値に設定されます。

結果
0 操作は正常に終了しました
740 昇格が必要
1001 Visual Studio インストーラー プロセスが実行中です
1003 Visual Studio が使用中です
1602 操作が取り消されました
1618 別のインストールを実行しています
1641 操作が正常に完了し、再起動が開始されました
3010 操作は正常に完了しましたが、インストールした製品を使用する前に再起動が必要です
5003 ブートストラップによるインストーラーのダウンロードが失敗しました
5004 操作が取り消されました
5005 ブートストラップのコマンドライン解析エラー
5007 操作がブロックされました - コンピューターが要件を満たしていません
8001 Arm マシン チェックの失敗
8002 バックグラウンド ダウンロードの事前チェックの失敗
8003 サポート外の選択可能エラー
8004 ターゲット ディレクトリのエラー
8005 ソース ペイロードの有効性検証失敗
8006 Visual Studio プロセスを実行しています
-1073720687 接続エラー
-1073741510 Microsoft Visual Studio インストーラーが終了しました (ユーザーか外部プロセスにより)
その他
(例:
-1、1、1603)
失敗の状態が発生しました。詳細については、ログを参照してください

ネットワーク レイアウトのサポートを受ける

ネットワーク レイアウトで問題が発生した場合は、それについて知りたいと思います。 Visual Studio インストーラーおよび Visual Studio IDE の両方に表示される [問題の報告] ツールから、製品の問題を Microsoft に報告してください。 自分は IT 管理者であるのに、Visual Studio がインストールされていない場合は、こちらで IT 管理者フィードバックを送信できます。 このツールを使用すると、問題の診断と解決に役立つ VS 収集ツール からログを送信できる場合に非常に便利です。

インストール関連の問題については、インストール チャット (英語のみ) のサポート オプションも用意されています。

他にも利用可能なサポート オプションがあります。 「Visual Studio 開発者コミュニティ」を参照してください。

関連項目