Visual Studio의 네트워크 기반 설치 업데이트Update a network-based installation of Visual Studio

최신 제품 업데이트를 사용하여 Visual Studio의 네트워크 설치 레이아웃을 업데이트할 수 있으므로, 해당 레이아웃을 Visual Studio의 최신 업데이트에 대한 설치 지점으로 사용하거나 이미 클라이언트 워크스테이션에 배포된 설치를 유지 관리하는 데 사용할 수 있습니다.It's possible to update a network installation layout of Visual Studio with the latest product updates so that it can be used both as an installation point for the latest update of Visual Studio and also to maintain installations that are already deployed to client workstations.

네트워크 레이아웃을 업데이트하는 방법How to update a network layout

최신 업데이트를 포함하도록 네트워크 설치 공유를 새로 고치려면 --layout 명령을 실행하여 업데이트된 패키지를 점진적으로 다운로드합니다.To refresh your network install share so that it includes the latest updates, run the --layout command to incrementally download updated packages.

네트워크 레이아웃을 처음 만들 때 부분 레이아웃을 선택했다면 이러한 설정이 저장됩니다.If you selected a partial layout when you first created the network layout, those settings are saved. 이후 모든 레이아웃 명령은 이전 옵션과 함께 지정하는 새 옵션을 사용합니다.Any future layout commands use the previous options plus any new options that you specify. 이는 15.3의 새로운 기능입니다. 이전 버전의 레이아웃을 사용 중인 경우에는 네트워크 설치 레이아웃을 처음 만들 때 사용한 것과 같은 명령줄 매개 변수(즉, 같은 워크로드 및 언어)를 사용하여 콘텐츠를 업데이트해야 합니다.(This is new in 15.3.) If you are using a layout of an older version, you should use the same command-line parameters that you used when you first created the network install layout (in other words, the same workloads and languages) to update its content.

레이아웃을 파일 공유에서 호스트하는 경우 개인 레이아웃 복사본(예: c:\vs2017offline)을 업데이트하고 업데이트된 콘텐츠가 모두 다운로드된 후 해당 복사본을 파일 공유(예: \server\products\VS2017)로 복사합니다.If you host a layout on a file share, you should update a private copy of the layout (for example, c:\vs2017offline) and then, after all of the updated content is downloaded, copy it to your file share (for example, \server\products\VS2017). 이 작업을 하지 않으면 레이아웃이 업데이트되는 동안 설치 프로그램을 실행하는 사용자가 레이아웃에서 일부 콘텐츠를 가져오지 못할 수 있습니다. 이는 레이아웃이 완전히 업데이트되지 않았기 때문입니다.If you don't do this, there is a greater chance that any users who run Setup while you are updating the layout might not be able to get all of the content from the layout because it is not yet completely updated.

