강좌 / 팁

윈 도 우 파워쉘만으로 PE 부팅 USB 만들기

2022.09.23 10:17

zerojiddu 조회:2393 추천:10

밑의 스크립트는 구글링 참조,

제가 다 이해를 하고, 파워쉘코드로 수정후 수차례 테스트하고 올립니다.
밑의 긴코드 전체를 파워쉘에 넣고 친후,

make-usbpe C:\(만들 폴더이름) (설치할 usb 드라이브 문자:) (포맷할 usb 드라이브 문자)
한칸씩 띄워만 주면 되고,

 

예) make-usbpe C:\PEtest J: J

포맷을 안하려면 끝의 옵션은 빼면 됩니다.

 

예) make-usbpe C:\PEtest J:

https://learn.microsoft.com/ko-kr/windows-hardware/get-started/adk-install

마이크로소프트에서 ADK Windows PE 추가 기능만 설치하면 되고,
설치후 내컴에 이 주소만 있으면 됩니다. C:\Program Files (x86)\Windows Kits\10
주소 끝의 숫자가 10이 아니면 밑의 긴코드 상단에 위치한 10 숫자만 바꿔주면 됩니다.

일반 PE와 달리 bitlocker 잠금,해제 명령어도 사용할수 있고,
파워쉘도 쓸수 있어 C 드라이브 포함 모든 드라이브에서 백업, 포맷, 프로그램 삭제 등
응급처치 명령어를 다 쓸수 있습니다. 한국어 설명이 표시되지만, 한글입력은 안됩니다.

이제 자동 일괄처리 시작.

 

function make-usbpe {
    param([Parameter(Position=0)][string]$Destination,
    [Parameter(Position=1)][string]$USBdriveLetter,
    [Parameter(Position=2)][string]$FormatFAT32)
    if($FormatFAT32){
        format-volume -driveLetter $FormatFAT32 -fileSystem FAT32 -full -newFilesystemLabel 'KORPE' -force
    }
    if(Test-Path "$Destination") {
        if((Get-Item "$Destination").GetDirectories().Length -gt 0) {
            Write-Warning "$Destination already exists."
            break
    }}
            else { New-Item -Path "$Destination" -Type directory -verbose }
$InstallDirectory = "$env:programfiles (x86)\Windows Kits\10"
$PArchitecture  = $env:Processor_Architecture
$bootFiles = "$InstallDirectory\Windows Preinstallation Environment\$PArchitecture\Media"
$winPeFile = "$InstallDirectory\Windows Preinstallation Environment\$PArchitecture\en-us"

New-Item -Path "$Destination\media" -Type directory -verbose
New-Item -Path "$Destination\mount" -Type directory -verbose
New-Item -Path "$Destination\media\sources" -type directory -verbose
start-sleep 3
xcopy /herky $bootfiles $Destination\media
copy-item $winPeFile\winpe.wim $Destination\media\sources -verbose
Rename-Item -Path "$Destination\media\sources\winpe.wim" -NewName "boot.wim" -verbose
start-sleep 3

Dism /mount-wim /wimfile:"$Destination\media\sources\boot.wim" /Index:1 /mountdir:"$Destination\mount"
start-sleep 3
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-WMI.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-WMI_ko-kr.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-NetFx.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-NetFx_ko-kr.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-FMAPI.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-Scripting.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-Scripting_ko-kr.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-PowerShell.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-PowerShell_ko-kr.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-SecureBootCmdlets.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-HTA.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-HTA_ko-kr.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-DismCmdlets.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-DismCmdlets_ko-kr.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-StorageWMI.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-StorageWMI_ko-kr.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-PlatformId.cab" /ignorecheck
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-WDS-Tools.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-WDS-Tools_ko-kr.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-SecureStartup.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-SecureStartup_ko-kr.cab"
Dism /Image:"$Destination\mount" /add-package /packagepath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-EnhancedStorage.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-EnhancedStorage_ko-kr.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-WinReCfg.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-WinReCfg_ko-kr.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-Dot3Svc.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-Dot3Svc_ko-kr.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-PPPoE.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\WinPE-PPPoE_ko-kr.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-FontSupport-KO-KR.cab"
Dism /Image:"$Destination\mount" /Add-Package /PackagePath:"$InstallDirectory\Windows Preinstallation Environment\amd64\WinPE_OCs\ko-kr\lp.cab"
start-sleep 3
dism /image:"$Destination\mount" /set-inputlocale:ko-KR
dism /image:"$Destination\mount" /set-AllIntl:ko-KR
start-sleep 3
dism /image:"$Destination\mount" /set-layereddriver:4

start-sleep 10
dism /unmount-wim /mountdir:"$Destination\mount" /commit
start-sleep 3
bootsect /nt60 $USBdriveLetter /force /mbr
start-sleep 3
compact /u $Destination\media
start-sleep 3
xcopy /herky $Destination\media\*.* $USBdriveLetter
}

 

