Intune 및 Winget을 사용하여 디바이스에 애플리케이션 배포
Winget
Winget은 Windows 표준 패키지 관리자입니다.
PowerShell
Winget
명령을 실행하여 어플리케이션을 설치, 제거 및 업그레이드할 수 있습니다.자세한 내용은 확인하십시오공식 문서.
주의 사항
Winget을 사용할 때는 프로그램 공급자의 규정에 따라 사용하십시오.
회사로 사용하려면 법무검사 등을 한 뒤 사용해야 한다고 생각합니다.만약 무슨 위반이 있다면, 나는 말할 필요도 없고, 마이크로소프트도 책임을 지지 않을 것이다.반드시 스스로 책임을 지십시오.
사전 준비
Winget은 Windows11에 고정 번들로 묶여 있습니다.윈도10은 묶이지 않았지만 마이크로소프트 스토어 업데이트와 다운로드를 실시하면 마음대로 설치된다.
설치Microsoft 스토어의 어플리케이션 설치가 없으면 링크에서 설치한 후 사용할 수 있습니다.
사용법
PowerShell
Winget
을 실행하면 사용 방법이 출력됩니다.처음 실행 시
winget list
명령을 실행하십시오.Winget을 처음 사용하는 경우
すべてのソース契約条件に同意しますか?
.Y를 입력한 후 Enter 키를 눌러 Winget 을 사용할 수 있습니다.다음부터는 안 물어볼게요.
winget에 프로그램을 설치할 때의 동작
다음 작업을 수행합니다.
install
또는 import
명령을 실행할 때 최신 버전winget import
에 설치할 때 JSON에서 설명한 순서대로 위에서 설치명령을 사용하여 응용 프로그램 설치
설치 시
winget install
명령을 사용합니다.적용된 ID
winget list
가 필요하므로 명령을 사용하여 설치된 어플리케이션 목록에서 ID를 선택합니다.를 참고하십시오.
예를 들어 Google Chrome의 ID는
Google.Chrome
임을 알 수 있습니다.Chrome을 설치할 때 수행되는 명령은 다음과 같습니다.만약 의원 계약 조건이 다르면 동의를 요구받을 것이다.따라서 Intune에서 다음 명령을 실행하지 못할 수도 있습니다.
winget install Google.Chrome
<소스 계약조건에 동의하는 상태>.<다른 소스 계약 조건의 경우 Intune에 배포하지 못함>.
소스 설치 방지 계약 조건
소스 계약을 방지하는 옵션
--accept-package-agreements
--accept-source-agreements
입니다.이 옵션을 지정하면 Winget이 설치된 첫 번째 실행 사용자도 설치할 수 있습니다.
winget install Google.Chrome --accept-package-agreements --accept-source-agreements
Intune에서 Winget을 사용하여 응용 프로그램 게시
지금까지
Winget
단일 명령의 사용 방법을 소개했다.Intune에서 디바이스에 배포하는 방법은 아래에 설명되어 있습니다.
PowerShell 스크립트로 배포
이 스크립트에 로그인한 사용자의 자격 정보를 사용하여 수행 에서 예 를 선택합니다.(아니오로 설정하면 실패)
성공하면 장치 상태가 성공으로 변경됩니다.
여러 어플리케이션 통합 설치
여러 응용 프로그램을 설치하는 데는 사용
winget install
과 사용winget import
의 방법이 있다.방법winget install 사용 방법
winget install
필요한 응용 프로그램의 수량을 열거함으로써 여러 응용 프로그램을 집중적으로 설치할 수 있다.예를 들어 Chrome, Acrobat Reader, Slack을 설치할 때는 다음과 같습니다.
winget install Google.Chrome --accept-package-agreements --accept-source-agreements
winget install Adobe.Acrobat.Reader.64-bit --accept-package-agreements --accept-source-agreements
winget install SlackTechnologies.Slack --accept-package-agreements --accept-source-agreements
방법winget import 사용 방법
winget import <JSONファイルパス>
명령을 통해 JSON에 기술된 응용 프로그램을 통일적으로 설치할 수 있습니다.JSON의 만드는 법.
winget export <JSONファイルパス>
를 통해 출력할 수 있습니다.예를 들어 다음 JSON은 Slack, Adobe Acrobat Reader, Chrome가 설치된 상태에서 export가 설치된 JSON입니다.
앞으로 보내고 싶은 애플리케이션이 늘었더라도 JSON에 추가 기록을 남기면 바로 대응할 수 있다.텍스트이므로 버전 관리가 용이합니다.
winget_export.json
{
"$schema" : "https://aka.ms/winget-packages.schema.2.0.json",
"CreationDate" : "2022-04-20T00:51:28.181-00:00",
"Sources" :
[
{
"Packages" :
[
{
"PackageIdentifier" : "Microsoft.Edge"
},
{
"PackageIdentifier" : "Microsoft.OneDrive"
},
{
"PackageIdentifier" : "SlackTechnologies.Slack"
},
{
"PackageIdentifier" : "Adobe.Acrobat.Reader.64-bit"
},
{
"PackageIdentifier" : "Google.Chrome"
}
],
"SourceDetails" :
{
"Argument" : "https://winget.azureedge.net/cache",
"Identifier" : "Microsoft.Winget.Source_8wekyb3d8bbwe",
"Name" : "winget",
"Type" : "Microsoft.PreIndexed.Package"
}
}
],
"WinGetVersion" : "1.2.10271"
}
Win32에서 Winget 명령을 Win32 응용 프로그램으로 게시
Intune은 각종 데이터를 intunewin 파일로 변환하여 Win32 응용 프로그램으로 나누어 줍니다.intunewin 파일의 제작 방법과 분배 방법알기 쉬운 소식이 있으니 참고하세요.
$json = Join-Path $PSScriptRoot "winget_export.json"
winget import $json --accept-package-agreements --accept-source-agreements
powershell.exe -executionpolicy remotesigned -file "winget-import.ps1"
예를 들어, 다음 스크립트 "wiget list.ps1"을 사용했습니다.
목록에 있는 응용 프로그램 중 하나가 설치되지 않으면 응용 프로그램을 나누어 주어야 한다.
[String[]]$id_list = @(
"Microsoft.Edge",
"Microsoft.OneDrive",
"SlackTechnologies.Slack",
"Adobe.Acrobat.Reader.64-bit",
"Google.Chrome"
)
foreach ($id in $id_list) {
winget list --exact $id --accept-source-agreements
if ($LASTEXITCODE -ne 0) {
exit $LASTEXITCODE
}
}
끝맺다
winget은 매우 편리한 도구이지만 Intune에서 사용감이 커지지 않아 기사를 썼습니다.
윈도 11 표준 묶음, 나는 장래에 윈도 포장 관리의 defact 표준이 되고 싶다.Windows에서도 한꺼번에 어플리케이션을 설치 또는 제거할 수 있어 기분이 좋고, 앞으로도 Intune과의 합병을 고려할 수 있다는 게 더 중요한 기술이다.
이상은 이렇습니다. 본 보도가 어떤 역할을 할 수 있다면 다행입니다.
Reference
이 문제에 관하여(Intune 및 Winget을 사용하여 디바이스에 애플리케이션 배포), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/hara_power/articles/794e5f980310d7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)