레이아웃을 만든 다음 업데이트하는 방법을 살펴보겠습니다.Let's walk through how to create and then update a layout:

  • 먼저, 다음은 영어용 워크로드 하나만 포함된 레이아웃을 만드는 방법의 예입니다.First, here's an example of how to create a layout with one workload for English only:

    vs_enterprise.exe --layout c:\VS2017Layout --add Microsoft.VisualStudio.Workload.ManagedDesktop --lang en-US
    
  • 다음은 이 동일한 레이아웃을 최신 버전으로 업데이트하는 방법입니다.Here's how to update that same layout to a newer version. 명령줄 매개 변수를 추가로 지정할 필요가 없습니다.You don't have to specify any additional command-line parameters. 이전 설정이 저장되어 이 레이아웃 폴더의 모든 후속 레이아웃 명령에 사용됩니다.The previous settings were saved and will be used by any subsequent layout commands in this layout folder.

    vs_enterprise.exe --layout c:\VS2017Layout  
    
  • 무인 방식으로 레이아웃에 최신 버전으로 업데이트하는 방법은 다음과 같습니다.Here's how to update your layout to a newer version in an unattended manner. 레이아웃 작업은 새 콘솔 창에서 설치 프로세스를 실행합니다.The layout operation runs the setup process in a new console window. 사용자가 최종 결과는 물론, 발생했을 수 있는 오류에 대한 요약을 볼 수 있도록 창이 열려 있습니다.The window is left open so users can see the final result and a summary of any errors that might have occurred. 무인 방식으로 레이아웃 작업을 수행하고 있는 경우(예를 들어 레이아웃을 최신 버전으로 업데이트하기 위해 정기적으로 실행되는 스크립트가 있는 경우) --passive 매개 변수를 사용하면 프로세스는 창을 자동으로 종료하니다.If you are performing a layout operation in an unattended manner (for example, you have a script that is regularly run to update your layout to the latest version), then use the --passive parameter and the process will automatically close the window.

    vs_enterprise.exe --layout c:\VS2017Layout --passive
    
  • 다음은 추가 워크로드와 지역화된 언어를 추가하는 방법입니다.Here's how to add an additional workload and localized language. 여기의 명령은 Azure 워크로드를 추가합니다. 이제 관리되는 데스크톱과 Azure가 이 레이아웃에 포함됩니다.(This command adds the Azure workload.) Now both Managed Desktop and Azure are included in this layout. 이러한 모든 워크로드에 대해 영어 및 독일어용 언어 리소스도 포함됩니다.The language resources for English and German are also included for all these workloads. 그리고 레이아웃이 사용 가능한 최신 버전으로 업데이트됩니다.And, the layout is updated to the latest available version.

    vs_enterprise.exe --layout c:\VS2017Layout --add Microsoft.VisualStudio.Workload.Azure --lang de-DE
    
  • 마지막으로 버전을 업데이트하지 않고 워크로드와 지역화된 언어를 추가하는 방법은 다음과 같습니다.And finally, here's how to add an additional workload and localized language without updating the version. 여기의 명령은 ASP.NET 및 웹 워크로드를 추가합니다. 이제 관리되는 데스크톱, Azure, ASP.NET 및 웹 워크로드가 이 레이아웃에 포함됩니다.(This command adds the ASP.NET & Web workload.) Now the Managed Desktop, Azure, and ASP.NET & Web workloads are included in this layout. 이러한 모든 워크로드에 대해 영어, 독일어 및 프랑스어용 언어 리소스도 포함됩니다.The language resources for English, German, and French are also included for all these workloads. 그러나 이 명령이 실행될 때 레이아웃이 사용 가능한 최신 버전으로 업데이트되지 않았고,However, the layout was not updated to the latest available version when this command was run. 기존 버전으로 유지됩니다.It remains at the existing version.

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

업데이트를 클라이언트 컴퓨터에 배포하는 방법How to deploy an update to client machines

네트워크 환경 구성 방법에 따라 엔터프라이즈 관리자가 업데이트를 배포하거나 클라이언트 컴퓨터에서 업데이트를 시작할 수 있습니다.Depending on how your network environment is configured, an update can either be deployed by an enterprise administrator or initiated from a client machine.

  • 사용자는 오프라인 설치 폴더에서 설치된 Visual Studio 인스턴스를 업데이트할 수 있습니다.Users can update a Visual Studio instance that was installed from an offline installation folder:

    • Visual Studio 설치 관리자를 실행합니다.Run the Visual Studio Installer.
    • 그런 다음 업데이트를 클릭합니다.Then, click Update.
  • 관리자는 다음 두 가지 명령을 각각 사용하여 사용자 조작 없이 Visual Studio의 클라이언트 배포를 업데이트할 수 있습니다.Administrators can update client deployments of Visual Studio without any user interaction with two separate commands:

    • 먼저 Visual Studio 설치 관리자를 업데이트합니다.First, update the Visual Studio installer:
      vs_enterprise.exe --quiet --update
    • 그다음에 Visual Studio 응용 프로그램 자체를 업데이트합니다.Then, update the Visual Studio application itself:
      vs_enterprise.exe update --installPath "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise" --quiet --wait --norestart

참고

