VBR (Volume Boot Record)
VBR은 Boot Sector와 NTLDR Information Boot Strap 두 가지 영역으로 나뉜다.
1. Boot Sector
Boot Sector: 운영 체제가 컴퓨터를 부팅할 때 필요한 정보를 담고 있고, BIOS Parameter Block (BPB) (빨간색), Bootstrap Code (초록색), Signature (파란색)으로 나뉜다.
1. BIOS Parameter Block (BPB): 파일 시스템의 기본적인 정보를 담고 있으며, 드라이브의 구조, 파일 시스템의 크기, 섹터 크기 등을 정의하고, 시스템이 올바르게 액세스 할 수 있게 하는 중요한 메타데이터를 제공한다.
Offset | Size (Byte) | Information |
0x00 ~ 02 | 3 | Jump Boot Code |
0x03 ~ 0A | 8 | OME Name (ASCII) |
0x0B ~ 0C | 2 | Bytes Per Sector (BPS) |
0x0D | 1 | Sector Per Cluster |
0x28 ~ 2F | 8 | Total Sector Count |
0x30 ~ 37 | 8 | Start Cluster for $MFT |
0x38 ~ 3F | 8 | Start Cluster for $MFTMirr |
0x40 | 1 | Cluster Per Record |
0x42 | 1 | Cluster Per Index Buffer |
0x48 ~ 4F | 8 | Volum Serial Number |
2. Boot Code: 부트 코드는 시스템이 부팅될 때 실행되는 코드로, 볼륨을 읽고 부팅 프로세스를 시작하는 데 필요한 지침을 포함한다.
3. Signature: Boot Sector의 끝에 위치하며, '0x55 AA'의 2Byte 값으로 구성되어 파일 시스템의 무결성을 검증하고 올바른 볼륨임을 확인하는 데 사용된다.
2. NTLDR Information Boot Strap
NTLDR Information Boot Strap: 시스템의 부팅 과정에서 핵심적인 초기 단계를 담당하며, 운영 체제의 커널을 메모리로 로드하고 실행하는 과정을 관리한다. NTLDR는 부팅 가능한 디스크, 드라이브 구성, 부팅 메뉴 설정 등을 처리하여 Windows의 부팅 프로세스를 시작하고 진행하는 데 중요한 역할을 수행한다. 특징으로는 BOOTMGR(Boot Manager), $I30으로 시작된다.
3. Back Up
NTFS File System은 데이터의 안정성을 위해 파티션의 마지막 섹터에 Boot Sector의 백업 복사본을 저장한다. 이러한 백업은 원본 데이터가 손상될 경우 복구를 용이하게 하여 파일 시스템의 신뢰성을 높이는 중요한 역할을 한다.
Start Sector of Boot Sector Back Up: Start Sector of VBR + Total Sector Count
해당 파티션에서의 Boot Sector Back Up은 2,091,135(128(0x80) + 2,091,007(0x1F E7 FF))번 섹터이다.
HxD에서 해당 디스크의 마지막 섹터는 2,097,153이라고 표시되지만 Reserved Area 때문에 Boot Sector Back Up이 2,097,153번에 존재하는 것은 아니라는 점을 주의해야 한다.