강좌 / 팁

윈 도 우 프로그램 필요없이, 윈도우 설치 USB 만들기

2023.01.18 17:46

zerojiddu 조회:5667 추천:27

많이들 써 보셨을건데,

 

그냥 윈도우에 있는 명령어만으로

파워쉘에서 실행되는 스크립트로 짜봤습니다.

사전에 USB에 드라이브 포맷 준비만 해놓고,

밑의 전체 코드를 파워쉘[관리자]에 치면 됩니다.

 

Function Get-IsoLocation
{
    [CmdletBinding()]
    [OutputType([string])]
    Param
    (
        [Parameter(
            Mandatory = $false,
            Position = 0)]
        [String]$WindowTitle = "Opening For .ISO",

        [Parameter(
            Mandatory = $true,
            ValueFromPipelineByPropertyName = $true,
            HelpMessage = "Initial Directory for browsing",
            Position = 1)]
        [String]$RootDir
    )
    Add-Type -AssemblyName System.Windows.Forms
    $OpenFileDialog = New-Object System.Windows.Forms.OpenFileDialog
    $OpenFileDialog.Title = $WindowTitle
    
    if (-Not [String]::IsNullOrWhiteSpace($RootDir))
    {
        $OpenFileDialog.InitialDirectory = $RootDir
    }
    $OpenFileDialog.ShowHelp = $true
    $OpenFileDialog.ShowDialog() | Out-Null
    return $OpenFileDialog.Filename
}

Write-Host "`n"
Write-Host "  ISO 파일을 찾을, 첫 시작위치를 입력하세요" -ForeGroundColor Red
Write-Host "`n"
Write-Host "  ==> " -noNewline
$InputDir = Read-Host
# $InputDir = (Read-Host -prompt "`n`nISO 파일을 찾을, 첫 시작위치를 입력하세요`n`n")
$IsoPath = Get-IsoLocation -RootDir $InputDir
$Volumes = (Get-Volume).Where({$_.DriveLetter}).DriveLetter
Mount-DiskImage -ImagePath $IsoPath
$ISO = (Compare-Object -ReferenceObject $Volumes -DifferenceObject (Get-Volume).Where({$_.DriveLetter}).DriveLetter).InputObject
Start-Sleep 2

Write-Host "`n"
Write-Host "  .iso내 모든 파일을 임시복사할 폴더를 만듭니다." -ForeGroundColor Red
Write-Host " `n윈도우 설치 USB에 다시 복사한후 임시폴더는 삭제됩니다." -ForeGroundColor Red
Write-Host " `nC드라이브내 원하는 위치를 입력하세요" -ForeGroundColor Red
Write-Host "`n"
Write-Host "  ==> " -noNewline
$InputTempFolder = Read-Host
New-Item $InputTempFolder -type directory -ver
Start-Sleep 2
robocopy "$($ISO):\" $InputTempFolder /e /copyall
Set-Location -Path "$($ISO):\boot"
Write-Host "`n"
Write-Host "  모든 설치파일이 복사되고,부팅 가능하게 만들`n" -ForeGroundColor Red
Write-Host "  사전의 포맷 준비된 USB드라이브 문자를 입력하세요`n" -ForeGroundColor Red
Write-Host "  예>  J "
Write-Host "  문자만 쓰면 됩니다." -ForeGroundColor Red
Write-Host "`n"
Write-Host "  ==> " -noNewline
$USBLetter = Read-Host

bootsect.exe /nt60 "$($USBLetter):"
Dism /Split-Image /ImageFile:"$InputTempFolder\sources\install.wim" /SWMFile:"$InputTempFolder\sources\install.swm" /FileSize:3500
gci -path "$InputTempFolder\sources\install.wim" | set-itemproperty -name IsReadOnly -value $false
Remove-Item $InputTempFolder\sources\install.wim -ver
Start-Sleep 2
robocopy $InputTempFolder "$($USBLetter):\" /e /copyall
Start-Sleep 2
Dismount-Diskimage -imagepath $IsoPath
Set-Location $env:UserProfile
Remove-Item $InputTempFolder -r -force -ver

 

 

전 사전의 포맷을 해놨고, 포맷은 스크립트에 넣지 않았습니다.

Screenshot 2023-01-18 165555.png

 

++스크립트 진행과정 스샷++

 

I.SO 파일위치를 좀더 편하게  GUI 화면으로 찾아 입력하게 명령어를 넣었습니다.

