Windows 10 20H1을 20H2로 변경하는 방법

Windows 10 20H1을 20H2로 변경하는 방법에 대해서 간단하게 포스팅 하려고 합니다. 아주 간단합니다. 파일 하나만 설치하면 됩니다. 오프라인 또는 온라인으로 해도 됩니다. 오프라인의 경우 통합본 만들때 합치셔도 되고, winpe로 설치를 한다고 하면 PE에서 cab파일만 설치를 하셔도 됩니다.

다운로드

윈도우 업데이트에서는 다운로드가 안되며, 인사이드 빌드에 참여 하는 분들께만 배포가 되어지고 있습니다. 아래의 각 기종별로 필요한 파일을 다운로드 받습니다.

파일 명은 KB4562830.cab 인데요. 이 파일은 윈도우즈 업데이트 카탈로그에는 나오지는 않습니다. slow ring 참가자들 한테만 배포가 된다고 하네요.

구글 드라이브에 올렸습니다. x86, x64, arm 세가지 아키텍쳐를 올려 드립니다.

20H1을 20H2로 변경1(윈도우 설치후)

1. Dism으로 변경

winver 버전으로 윈도우 버전을 확인 하니 현재 최신 버전인 windows 10 버전 2004 (OS빌드 19041.450)으로 나옵니다.

2020 08 15 071708

“ver” 명령어로 버전 확인 했습니다. 위와 동일하게 빌드 넘버가 나옵니다.

2020 08 15 071724

64비트로 해보겠습니다. 20H1 ->20H2로 변경입니다. 명령 프롬프트를 관리자 권한으로 실행시키고 아래 명령어를 입력하시면 됩니다. 당연히 cab 파일은 같은 폴더에 있어야 합니다. 아래는 바탕화면을 예로 들었습니다.

cd %userprofile%\desktop
Dism.exe /Online /Add-Package /PackagePath:windows10.0-kb4562830-x64.cab /norestartCode language: DOS .bat (dos)
2020 08 15 071956

설치가 완료되면 재부팅 해줍니다. 우리가 누적업데이트를 설치 했을때와 비슷하게 업데이트 메시지가 나옵니다.

2020 08 15 072132

특이한 점은 재부팅 하면서 엣지도 같이 업데이트 됩니다. 크로미움 엣지로 바뀝니다.

Windows 10 20H1을 20H2로 변경후 크로미움 엣지 통합

바뀐 윈도우 버전 확인입니다. 버전은 나오지 않으며, 19H2로만 나옵니다. 빌드 넘버가 19041.450에서 19042.450으로 잘 바뀌였습니다.

Windows 10 20H1을 20H2로 변경 빌드확인

2. InstallUpdate GUI유틸로 변경

바탕화면에 InstallUpdate-GUI-v1.1.12를 관리자 권한으로 실행하고 browse 버튼을 클릭하여 windows10.0-kb4562830-x64.cab 파일을 선택한후 Install Update 버튼을 클릭하면 됩니다. dism 명령어에 익숙하지 않은 사용자가 사용하면 편리 합니다.

2020 08 16 095925

InstallUpdate를 클릭하면 dism 명령프롬프트 창이 실행되면서 cab파일을 통합합니다. 통합 완료후에는 다시시작 하겠습니까? 라는 메시지가 나오는데요. Y를 입력하면 재부팅 됩니다.

2020 08 16 100133

아래 버튼을 클릭하시면 해당 유틸인 InstallUpdaeGUI를 받으실 수 있습니다.

20H1을 20H2로 변경2(윈도우 설치전 또는 설치중)

위의 방법들은 윈도우가 설치 된 후에 20H1에서 20H2로 전환 하는 방법입니다. 설치 전에 통합하게 되면 더 편할수 있습니다. 이 방법은 20H2로 쓰실 분들만 추천합니다.

1. 오프라인 통합(20H1 통합본에 추가 통합)

먼저 이전 통합본에서 pro 에디션만 추출해 보도록 하겠습니다.

F:H1\ISO\sources>dism.exe /Export-Image /SourceImageFile:install.wim /SourceIndex:3 /DestinationImageFile:pro.wim

이미지를 내보내는 중
[==========================100.0%==========================]
작업을 완료했습니다.Code language: DOS .bat (dos)

임시 폴더를 만들고 마운트를 해줍니다.