vswhere.exe 명령을 사용하여 클라이언트 컴퓨터에서 기존 Visual Studio 인스턴스의 설치 경로를 확인합니다.Use the vswhere.exe command to identify the install path of an existing instance of Visual Studio on a client machine.

사용자에게 업데이트 알림이 제공되는 시점을 제어하는 방법에 대한 자세한 내용은 네트워크 기반 Visual Studio 배포에 대한 업데이트 제어를 참조하세요.For details on how to control when update notifications are presented to users, see Control updates to network-based Visual Studio deployments.

레이아웃을 확인하는 방법How to verify a layout

--verify를 사용하여 제공된 오프라인 캐시에 대한 확인을 수행할 수 있습니다.Use --verify to perform verification on the offline cache supplied. 이 명령은 패키지 파일이 누락되거나 잘못되었는지 확인합니다.It checks if packages files are either missing or invalid. 확인이 끝나면 누락된 파일과 잘못된 파일의 목록을 표시합니다.At the end of the verification, it prints the list of missing files and invalid files.

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

vs_enterprise.exe는 layoutDir 내에서 호출할 수 있습니다.The vs_enterprise.exe can be invoked inside the layoutDir.

참고

--verify 옵션에 필요한 몇 가지 중요한 메타데이터 파일이 레이아웃 오프라인 캐시에 있어야 합니다.Some important metadata files that are needed by the --verify option must be in the layout offline cache. 이러한 메타데이터 파일을 사용할 수 없으면 “--verify”가 실행될 수 없고 설치 프로그램에서 오류가 발생합니다.If these metadata files are missing, "--verify" cannot run and Setup gives you an error. 이 오류가 발생하는 경우 새 오프라인 레이아웃을 다른 폴더나 같은 오프라인 캐시 폴더에 다시 만듭니다.If you experience this error, re-create a new offline layout to a different folder (or to the same offline cache folder. 이렇게 하려면 초기 오프라인 레이아웃을 만드는 데 사용한 동일한 레이아웃 명령을 실행합니다.To so do, run the same layout command that you used to create the initial offline layout. 예를 들어, Vs_enterprise.exe --layout <layoutDir>을 입력합니다.For example, Vs_enterprise.exe --layout <layoutDir>.

Microsoft에서 Visual Studio 업데이트를 정기적으로 제공하므로, 만드는 새 레이아웃은 초기 레이아웃과 버전이 같지 않을 수 있습니다.Microsoft ships updates to Visual Studio periodically, so the new layout that you create might not be the same version as the initial layout.

레이아웃을 수정하는 방법How to fix a layout

--fix를 사용하여 --verify와 동일한 확인을 수행하고 식별된 문제를 해결해 볼 수도 있습니다.Use --fix to perform the same verification as --verify and also try to fix the identified issues. --fix 프로세스를 실행하려면 인터넷 연결이 필요하므로 --fix를 호출하기 전에 컴퓨터가 인터넷에 연결되어 있는지 확인합니다.The --fix process needs an Internet connection, so make sure your machine is connected to the Internet before you invoke --fix.

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

vs_enterprise.exe는 layoutDir 내에서 호출할 수 있습니다.The vs_enterprise.exe can be invoked inside the layoutDir.

레이아웃에서 이전 버전을 제거하는 방법How to remove older versions from a layout

오프라인 캐시에 대한 레이아웃 업데이트를 수행한 후 레이아웃 캐시 폴더에 최신 Visual Studio 설치에 더 이상 필요하지 않은 사용되지 않는 패키지가 일부 포함되어 있을 수 있습니다.After you perform layout updates to an offline cache, the layout cache folder may have some obsolete packages that are no longer needed by the latest Visual Studio installation. --clean 옵션을 사용하여 오프라인 캐시 폴더에서 사용되지 않는 패키지를 제거할 수 있습니다.You can use the --clean option to remove obsolete packages from an offline cache folder.

이렇게 하려면 이러한 사용되지 않는 패키지를 포함하는 카탈로그 매니페스트에 대한 파일 경로가 필요합니다.To do this, you'll need the file path(s) to catalog manifest(s) that contain those obsolete packages. 카탈로그 매니페스트는 오프라인 레이아웃 캐시의 “보관” 폴더에서 찾을 수 있으며You can find the catalog manifests in an "Archive" folder in the offline layout cache. 레이아웃을 업데이트할 때 이 위치에 저장됩니다.They are saved there when you update a layout. “보관” 폴더에는 하나 이상의 “GUID” 폴더가 있고 각 폴더에는 사용되지 않는 카탈로그 매니페스트가 포함되어 있습니다.In the "Archive" folder, there is one or more "GUID" named folders, each of which contains an obsolete catalog manifest. “GUID” 폴더의 수는 오프라인 캐시를 업데이트한 수와 동일합니다.The number of "GUID" folders should be the same as the number of updates made to your offline cache.

소수의 파일이 각 “GUID” 폴더 안에 저장됩니다.A few files are saved inside each "GUID" folder. 가장 관심이 가는 두 파일은 “catalog.json” 파일과 “version.txt” 파일입니다.The two files of most interest are a "catalog.json" file and a "version.txt" file. “catalog.json” 파일은 --clean 옵션에 전달해야 하는 사용되지 않는 카탈로그 매니페스트입니다.The "catalog.json" file is the obsolete catalog manifest you'll need to pass to the --clean option. 다른 version.txt 파일에는 이 사용되지 않는 카탈로그 매니페스트의 버전이 포함되어 있습니다.The other version.txt file contains the version of this obsolete catalog manifest. 버전 번호를 기준으로 이 카탈로그 매니페스트에서 사용되지 않는 패키지를 제거할지를 결정할 수 있습니다.Based on the version number, you can decide whether you want to remove obsolete packages from this catalog manifest. 다른 “GUID” 폴더를 확인할 때도 동일한 작업을 수행할 수 있습니다.You can do the same as you go through the other "GUID" folders. 정리할 카탈로그를 결정한 후 이러한 카탈로그의 파일 경로를 지정하여 --clean 명령을 실행합니다.After you make the decision on the catalog(s) you want to clean, run the --clean command by supplying the files paths to these catalogs.

다음은 --clean 옵션을 사용하는 방법에 대한 몇 가지 예입니다.Here are a few examples of how to use the --clean option:

vs_enterprise.exe --layout <layoutDir> --clean <file-path-of-catalog1> <file-path-of-catalog2> …
vs_enterprise.exe --layout <layoutDir> --clean <file-path-of-catalog1> --clean <file-path-of-catalog2> …

vs_enterprise.exe를 <layoutDir> 내에서 호출할 수도 있습니다.You can also invoke vs_enterprise.exe inside the <layoutDir>. 예를 들면 다음과 같습니다.Here's an example:

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

이 명령을 실행하면 설치 프로그램은 오프라인 캐시 폴더를 분석하여 제거할 파일 목록을 찾습니다.When you execute this command, Setup analyzes your offline cache folder to find the list of files that it will remove. 그러면 삭제될 파일을 검토하고 삭제를 확인할 수 있습니다.You will then have a chance to review the files that are going to be deleted and confirm the deletions.

지원 받기Get support

때로는 무엇인가 잘못될 수도 있습니다.Sometimes, things can go wrong. Visual Studio 설치에 실패하는 경우에는 Visual Studio 2017 설치 및 업그레이드 문제 해결 페이지를 참조하세요.If your Visual Studio installation fails, see the Troubleshooting Visual Studio 2017 installation and upgrade issues page. 문제 해결 단계가 도움이 되지 않는 경우 라이브 채팅을 통해 Microsoft에 설치 지원을 문의할 수 있습니다(영어만 가능).If none of the troubleshooting steps help, you can contact us by live chat for installation assistance (English only). 자세한 내용은 Visual Studio 지원 페이지를 참조하세요.For details, see the Visual Studio support page.

몇 가지 추가 지원 옵션은 다음과 같습니다.Here are a few more support options:

참고 항목See also