전 make-usbpe c:\PETest J: J 라 넣어 J usb드라이브 전체 포맷부터 시작됩니다.

Screenshot 2022-09-23 083816.png

c:\ 드라이브에 임시작업 폴더를 만들고, 마이크로소프트에서 설치한 adk windows pe 폴더에서 필요한 파일을 복사,

dism 명령어가 pe를 만들 boot.wim(압축파일로 보시면 됨) 파일을 마운트 시키고 필요한 패키지 설치를 시작합니다.

Screenshot 2022-09-23 083943.png

패키지 설치중 NetFX(.NET Framwork) 이것만 시간이 좀 걸립니다(그래도 3분이내)

Screenshot 2022-09-23 084031.png

PE를 기본 한국어표시가 되게 바꿨구요.

Screenshot 2022-09-23 084426.png

PE에 필요한 패키지를 임시작업폴더에 저장후, 설치할 usb를 부팅이 되게끔 명령어를 넣었습니다.

Screenshot 2022-09-23 084526.png

 

이제 일괄처리가 다 끝났고, 설치할 usb J드라이브에 파일이 차 있는걸 볼수 있습니다.

Screenshot 2022-09-23 084625.png

 

어쩌다 부팅이 안돼 C:\ 드라이브에 들어가려면 비트라커가 잠겨 애먹은 적이 많습니다.

이럴때 PE에서 해제하면 됩니다.

20220923_085056.jpg

 

 

20220923_085306.jpg

 

파워쉘이 되기에 비트라커 해제후 PE 기본위치 X:\에 한정되지 않고,

C 포함 모든 드라이브에 들어가 원하는 작업을 할수 있습니다.

20220923_090028.jpg

 

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4221 소프트웨어| WinISO Download-Update 모음 [11] sunshine 2982 20 11-12
4220 윈 도 우| VHD 에 ISO 이용하여 Zorin-OS 설치하기(윈도우 설치도 동... [5] 타천사둘리 2089 8 11-10
4219 소프트웨어| vmware core 설정 [10] 카이지 2060 6 10-30
4218 윈 도 우| WIndows 11 작업표시줄 태블릿 모드 [3] 내꼬 2880 8 10-27
4217 윈 도 우| 윈도우 10/11 원본에 드라이버만 추가하여 설치하기 [2] NoOne 2819 8 10-26
4216 윈 도 우| 윈도우 10/11에서 미디어 스트리밍 켜기 [5] 와로 3980 12 10-25
4215 소프트웨어| snapshot 디지털 서명 [8] sunshine 2409 19 10-13
4214 소프트웨어| [팁] RaiDrive로 네이버 마이박스 로그인 전용 id 접속법 [2] asklee 1416 3 10-13
4213 윈 도 우| Windows 11 (22623.741) 2022.10.11 베타 채널 업데이트 방법 [3] 타천사둘리 2009 5 10-11
4212 소프트웨어| WinXShell 몇 가지 예제로 살펴보기 [8] 지후빠 1610 15 10-11
4211 윈 도 우| 윈도우11 22H2 탐색기 탭 활성화 [9] 읍민Kaine 5157 12 10-03
4210 하드웨어| 한국인 최애 멤브레인 키보드 10개 추천 [14] BOK 3195 3 10-03
4209 소프트웨어| 한글2022 업데이트 자동 설치 옵션 [17] 무월 5960 25 10-01
4208 윈 도 우| 윈도우11 . kb5017321 업데이트가 제대로 안 되는 경우 해... heykevin 2201 5 09-27
4207 소프트웨어| Snapshot간이현지화 [업데이트11] [45] sunshine 3914 29 09-26
4206 윈 도 우| [실사] 윈도우11(22H2) 업그레이드 우회 설치 [12] 무월 5024 18 09-24
» 윈 도 우| 파워쉘만으로 PE 부팅 USB 만들기 [5] zerojiddu 2393 10 09-23
4204 윈 도 우| 윈도우11.22H2이상에서 탐색기 탭 활성화하기-글 수정 [8] 타천사둘리 2756 10 09-21
4203 모 바 일| [팁] 스마트폰 스피커 물 빼기 [1] asklee 2737 2 09-19
4202 윈 도 우| 디펜더 전체검사때, CPU 100% 급상승 해결하기 [4] zerojiddu 2416 8 09-16
XE1.11.6 Layout1.4.8