OpenSSH Preview을(를) 확인 창 없이 설치하고 제거하며, 배포 도구에서 감지하기 위한 명령어입니다. 매니페스트에 기재되어 있거나 설치 기술의 문서화된 기본값처럼 확실한 명령어만 표시합니다.
관련 가이드: 무인 설치(자동 설치) 옵션 총정리 · 레지스트리·PowerShell로 프로그램 제거
winget 사용
PowerShell
winget install --id Microsoft.OpenSSH.Preview -e --silent --accept-package-agreements --accept-source-agreementswinget upgrade --id Microsoft.OpenSSH.Preview -e --silentwinget uninstall --id Microsoft.OpenSSH.Preview -e --silent설치 파일별
64비트 · MSI · 모든 사용자 · en-US
무인 설치
msiexec /i OpenSSH-Win64-v10.0.0.0.msi /qn /norestart로그 파일 저장
msiexec /i OpenSSH-Win64-v10.0.0.0.msi /qn /norestart /l*v "%TEMP%\openssh-preview-install.log"제거
msiexec /x {7E239BB2-181B-42C7-8C01-F0F0FC3F6CE7} /qn /norestart- MSI 제품 코드
- {7E239BB2-181B-42C7-8C01-F0F0FC3F6CE7}
- 제거 레지스트리 키
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{7E239BB2-181B-42C7-8C01-F0F0FC3F6CE7}
ARM64 · MSI · 모든 사용자 · en-US
무인 설치
msiexec /i OpenSSH-ARM64-v10.0.0.0.msi /qn /norestart로그 파일 저장
msiexec /i OpenSSH-ARM64-v10.0.0.0.msi /qn /norestart /l*v "%TEMP%\openssh-preview-install.log"제거
msiexec /x {ADFDCDB5-2DD5-4847-9A4A-7684F16CF4BA} /qn /norestart- MSI 제품 코드
- {ADFDCDB5-2DD5-4847-9A4A-7684F16CF4BA}
- 제거 레지스트리 키
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{ADFDCDB5-2DD5-4847-9A4A-7684F16CF4BA}
32비트 · MSI · 모든 사용자 · en-US
무인 설치
msiexec /i OpenSSH-Win32-v10.0.0.0.msi /qn /norestart로그 파일 저장
msiexec /i OpenSSH-Win32-v10.0.0.0.msi /qn /norestart /l*v "%TEMP%\openssh-preview-install.log"제거
msiexec /x {22384955-5296-43B1-A0BF-552D68995F47} /qn /norestart- MSI 제품 코드
- {22384955-5296-43B1-A0BF-552D68995F47}
- 제거 레지스트리 키
- HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{22384955-5296-43B1-A0BF-552D68995F47}
PowerShell: 다운로드, 검증, 설치
공식 파일을 다운로드하고 SHA256을 확인한 뒤 무인 설치합니다.
install-openssh-preview.ps1
$url = 'https://github.com/PowerShell/Win32-OpenSSH/releases/download/10.0.0.0p2-Preview/OpenSSH-Win64-v10.0.0.0.msi'
$sha256 = 'DDEC9C53864280759CF9F74791CEFD387100E3946AA849A1C138A4ED1B96B7D9'
$file = Join-Path $env:TEMP 'OpenSSH-Win64-v10.0.0.0.msi'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process msiexec.exe -ArgumentList '/i', ('"{0}"' -f $file), '/qn', '/norestart' -Wait install-openssh-preview.ps1
$url = 'https://github.com/PowerShell/Win32-OpenSSH/releases/download/10.0.0.0p2-Preview/OpenSSH-ARM64-v10.0.0.0.msi'
$sha256 = '7A17D0E22D004FB47CA4BFD8FEF926FA305DE4EBF70A6F3C7A29C39AABEF0023'
$file = Join-Path $env:TEMP 'OpenSSH-ARM64-v10.0.0.0.msi'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process msiexec.exe -ArgumentList '/i', ('"{0}"' -f $file), '/qn', '/norestart' -Wait install-openssh-preview.ps1
$url = 'https://github.com/PowerShell/Win32-OpenSSH/releases/download/10.0.0.0p2-Preview/OpenSSH-Win32-v10.0.0.0.msi'
$sha256 = 'DA3791EC28D1AB480466CF45B9983A747F8F046C86F4FFB99D9F7A6055982C04'
$file = Join-Path $env:TEMP 'OpenSSH-Win32-v10.0.0.0.msi'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process msiexec.exe -ArgumentList '/i', ('"{0}"' -f $file), '/qn', '/norestart' -Wait