유틸리티 UEFI 부팅 복구 배치파일
2019.09.04 21:15
안녕 하세요. gooddew 입니다.
최근 uefi 방식의 시스템이 많이 나오면서 uefi 부팅 장애가 많아서 회사에서 사용하려고
직접 복구 배치파일을 만들었습니다. 필요한 분이 있을까 올립니다.
PE 로 부팅을 하시고 배치파일을 관리자 권한으로 실행해서 UEFI 부팅을 복구 하세요
배치파일 내용을 검토 하시고 적당히 자신의 맞게 수정해서 사용하시기 바랍니다.
이것은 윈도우를 설치하는 배치파일이 아닙니다. 윈도우를 설치했는데 기존이 uefi 설정이 달라서 부팅이 안되는 경우가 있습니다.
간혹 설치를 uefi 부팅 설정을 빼먹고 윈도우만 설치하면 부팅이 안될수 있습니다. 이때 아주 유용하게 사용할수 있습니다.
아래 첨부한 파일을 다운을 받고 압축을 풀면 3개의 파일이 있습니다.
bcdboot 와 bootrec 는 부팅 복구 할때 배치 파일 안에서 이용을 하게 됩니다.
---- UEFI_복구 배치파일 내용 --------------------------------------------------------------------------------------------
@echo off
title uefi 부팅 복구 스크립트 - Windowsforum.kr
pushd %~dp0
SET VolCount=0
for /f "tokens=2" %%a in ('echo lis vol ^| diskpart ^| Find "파티션"') do set VolCount=%%a
if "%VolCount%" == "0" (
echo.
echo 파티션이 하나인 경우 파티션을 초기화 할수 없습니다. 종료 합니다.
echo.
pause
goto exit
)
@echo off
(
echo lis vol
) | diskpart
:Menu1
echo.
set Vol=
echo.
set /p Vol=[ ESP 파티션 볼륨 번호를 입력하세요 ][ 0 ~ %VolCount% ] :
if "%Vol%" == "" (
echo.
echo ESP 파티션 볼륨 번호를 입력하세요. 디스크 범위는 0 ~ %VolCount% 입니다.
goto Menu1
)
if "%Vol%" gtr "%VolCount%" (
echo.
echo 볼륨 범위 초과했습니다. 볼륨 범위는 0 ~ %VolCount% 입니다.
goto Menu1
)
(
echo sel vol %Vol%
echo ass letter=z:
) | diskpart
if not exist z:\efi\Microsoft\Boot (
mkdir z:\efi\Microsoft\Boot
)
%cd%/bootrec.exe /fixboot
if exist z:\efi\Microsoft\Boot\bcd (
cd z:\efi\Microsoft\Boot
ren bcd bcd.bak
)
%cd%/bcdboot.exe c:\windows /l ko-KR /s z: /f all
echo.
echo 작업을 완료 했습니다.
echo.
pause > nul
:exit
-------------------------------------------------------------------------------------------------------------------------
위에서 자신의 맞게 수정할 부분이 있습니다.
(1) esp 디스크명을 z: 로 잡았습니다. 자신이 사용하는 pe 에서 z: 드라이브를 이미 사용한다면
다른 드라이브명으로 변경하세요. 이것은 설정 할때만 드라이브명이 할당되며 임시로 설정해서 사용하게 됩니다. ( 예 b: )
(2) pe 로 부팅 했을때 윈도우 설치 드라이브가 보일것입니다. 여기서 윈도우 설치된 드라이브명이 c 가 아니라면
%cd%/bcdboot.exe c:\windows /l ko-KR /s z: /f all 이 부분의 c:\windows 에 c: 부분을 변경하세요.
보통은 거의 c: 가 많으실 거에요
그리고 bcdboot.exe 와 bootrec.exe 는 대다수의 pe 는 있지만 혹시 없는 pe 가 있을까 해서 배치파일에 별도로 연동 시켜 놓았습니다.
이거 삭제 하시면 배치파일이 정상 실행이 안됩니다.
그럼 uefi 부팅 복구 시작 해볼께요.
자신의 pe 로 부팅후 배치파일을 실행합니다.
여기서 eps 파티션의 볼륨 번호를 선택을 합니다. 혹시 esp 파티션이 어떤것인지 모르겠나요?
esp 파티션이 특징은 파일 시스템(fs) 이 fat32 이며 용량이 100~200Mb 처럼 작습니다.
그리고 레이블명이 esp 라고 해서 반듯이 esp 파티션은 아니에요. 레이블은 변경이 가능하기 때문에 참조만 하세요
위 그림에서 볼륨 1번이 esp 파티션입니다.
간단하게 uefi 부팅이 설정 완료 되었습니다.
PE 에서 uefi 부팅 설정 직후 바로 디스크 상태를 보았습니다. 윈도우는 C: 에 설치되어 있고 ESP 파티션은 Z: 드라이브로 잡혀 있네요.
재부팅을 합니다. 부팅이 안됬던것이 부팅이 되는군요
윈도우 상태에서 파티션 설정 상태를 보았습니다.
참고로 바이오스에서 LEGACY 와 UEFI 부팅을 선택하는 항목이 있습니다.
WIN8/10 이 UEFI 방식이고, 윈도우 7 또는 기타 가 LEGACY 방식 입니다.
고수님들의 더 좋은 방법이 있으시면 조언 부탁 드립니다.
감사합니다.
댓글 [15]
-
왕초보 2019.09.04 21:18
-
간장종지6465 2019.09.04 21:24
감사합니다. 잘 간수했다가 쌱~~
-
samsiki 2019.09.04 21:29
감사 합니다.
-
이다우니 2019.09.04 21:43
유용하게 사용하겠네요
-
cungice 2019.09.04 22:01
수고 많으셨습니다. 감사합니다.
-
rhflffk88 2019.09.04 22:09
고맙습니다! ^^
-
가마치박사 2019.09.04 22:12
수고하셨습니다.
-
컨피그 2019.09.04 23:53
감사합니다~
-
w20060101 2019.09.05 00:03 고생하셨습니다. 좀더 단순하게 bcdboot 명령어 몇자면 한방입니다. 전 그 방법을 쓰고 있구요~^^ -
소담 2019.09.05 06:04
고맙습니다.!
^^*
-
거미손 2019.09.05 08:02
좋은 자료 감사히 잘 사용하겠습니다.
-
빠송 2019.09.05 13:02
잘 사용하겠습니다.
감사합니다.^^
-
홍이잠 2019.09.05 18:15
좋은자료 감사합니다.. 즐겁고 행복한 시간 되세요♡
-
몰라18 2019.09.06 16:36
고맙습니다
-
지룡자 2019.09.07 11:18
bcdedit -store Z:\EFI\Microsoft\Boot\BCD -set {default} description "Windows 10 Pro"
런 문장도 추가하면 좋을듯 합니다
필요할때 큰 도움이 될것 같습니다.
좋은 작품 감사합니다..