강좌 / 팁

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

2022.09.23 10:17

zerojiddu 조회:2298 추천: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 - - -
292 소프트웨어| WinRAR 6.1은 Windows XP 지원을 중단하고 Windows 11의 상... [1] VᴇɴᴜꜱGɪ 1334 5 01-26
291 소프트웨어| PE 환경에서 AOMEI Backupper 구동을 위한 파일, 레지스트... [11] 무월 1331 22 12-27
290 서버 / IT| CentOS 8 데스크탑 환경: Xfce 데스크탑 설치하기 VenusGirl 1331 3 06-14
289 소프트웨어| 단편영화 촬영하면서 제작한 프리미어강좌입니다. Premiere... murimgasa 1331 2 08-20
288 소프트웨어| Adobe Premiere강좌 화면떨림 보정(Warp Stabilizer)하는 방법 [1] murimgasa 1330 1 08-25
287 소프트웨어| 토커 시스템 도구 모음 [3] 눈이 1329 9 08-03
286 소프트웨어| pureBasic - IXMLDOMDocument [6] 입니다 1328 27 12-16
285 윈 도 우| Gpedit.msc는 무엇 이죠? (구글링) [4] 레마클로 1328 1 03-27
284 윈 도 우| TotalCommander 단축키 도움말 [12] 슈머슈마 1326 12 07-18
283 윈 도 우| 윈도우 7 설치본 드라이버 추가 하기 [8] 디폴트 1325 14 10-17
282 모 바 일| 모바일 파워디렉터 강좌 글자(타이틀) 넣기 & 편집 방법 [1] murimgasa 1324 2 10-03
281 윈 도 우| 바로가기 아이콘을 만들어 원 클릭으로 디펜더 온 오프 메... [8] heykevin 1321 20 09-09
280 소프트웨어| 크롬확장 검색 오류 해결 [3] 내꼬 1314 5 09-04
279 윈 도 우| 윈11 탐색기 홈제거 레지스트리 [11] 我行 1312 13 05-31
278 기 타| [부팅영역] FAT12, FAT16, FAT32, exFAT 호환성 비교표 [2] 흘러가듯이 1312 8 02-28
277 윈 도 우| 폴더 깊이 제한하여 파일,폴더 찾기 배치 함수 [11] 지후빠 1310 15 01-12
276 소프트웨어| 크로미움 브라우저에 검색엔진이 없을 때 Antory 1310 3 02-15
275 윈 도 우| [3탄] PE빌드를 위한 누적 업데이트 통합 (Winre.wim + ins... [14] 무월 1307 26 08-25
274 모 바 일| [팁] 아이폰 계산기에서도 잘못 입력된 숫자를 하나씩 지울... asklee 1307 1 05-05
273 소프트웨어| Premiere CS6 강좌 18 녹음,녹음설정방법, Narration설정하... murimgasa 1303 1 11-06
XE1.11.6 Layout1.4.8