- 공유 링크 만들기
- X
- 이메일
- 기타 앱
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
이 글의 목적은 Windows 10/11에서 EFI 시스템 파티션(ESP)이 손상되거나 삭제되어 UEFI 부팅이 실패하는 상황에서, Windows 복구 환경에서 diskpart로 EFI 파티션을 재구성하고 BCDBoot로 부팅 파일을 재생성하여 정상 부팅을 복원하는 절차를 현장에서 그대로 따라 할 수 있도록 정리하는 데 있다.
1. EFI 파티션 손상에서 자주 나타나는 증상과 원인
EFI 시스템 파티션은 UEFI 펌웨어가 Windows Boot Manager를 찾기 위해 사용하는 필수 영역이다. 이 영역이 손상되거나 포맷이 깨지거나 드라이브 문자가 꼬이면 부팅 항목이 있어도 OS 로더를 찾지 못하는 문제가 발생하다.
대표적인 증상은 “부팅 장치를 찾을 수 없음”, “winload.efi 누락”, “Automatic Repair 루프”, “부팅 순서가 꼬여 다른 디스크로 부팅됨” 형태로 나타나다.
원인은 디스크 복제 과정에서 ESP가 누락되거나, 파티션 편집 과정에서 잘못 삭제되거나, 듀얼부팅 정리 중 ESP가 겹치거나, Windows 업데이트 중 ESP 공간 부족으로 부팅 파일 갱신이 실패하는 경우가 많다.
주의 : 디스크 번호를 잘못 선택하면 데이터 파티션을 삭제할 수 있다. 특히 “select disk 0” 같은 습관적 입력은 금지하며, 반드시 “list disk”, “list vol”, “detail disk”로 물리 디스크와 Windows 설치 파티션을 교차 확인해야 하다.
2. 작업 전 준비사항과 안전한 진입 방법
2.1 Windows 복구 환경(WinRE)로 진입하는 방법
가장 안전한 방법은 Windows 설치 USB로 부팅한 뒤 “컴퓨터 복구”에서 “문제 해결 → 고급 옵션 → 명령 프롬프트”로 진입하는 방법이다. 이 환경에서는 부팅 디스크가 잠겨 있지 않아 파티션 조작과 부팅 파일 재생성이 안정적으로 수행되다.
2.2 사전 점검 체크리스트
작업을 시작하기 전에 시스템이 UEFI 모드로 설치되어 있는지 확인해야 하다. BIOS/UEFI 설정에서 부팅 모드가 Legacy/CSM이 아니라 UEFI로 설정되어 있어야 하다.
여러 개의 디스크가 연결된 PC라면, 가능하면 OS가 설치된 디스크만 남기고 나머지 디스크를 분리한 상태에서 작업하는 것이 재발 방지에 유리하다. 부팅 파일이 다른 디스크의 ESP로 생성되는 사고를 줄일 수 있기 때문이다.
| 점검 항목 | 확인 방법 | 판정 기준 |
|---|---|---|
| 부팅 모드 확인 | 펌웨어 설정에서 Boot Mode 확인하다 | UEFI 모드가 유지되어야 하다 |
| 디스크 파티션 방식 확인 | diskpart에서 list disk 확인하다 | OS 디스크가 GPT 표시(*)여야 하다 |
| ESP 존재 여부 | diskpart에서 list vol 확인하다 | FAT32, 100~300MB 내외 파티션이 있어야 하다 |
| Windows 설치 위치 확인 | dir C:\Windows 등으로 확인하다 | Windows 폴더가 존재하는 드라이브를 찾아야 하다 |
3. diskpart로 EFI 파티션 재구성하는 표준 절차
이 절차는 “EFI 파티션이 없거나 심각하게 손상된 경우”에 적용하는 재구성 방식이다. EFI 파티션이 존재하지만 단순 파일 손상 수준이라면, 4장에서 소개하는 “포맷 후 BCDBoot 재생성”만으로 해결되는 경우도 많다.
3.1 OS 디스크와 Windows 파티션을 정확히 식별하다
명령 프롬프트에서 diskpart를 실행한 뒤, 디스크와 볼륨을 나열하여 OS가 설치된 디스크를 찾는 과정이 핵심이다.
diskpart list disk list vol list disk에서 OS 디스크에 GPT 별표(*)가 있는지 확인해야 하다. list vol에서 Windows가 들어있는 NTFS 볼륨(대개 가장 큰 용량)을 찾고, 해당 볼륨의 드라이브 문자를 확인해야 하다.
주의 : WinRE에서는 드라이브 문자가 평소와 다르게 재배치되는 경우가 흔하다. “C:”가 Windows가 아닐 수 있으므로, 반드시 “dir”로 Windows 폴더 존재를 확인해야 하다.
Windows가 설치된 드라이브를 찾는 예시는 다음과 같다.
dir C:\Windows dir D:\Windows dir E:\Windows Windows 폴더가 확인되는 드라이브 문자를 이 글에서는 “W:”라고 가정하다. 실제 작업에서는 W: 대신 확인된 드라이브 문자를 사용해야 하다.
3.2 기존 EFI 파티션이 “아예 없는 경우”에 새로 만들다
EFI 시스템 파티션은 보통 100MB 이상을 사용하며, Windows 10/11 환경에서는 100~300MB로 구성하는 것이 현장 호환성이 좋다. 디스크에 미할당 공간이 전혀 없다면, 파티션 축소가 선행되어야 하며 이는 데이터 리스크가 있으므로 백업 후 진행하는 것이 원칙이다.
OS 디스크가 예를 들어 Disk 0이라면 다음과 같이 진행하다.
diskpart select disk 0 list part 미할당 공간이 존재한다면 다음 명령으로 EFI 파티션을 생성하고 FAT32로 빠른 포맷을 수행하다. 아래 예시는 260MB로 생성하는 예시이다.
create partition efi size=260 format fs=fat32 quick label=SYSTEM assign letter=S “create partition efi”는 EFI 시스템 파티션 용도로 생성하는 명령이며, GPT에서 EFI 시스템 파티션 GUID 타입으로 인식되는 구성이 되다. 환경에 따라 파티션 타입이 올바르게 지정되었는지 확인하는 것이 안정적이며, 필요한 경우 set id로 EFI GUID를 지정하는 절차가 도움이 되다.
타입 확인과 필요 시 재지정 절차는 다음과 같이 수행하다.
list part select part (방금 만든 파티션 번호) detail part set id=c12a7328-f81f-11d2-ba4b-00a0c93ec93b 여기서 c12a7328-f81f-11d2-ba4b-00a0c93ec93b 값은 GPT에서 EFI 시스템 파티션 타입 GUID이다.
3.3 EFI 파티션이 “있지만 손상되었거나 파일이 꼬인 경우”에 정리하다
EFI 파티션이 존재하지만 부팅 파일이 깨졌다면, 우선 EFI 파티션에 드라이브 문자를 할당한 뒤 내용을 재생성하는 방식이 일반적으로 안정적이다. 이 경우에도 “S:” 같은 임시 문자를 할당하여 작업하는 방식이 표준적이다.
diskpart select disk 0 list vol select vol (FAT32, 100~300MB 내외 볼륨 번호) assign letter=S exit EFI 파티션이 FAT32가 아니거나 파일 시스템이 손상되어 마운트가 불안정하다면, 포맷 후 재생성이 필요할 수 있다. 포맷은 EFI 파티션만 대상으로 해야 하며, Windows 데이터 파티션을 대상으로 하면 복구 난이도가 급격히 상승하다.
diskpart select disk 0 list vol select vol (EFI로 판단한 볼륨) format fs=fat32 quick label=SYSTEM assign letter=S exit 주의 : “format”은 선택한 볼륨을 즉시 초기화하다. 반드시 “FAT32, 100~300MB, System/Hidden 성격”을 만족하는지 재확인한 뒤 실행해야 하다.
4. BCDBoot로 UEFI 부팅 파일과 BCD를 재생성하다
EFI 파티션을 만들거나 정리했다면, 다음 단계는 Windows 부팅 파일을 EFI 파티션으로 복사하고 BCD 저장소를 구성하는 작업이다. 이때 사용하는 도구가 BCDBoot이며, 지정한 Windows 경로에서 부팅 파일을 복사해 시스템 파티션(여기서는 S:)에 구성하는 역할을 하다.
4.1 가장 많이 쓰는 표준 명령이다
Windows 설치 드라이브가 W:이고 EFI 파티션이 S:로 할당되어 있다고 가정하면 다음과 같이 실행하다.
bcdboot W:\Windows /s S: /f UEFI /s는 부팅 파일을 배치할 대상 시스템 파티션을 지정하는 옵션이며, /f UEFI는 UEFI 펌웨어용 부팅 구성을 만들도록 강제하는 옵션이다.
4.2 다중 Windows 또는 언어/로캘까지 고려하는 실무형 명령이다
다중 부팅 환경이거나 로캘을 명시하고 싶다면, 아래와 같이 확장하여 실행할 수 있다. 실제로는 기본 명령만으로도 해결되는 경우가 많다.
bcdboot W:\Windows /l ko-kr /s S: /f UEFI 명령이 성공하면 “부팅 파일을 성공적으로 만들었습니다”와 유사한 메시지가 출력되다.
4.3 bootrec /fixboot 접근 거부가 나오는 경우의 실전 대응이다
UEFI 환경에서 bootrec /fixboot가 “Access is denied”로 실패하는 사례가 알려져 있으며, 이때 핵심 해결 방향은 EFI 파티션을 올바르게 준비한 뒤 BCDBoot 중심으로 부팅 파일을 재구성하는 방식으로 전환하는 것이다.
현장에서는 bootrec에 집착하기보다, “EFI 파티션 준비 → BCDBoot 재생성” 흐름을 우선 적용하는 것이 성공률이 높다.
5. diskpart와 BCDBoot를 한 번에 실행하는 예시 스크립트이다
아래는 “EFI 파티션이 존재하지만 드라이브 문자가 없고 부팅이 깨진 상황”에서 가장 자주 쓰는 예시 흐름이다. OS 디스크 번호, EFI 볼륨 번호, Windows 드라이브 문자는 반드시 환경에 맞게 바꿔야 하다.
diskpart list disk select disk 0 list vol select vol 2 assign letter=S exit dir C:\Windows bcdboot C:\Windows /s S: /f UEFI dir로 Windows 설치 경로를 확인한 뒤 bcdboot를 실행하는 순서가 핵심이다.
6. 복구 후 검증 절차와 재발 방지 포인트이다
6.1 EFI 파티션에 부팅 파일이 생성되었는지 확인하다
EFI 파티션(S:)에 EFI\Microsoft\Boot 구조가 생성되었는지 확인하는 것이 빠른 검증 방법이다.
dir S:\ dir S:\EFI dir S:\EFI\Microsoft dir S:\EFI\Microsoft\Boot 6.2 펌웨어 부팅 항목이 올바른 디스크를 가리키는지 확인하다
여러 디스크를 연결한 PC에서는 펌웨어가 다른 디스크의 EFI를 우선순위로 잡는 경우가 있어, 부팅 항목이 올바른 디스크의 Windows Boot Manager를 가리키는지 확인해야 하다.
주의 : 복구가 끝난 뒤에도 부팅이 불안정하면, 불필요한 디스크를 제거한 상태에서 1차 정상 부팅을 만든 뒤 나머지 디스크를 순차적으로 연결하여 문제 재현 여부를 확인하는 방식이 실무적으로 안전하다.
6.3 Windows 업데이트 실패를 막기 위한 EFI 공간 관리이다
EFI 파티션 용량이 너무 작거나(예: 100MB 이하) 과거 벤더 툴이 여러 부팅 파일을 쌓아둔 경우 업데이트 과정에서 부팅 파일 갱신이 실패할 수 있다. 새로 구성할 때 260MB 정도로 잡는 이유는 유지보수 관점에서 여유를 확보하기 위함이다.
7. 작업별 명령 요약 표이다
| 상황 | 핵심 조치 | 대표 명령 | 성공 판정 |
|---|---|---|---|
| EFI 파티션이 없음 | ESP 생성 후 부팅 파일 생성하다 | create partition efi → format fat32 → bcdboot | S:\EFI\Microsoft\Boot 생성되다 |
| EFI 파티션이 있으나 손상됨 | ESP 포맷 또는 정리 후 재생성하다 | assign letter=S → (필요 시 format) → bcdboot | 정상 부팅 진입되다 |
| 부팅 디스크가 꼬임 | OS 디스크만 연결 후 재구성하다 | disk 분리 → ESP 재구성 → 펌웨어 부팅순서 조정 | 재부팅 반복에도 안정되다 |
| bootrec /fixboot 접근 거부 | BCDBoot 중심으로 해결하다 | EFI 준비 → bcdboot /f UEFI | 부팅 파일 생성 메시지 출력되다 |
FAQ
Windows 설치 드라이브 문자가 C:가 아닐 때 어떻게 확인해야 하나?
WinRE에서는 드라이브 문자가 바뀌는 것이 정상이다. “dir X:\Windows”를 C:, D:, E: 순서로 확인하여 Windows 폴더가 존재하는 드라이브를 찾는 방식이 가장 확실하다.
EFI 파티션을 반드시 디스크 맨 앞에 만들어야 하나?
EFI 파티션은 디스크 맨 앞에 있을 필요는 없으며, UEFI 펌웨어가 GPT의 EFI 타입 파티션을 인식할 수 있으면 동작하다. 다만 관리 편의성을 위해 앞쪽에 두는 구성이 흔하다.
EFI 파티션을 만들었는데 Windows 업데이트가 계속 실패하는 이유는 무엇인가?
EFI 파티션 타입이 올바르게 설정되지 않았거나, FAT32 포맷이 아니거나, 용량이 너무 작거나, 부팅 파일이 다른 디스크의 ESP에 생성되어 경로가 꼬인 경우가 원인이 될 수 있다. EFI 타입 GUID가 올바른지와 BCDBoot 대상이 맞는지부터 재점검하는 것이 우선이다.
명령이 모두 성공했는데도 부팅이 안 되면 무엇을 추가로 확인해야 하나?
펌웨어 부팅 순서에서 “Windows Boot Manager”가 올바른 디스크를 가리키는지 확인해야 하다. 또한 NVMe/SATA 컨트롤러 모드 변경, Secure Boot 설정 변경, 디스크가 MBR로 설치된 경우(UEFI가 아닌 레거시 설치)도 원인이 될 수 있어, 설치 방식과 부팅 모드를 일치시키는 점검이 필요하다.
- 공유 링크 만들기
- X
- 이메일
- 기타 앱