이 글에서는 BIOS 대신 UEFI를 사용하고 MBR 대신 GPT 디스크 파티션 테이블을 사용하는 최신 컴퓨터에서 Windows 부트로더를 복구하는 방법을 알아봅니다. Windows 부트로더는 듀얼 부트 구성을 위해 두 번째 OS를 설치한 후, Windows 복구 과정에서 잘못된 작업을 수행했을 때, 숨겨진 파티션의 일부 데이터를 삭제했을 때, 바이러스나 랜섬웨어 같은 악성 소프트웨어에 감염되었을 때 등 다양한 이유로 손상될 수 있습니다.
이 가이드는 네이티브(비-레거시) UEFI 모드로 실행되는 컴퓨터에서 Windows 10 및 Windows 8.1의 손상되었거나 삭제된 부트로더를 단계별로 복구하는 방법을 다룹니다. 부팅 구성 파일인 \EFI\Microsoft\Boot\BCD가 누락되거나 손상되어 Windows가 부팅되지 않는 경우에 유용합니다.
"부팅 구성 데이터 파일 누락: EFI\Microsoft\Boot\BCD" 오류란?
네이티브 UEFI 모드로 Windows 10이 설치된 컴퓨터는 EFI 부트로더가 손상되면 부팅에 실패합니다. 컴퓨터를 부팅하려고 하면 다음과 같은 BSOD(블루 스크린) 오류가 나타납니다.
The boot configuration data for your PC is missing or contains errors.
File :\EFI\Microsoft\Boot\BCD
Error code: 0xc000000f
또는 다음 오류 코드가 표시될 수 있습니다.
Error code: 0xc000014c
이 오류는 Windows 부트로더 구성, 즉 BCD(Boot Configuration Data)가 손상되었거나 완전히 삭제되었음을 의미합니다. 이 상태에서 bcdedit 도구로 UEFI 컴퓨터의 부트로더를 복구하려고 하면 다음과 같은 오류가 발생합니다.
The boot configuration data store could not be found.
The requested system device cannot be found.
그 이유는 Windows 10이 GPT 디스크에 네이티브 UEFI 모드로 설치된 경우, Windows 10 EFI 부트로더(Windows Boot Manager)는 부트 관리자와 BCD 구성을 별도의 숨겨진 EFI 볼륨(FAT32 파일 시스템으로 포맷된 100MB 크기)에 저장하기 때문입니다. bcdedit 도구는 이 EFI 파티션을 인식하지 못하므로 해당 파티션의 부트로더 구성을 관리할 수 없습니다.
만약 컴퓨터가 검은 화면에 "Operating System not found(운영체제를 찾을 수 없음)"라는 메시지와 함께 부팅된다면, Windows 부트로더가 완전히 삭제되었을 가능성이 높습니다. 이 경우에는 별도의 복구 절차를 따라야 합니다.
자동 부트로더 복구 시도하기
Windows 복구 환경(WinRE)에서 제공하는 자동 부트로더 복구 기능은 이런 경우 대부분 효과가 없습니다. 그래도 시도해볼 가치는 있습니다.
- 복구 디스크 또는 Windows 10 설치 미디어로 장치를 부팅합니다.
- 설치 화면에서 시스템 복구(System Restore)를 클릭합니다.
- 문제 해결(Troubleshoot) → 시작 복구(Startup Repair)를 선택하고 부트로더를 복구하려는 운영체제를 선택합니다.
- 하지만 대부분 다음과 같은 결과가 나타날 것입니다:
자동 복구로 PC를 복구할 수 없습니다(Automatic Repair couldn't repair your PC)
자동 복구에 실패했다면, 아래의 수동 복구 방법을 따라 해보세요.
BCDBoot를 사용하여 EFI 부트로더 수동 복구하기
이제 UEFI 컴퓨터에서 Windows EFI 부트로더를 수동으로 복원하는 절차를 살펴보겠습니다.
1단계: 복구 환경에서 명령 프롬프트 열기
부트로더 구성(BCD)을 복구하려면 원본 Windows 10 설치 미디어(또는 복구 디스크나 UEFI 부팅 가능한 USB 드라이브)로 부팅해야 합니다. 복구 환경으로 부팅한 후 명령 프롬프트를 엽니다: 시스템 복구 → 문제 해결 → 명령 프롬프트를 차례로 선택하세요.
Windows 설치 미디어만 있는 경우에도 명령 프롬프트를 실행할 수 있습니다. Windows 설치 첫 화면(언어 및 키보드 레이아웃 선택 화면)에서 Shift+F10 키 조합(일부 노트북 모델에서는 Shift+Fn+F10)을 누르면 됩니다.
2단계: diskpart로 디스크 및 파티션 확인
열린 명령 프롬프트에서 디스크 관리 도구를 실행합니다:
diskpart
list disk
이 단계에서 Windows가 설치된 디스크의 파티션 테이블 유형이 MBR인지 GPT인지 확인하는 것이 매우 중요합니다. EFI 부트로더는 GPT 파티션 테이블을 사용하는 디스크에서만 동작하기 때문입니다.
Gpt 열에 별표(*)가 표시되어 있으면 GPT 파티션 테이블을 사용 중이고, 표시되어 있지 않으면 MBR을 사용 중입니다.
참고: 디스크가 MBR 파티션 테이블을 사용한다면 이 가이드의 방법은 적용되지 않습니다. MBR 디스크를 사용하는 컴퓨터는 대부분 BIOS 또는 UEFI 설정에서 Legacy/CSM(Compatibility Support Mode) 옵션이 활성화되어 있을 가능성이 높습니다. MBR 디스크에서는 Windows 부트로더가 EFI 파티션이 아닌 별도의 시스템 예약 파티션에 저장됩니다. 절대로 Windows 부트로더를 수정하기 전에 MBR 파티션 테이블을 GPT로 변환하지 마세요!
3단계: EFI 파티션에 드라이브 문자 할당
Windows가 설치된 디스크를 선택합니다(하드 디스크가 하나뿐이라면 인덱스는 0):
sel disk 0
list partition
list volume
EFI 부팅 파티션은 100MB 크기와 FAT32 파일 시스템으로 쉽게 식별할 수 있으며, 대개 System EFI 레이블이 지정되어 있습니다. NTFS 파일 시스템의 Windows가 설치된 주 파티션(Windows 10 또는 Windows 8.1)도 확인할 수 있습니다. Windows 10에는 16MB(MBR의 경우), Windows 8.1/UEFI에는 128MB 크기의 MSR(Microsoft System Reserved) 파티션도 존재해야 합니다.
EFI 또는 MSR 파티션이 없다면 수동으로 다시 만들 수 있습니다. 삭제된 EFI 및 MSR 시스템 파티션 복구 방법을 참고하세요.
숨겨진 EFI 볼륨에 드라이브 문자 K:를 할당합니다:
select volume 1
assign letter K:
드라이브 문자가 성공적으로 할당되었다는 메시지가 표시됩니다:
DiskPart is successfully assigned the drive letter or mount point.
diskpart를 종료합니다:
exit
4단계: 부트로더 디렉터리로 이동 후 BCD 재생성
숨겨진 볼륨의 부트로더 디렉터리로 이동합니다(K:는 위에서 할당한 EFI 파티션의 드라이브 문자입니다):
cd /d K:\efi\microsoft\boot\
만약 \EFI\Microsoft\Boot\ 디렉터리가 존재하지 않는다면(지정된 경로를 찾을 수 없습니다 오류 발생 시) 다음 경로들을 시도해 보세요:
cd /d K:\Boot\
또는
cd /d K:\ESD\Windows\EFI\Microsoft\Boot\
주의: 많은 가이드에서 다음 명령 실행을 권장하지만, 이 명령들은 MBR 디스크 전용입니다:
bootrec /fixboot
bootrec /scanos
bootrec /rebuildbcd
UEFI 모드로 부팅하는 컴퓨터는 반드시 GPT 파티션 테이블을 사용하므로, bootrec 명령을 실행하면 액세스가 거부되었습니다(access is denied) 오류가 발생합니다.
EFI 파티션의 부트 레코드를 수정하려면 BCDBoot 도구를 사용해야 합니다. BCDBoot는 Windows 파티션의 시스템 디렉터리에서 부트로더 파일을 복사하여 시스템 파티션의 부트로더 파일을 복원합니다. BCD 부트로더 구성은 %WINDIR%\System32\Config\BCD-Template 파일을 사용하여 다시 생성됩니다.
먼저 attrib 명령으로 BCD 파일에서 숨김, 읽기 전용, 시스템 특성을 제거합니다:
attrib BCD -s -h -r
현재 BCD 구성 파일 이름을 변경하여 삭제합니다(기존 부팅 구성을 백업으로 보관하는 효과가 있습니다):
ren BCD BCD.bak
bcdboot.exe 유틸리티를 사용하여 Windows 디렉터리에서 UEFI 부팅 환경 파일을 부팅 파티션으로 복사하고 BCD 저장소를 다시 생성합니다:
bcdboot C:\Windows /l ko-KR /s k: /f ALL
- C:\Windows — Windows 10이 설치된 디렉터리 경로입니다.
- /f ALL — UEFI 및 BIOS 컴퓨터용 부팅 환경 파일을 모두 복사합니다(UEFI와 BIOS 시스템 모두에서 부팅 가능). EFI 부트로더만 복사하려면 /f UEFI 옵션을 사용하세요.
- /l ko-KR — 시스템 로캘 유형입니다. 한국어 Windows의 경우 ko-KR을 지정하며, 기본값은 en-us(영어-미국)입니다.
- /c — Windows 10의 새로운 BCDBoot 옵션으로, 기존 부팅 레코드(디버그 설정 포함)를 덮어씁니다. 이전 부팅 설정을 무시하고 깨끗한 BCD 구성을 생성할 때 사용합니다.
- /v — BCDBoot의 자세한 출력을 활성화합니다.
힌트: 지역화된 버전의 Windows 10을 사용하는 경우 언어 코드를 맞춰야 합니다. 예를 들어 영국 영어 버전은 /l en-uk, 네덜란드어는 /l nl-NL, 독일어는 /l de-DE를 사용하세요.
5단계: 복구 결과 확인 및 오류 해결
이제 bcdedit 명령을 실행하면 다음 내용이 표시됩니다.
Windows Boot Manager 섹션에 UEFI 부팅 파일(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)의 전체 경로가 포함된 항목이 나타나야 합니다.
복구 과정에서 발생할 수 있는 주요 오류와 해결 방법은 다음과 같습니다.
- BFSVC Error: Could not open the BCD template store. status – [c000000f] — 입력한 명령이 올바른지, 그리고 지역화된 Windows 버전인지 확인하세요. 올바른 로컬 언어 코드를 지정해야 합니다. bcdboot 도구는 \Windows\System32\Config 디렉터리에서 BCD 템플릿 파일을 복사합니다. 이 폴더의 BCD 템플릿이 손상되거나 삭제된 경우 sfc.exe 도구로 오프라인 상태에서 시스템 파일 무결성을 검사해 보세요(Windows 설치 디스크 필요):
sfc /scannow /OFFBOOTDIR=C:\ /OFFWINDIR=D:\WINDOWS - BFSVC Error: Error copying boot files from Last Error = 0x570 — 다음 명령으로 드라이브를 검사해 보세요:
CHKDSK K: /F - BFSVC Error: Failed to set element application device. Status = [c000000bb] — chkdsk.exe로 EFI 및 Windows 10 파티션을 검사합니다. BCD 파일의 숨김 및 시스템 특성이 제거되었는지 확인하고, 문제가 있다면 제거하세요:
attrib -s -h \EFI\Microsoft\Boot\BCD
del \EFI\Microsoft\Boot\BCD - Failure when initializing library system volume — 올바른 FAT32 형식의 EFI 파티션을 사용하고 있는지 확인하세요(유사한 파티션이 여러 개 있을 수 있습니다).
마무리: 부팅 테스트
모든 단계를 완료했다면 컴퓨터를 재시작하고 부팅 미디어를 분리합니다. 이후 부팅 가능한 장치 목록에 Windows Boot Manager가 나타나며, 원하는 운영체제를 선택하여 부팅할 수 있습니다. EFI 부트로더와 BCD 구성이 성공적으로 복구된 것입니다!