Windows 부팅 구성 데이터 및 파티션

Windows 부팅 구성 데이터 및 파티션

Vista 이후 Windows에서는 부팅 메뉴를 BCD(부팅 구성 데이터 저장소)에 저장합니다. 오늘 제 것을 살펴보았는데, 유일무이한 Win7 인스턴스에 대한 항목은 다음과 같습니다.

Windows Boot Loader
-------------------
identifier              {current}
device                  partition=C:
path                    \Windows\system32\winload.exe
description             Windows 7
locale                  en-US
inherit                 {bootloadersettings}
recoverysequence        {89491629-36d4-11df-938c-f89ebe5d401b}
recoveryenabled         Yes
osdevice                partition=C:
systemroot              \Windows
resumeobject            {89491621-36d4-11df-938c-f89ebe5d401b}
nx                      OptIn

boot.ini의 ARC 경로가 사라진 것 같습니다. 이 부팅 항목에는 C:Win7을 로드할 드라이브를 식별하는 가 있습니다. 그러나 Windows에서는 드라이브 문자가 임의적이지 않습니까? 레지스트리를 먼저 확인하지 않고 어떤 물리적 드라이브와 파티션이 C에 해당하는지 어떻게 알 수 있나요?

답변1

BCD는 실제로 레지스트리 하이브이며 일반적으로 HKLM\BCD00000000 키 아래 레지스트리에 탑재됩니다. regedit를 사용하여 해당 키를 .reg 파일로 내보내고 BCD에 저장되는 실제 데이터를 검사할 수 있습니다. 장치/os장치 데이터의 형식은 문서화되지 않았고 다소 모호하지만 파티션 테이블에서 발생하는 디스크 ID와 해당 데이터 중에서 문제의 파티션 첫 번째 섹터의 선형 섹터 주소를 찾을 수 있습니다. Windows 드라이브 문자는 bcdedit에서 해당 데이터를 더 이해하기 쉬운 방식으로 표시하는 데 사용됩니다.

답변2

경로는 BCD가 물리적으로 드라이브 문자로 저장되지 않습니다. 나는 수리 콘솔을 만지작거렸다. 부팅 파티션의 드라이브 문자를 변경하고 BCDEdit를 다시 호출하면 BCD에서도 드라이브 문자가 마술처럼 변경됩니다. 아마도 ARC 경로와 비슷한 것일 수 있으며 BCDEdit는 이를 추상화합니다.

관련 정보