F:H1\ISO\sources>mkdir temp
F:H1\ISO\sources>Dism.exe /Mount-Wim /WimFile:pro.wim /index:1 /MountDir:temp

이미지를 탑재하는 중
[==========================100.0%==========================]
작업을 완료했습니다.
Code language: DOS .bat (dos)

windows10.0-kb4562830-x64.cab 파일을 pro.wim파일과 동일한 위치에 복사한후 dism으로 통합을 합니다.

F:H1\ISO\sources>copy %userprofile%\Downloads\windows10.0-kb4562830-x64.cab F:H1\ISO\Sources\ /y
        1개 파일이 복사되었습니다.

F:H1\ISO\sources>Dism.exe /Image:temp /Add-Package /PackagePath:windows10.0-kb4562830-x64.cab

이미지 버전: 10.0.19041.450

1 중 1을(를) 처리하는 중 - Package_for_KB4562830~31bf3856ad364e35~amd64~~10.0.1.1 패키지를 추가하는 중
[==========================100.0%==========================]
작업을 완료했습니다.Code language: DOS .bat (dos)

통합본에 정상적으로 통합이 완료 되었네요. 이제 저장하고 언마운트를 합니다.

F:H1\ISO\sources>Dism.exe /Unmount-Wim /Mountdir:temp /commit

이미지 파일: F:H1\ISO\sources\pro.wim
이미지 색인: 1
이미지를 저장하는 중
[==========================100.0%==========================]
이미지를 탑재 해제하는 중
[==========================100.0%==========================]
작업을 완료했습니다.Code language: DOS .bat (dos)

pro.wim 파일을 vmware 가상머신 디스크 이미지에 풀어서 테스트를 해보겠습니다. vmware가 Y드라이브로 마운트 되었네요. 포멧을 시킨다음 Dism으로 이미지를 풀어줬습니다. 더불어 bcd도 생성해줬습니다.

F:H1\ISO\sources>Dism.exe /Apply-Image /ImageFile:pro.wim /Index:1 /ApplyDir:Y:

이미지 적용 중
[==========================100.0%==========================]
작업을 완료했습니다.Code language: DOS .bat (dos)

설치후 확인을 하니 20H2로 빌드도 변경되고, 엣지도 크로미움 엣지로 변경이 되어있네요. 설치 하고 최초 로그인 화면입니다ㅣ.

2020 08 16 104340

빌드 확인을 해봤습니다. 잘 통합 되어져서 설치가 되어 있네요. 작업표시줄도 약간 바뀌였네요.

Windows 10 20H1을 20H2로 변경(통합본에 통합)

2. unattend.xml(무인설치 응답파일)에 적용

이 방법은 제가 선호하는 방식입니다. 통합을 하지 않고, 무인설치 응답파일에서 설치를 하게 해주는 방법입니다. 당연히 이미지 파일에는 windows10.0-kb4562830-x64.cab 파일이 들어가 있어야 겠죠? 다음 통합본 부터는 추가할 예정입니다.