Screenshot 2023-01-18 170022.png

 

설치를 원하는 윈도우 .ISO 파일을 열면 자동으로 가상 DVD로 마운트됩니다.

그리고 또 한번 임시 복사할 원하시는 폴더를 지정해주면,

 

Screenshot 2023-01-18 170219.png

 

robocopy 명령어로 마운트된 .ISO내 모든 파일을 임시폴도에 복사합니다.

그리고 포맷 준비된 USB 드라이브 문자를 적어주면,

Screenshot 2023-01-18 170320.png

 

그 USB 드라이브를 부팅가능하게 만들고,

Dism 명령어로 파일크기가 큰 install.wim을

부팅 USB에 넣을 크기로 쪼갠뒤(install.swm, install2.swm)

기존 install.wim은 삭제한뒤,

쪼갠 .swm을 포함한 모든 .ISO내 파일들을  USB로 복사합니다.

Screenshot 2023-01-18 170643.png

robocopy로 USB로 복사중 과정인데,

젤 밑의 쪼갠 install.swm, install2.swm 보이시죠?

install.wim을 삭제해도 저것만 있으면 됩니다.

Screenshot 2023-01-18 170545.png

이렇게 복사가 끝나면,부팅가능한 윈도우 설치 USB가 만들어집니다.

나머지 노란색 메세지들은

임시로 만들었던 폴더를 싹 삭제하는 과정입니다.

작업 찌꺼기를 없애는 거죠.

 

Screenshot 2023-01-18 170731.png

 

확인해보면 저렇게 잘 복사됐있고,

이제 부팅때 필요하면 윈도우 설치에 쓰면 됩니다.

Screenshot 2023-01-18 170913.png

 

 

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4361 소프트웨어| [엑셀] 선택된 셀, 행, 열 강조 하기! [13] 무월 2563 28 08-31
4360 소프트웨어| MS OFFICE Retail 을 Volume 라이선스로 변경하기 [12] gooddew 5582 28 05-15
4359 소프트웨어| 한영 바꿔 오타시 한-영 양방향 변환 (오토핫키) [18] 지후빠 2256 28 09-06
4358 윈 도 우| 윈도우 10 만능 복구 이미지 만들기 [49] gooddew 12586 28 11-02
4357 소프트웨어| 오토잇 시스템 종료&재부팅 소스 [15] 무월 1584 27 11-21
4356 윈 도 우| 시스템 보호 설정 우클릭 메뉴 [13] 와로 1322 27 03-04
4355 윈 도 우| 텍스트 파일 하위 폴더 파일 포함 병합하기! [11] 무월 820 27 08-23
4354 소프트웨어| pureBasic - IXMLDOMDocument [6] 입니다 1307 27 12-16
4353 소프트웨어| 간단한 파일/폴더 백업 배치 파일 - BackupToZip [29] 지후빠 2572 27 08-14
» 윈 도 우| 프로그램 필요없이, 윈도우 설치 USB 만들기 [16] zerojiddu 5667 27 01-18
4351 윈 도 우| WIM(PE) 1회성 부팅; 우클릭 보내기 메뉴에 추가 [16] 지후빠 2658 27 02-11
4350 소프트웨어| 엑셀 추가기능; Reading Layout(셀 좌표) 1.4 [25] 지후빠 2124 27 11-18
4349 소프트웨어| PE.WIM DPI%, IconSize 변경 배치! [15] 무월 1893 27 01-11
4348 윈 도 우| PE 수정 스크립트 V3.87 [12] 히이이잌 2625 27 12-20
4347 기 타| [팁] PE에서 wim 부팅하는데 필요한 boot.sdi [12] suk 3763 27 04-24
4346 윈 도 우| [정리] 인텔 cpu 보안 패치파일 정리해봤습니다 [32] suk 6365 27 01-09
4345 윈 도 우| 나만의 PE를 만들자 실전편 5탄 PE고수되기 최종편 (윈도우... [115] 지연서연아 8331 27 09-08
4344 윈 도 우| 드라이브스넵샸 자동백업및복구 [56] 난이나팔자 8247 27 02-17
4343 소프트웨어| Office Deployment Tool (ODT) 를 배워봅시다. [26] 디폴트 9890 27 10-29
4342 소프트웨어| 오브젝트독(Object Dock) 이용하기 - (본문 수정) [37] 고양이2 5837 27 12-07
XE1.11.6 Layout1.4.8