아래는 예시입니다. 91~94 Line에서는 windows10.0-kb4562830-x64.cab 파일을 dism 명령어로 통합을 60~64 Line에서는 최초 로그인시에 사용된 파일을 삭제하도록 삭제 명령어를 넣었습니다.

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="windowsPE">
        <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <SetupUILanguage>
                <UILanguage>ko-KR</UILanguage>
            </SetupUILanguage>
            <UILanguage>ko-KR</UILanguage>
            <LayeredDriver>5</LayeredDriver>
            <UILanguageFallback>en-US</UILanguageFallback>
            <InputLocale>ko-KR</InputLocale>
            <SystemLocale>ko-KR</SystemLocale>
        </component>
        <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <UserData>
                <AcceptEula>true</AcceptEula>
                <ProductKey>
                    <WillShowUI>OnError</WillShowUI>
                </ProductKey>
            </UserData>
        </component>
    </settings>
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <AutoLogon>
                <Enabled>true</Enabled>
                <LogonCount>1</LogonCount>
                <Username>SOO</Username>
            </AutoLogon>
            <OOBE>
                <HideEULAPage>true</HideEULAPage>
                <HideLocalAccountScreen>true</HideLocalAccountScreen>
                <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>
                <HideOnlineAccountScreens>true</HideOnlineAccountScreens>
                <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
                <NetworkLocation>Work</NetworkLocation>
                <ProtectYourPC>3</ProtectYourPC>
                <SkipMachineOOBE>true</SkipMachineOOBE>
            </OOBE>
            <UserAccounts>
                <LocalAccounts>
                    <LocalAccount wcm:action="add">
                        <Password>
                            <Value>UABhAHMAcwB3AG8AcgBkAA==</Value>
                            <PlainText>false</PlainText>
                        </Password>
                        <DisplayName>SOO</DisplayName>
                        <Description>soohyunet default user</Description>
                        <Group>Administrators</Group>
                        <Name>SOO</Name>
                    </LocalAccount>
                </LocalAccounts>
            </UserAccounts>
            <FirstLogonCommands>
                <SynchronousCommand wcm:action="add">
                    <Order>1</Order>
                    <Description>TurnOffPasswordExpiration</Description>
                    <CommandLine>cmd /c wmic path Win32_userAccount where Name=&apos;GongGames&apos; set PasswordExpires=false</CommandLine>
                </SynchronousCommand>
                <SynchronousCommand wcm:action="add">
                    <Order>2</Order>
                    <Description>del 20H22</Description>
                    <CommandLine>cmd /c del %windir%\windows10.0-kb4562830-x64.cab /q</CommandLine>
                </SynchronousCommand>
            </FirstLogonCommands>            
        </component>
    </settings>
    <settings pass="specialize">
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <TimeZone>Korea Standard Time</TimeZone>
            <RegisteredOwner>soske</RegisteredOwner>
            <ComputerName>MYCOM</ComputerName>
            <RegisteredOrganization>soohyunet</RegisteredOrganization>
        </component>
        <component name="Microsoft-Windows-UnattendedJoin" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <Identification>
                <JoinWorkgroup>soohyunet</JoinWorkgroup>
            </Identification>
        </component>
        <component name="Microsoft-Windows-IE-InternetExplorer" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <Home_Page>https://soohyunet.com</Home_Page>
        </component>
        <component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <RunSynchronous>
                <RunSynchronousCommand wcm:action="add">
                    <Description>UACOFF</Description>
                    <Path>reg ADD &quot;HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System&quot; /v &quot;EnableLUA&quot; /t REG_DWORD /d 0 /f</Path>
                    <Order>1</Order>
                </RunSynchronousCommand>
                <RunSynchronousCommand wcm:action="add">
                    <Description>20H2</Description>
                    <Path>Dism.exe /Online /Add-Package /PackagePath:%windir%\windows10.0-kb4562830-x64.cab /norestart</Path>
                    <Order>2</Order>
                </RunSynchronousCommand>                
            </RunSynchronous>
        </component>
    </settings>
    <cpi:offlineImage cpi:source="wim:c:/wsim/sources/install.wim#Windows 10 Pro" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>
Code language: DOS .bat (dos)

unattend.xml 파일로 적용하니 새로운 Microsoft Edge 시작이 뜨질 않네요. 또한 작업표시줄도 좀 다릅니다. 이건 또 연구를 해봐야겠네요. 무인응답설치파일을 사용해서인지 뭔지 좀 헷갈립니다. 안나오니 지저분하지 않고 좋긴 합니다.

위의 코드를 참조하셔서 응용하셔도 좋으실듯 합니다. 이상으로 20H1을 20H2로 변환 시키는 방법에대해서 여러가지 알아 봤습니다.

다운로드 참고

uupdump에서 다운로드 받으실 수 있으십니다. 링크가 매번 변해서 그때 그때 들어가야 합니다. 고정링크가 아닙니다.

https://uupdump.ml/get.php?id=d8a5d935-23bc-4df2-8936-ee53cc44d500&pack=0&edition=updateOnly

https://uupdump.ml/get.php?id=d43434b0-7b06-4fc4-9505-955158da768f&pack=0&edition=updateOnly

6 thoughts on “Windows 10 20H1을 20H2로 변경하는 방법”

    • 안녕하세요. 코어가 달라서 없습니다. 파일이 아닌 윈도우 업데이트를 통해서만 업그레이드 가능합니다. 또는 20H2 ISO 이미지로도 오프라인 업그레이드도 가능 합니다.

      응답
  1. 안녕하세요?
    윈도우10 PE를 받고 싶은데 PE카테고리에는 글을 쓸수가 없어서
    이렇게 이곳에 글을 쓰게 되었습니다.
    죄송하지만 윈도우10PE를 받을수 있을까요?
    노고에 감사드립니다.

    응답

Leave a Comment