And Brain said,

MBR(Master Boot Record) vs GPT(GUID Partition Table), Chat GPT 아님 본문

IT/CS

MBR(Master Boot Record) vs GPT(GUID Partition Table), Chat GPT 아님

The Man 2025. 2. 25. 10:30
반응형

1. MBR(Master Boot Record) VS GPT(GUID Partition Table) ?

MBR(Master Boot Record)과 GPT(GUID Partition Table)은 디스크 파티션을 구성하는 방식입니다. 운영체제(OS)가 디스크를 인식하고 사용할 수 있도록 구조화하는 역할을 하며, BIOS/UEFI와 밀접한 관련이 있습니다.


2. MBR과 GPT 개요

2.1 MBR (Master Boot Record)

MBR은 디스크의 맨 첫 번째 512바이트(0번 섹터)에 저장된 데이터로, 시스템이 부팅될 때 중요한 역할을 합니다. 1983년에 도입되었으며, 기존 BIOS 시스템에서 부팅 디스크로 널리 사용되었습니다.

MBR은 다음과 같은 세 가지 중요한 요소로 구성됩니다.

 

  1. 부트 로더 (Boot Loader): 운영체제를 실행하는 첫 번째 코드

  2. 파티션 테이블 (Partition Table): 디스크의 파티션(저장 공간 구획) 정보

  3. 부트 시그니처 (Boot Signature): MBR이 올바른지 확인하는 값(0x55AA)

부트 로더 (Boot Loader)

  • 부팅이 시작되면 CPU는 MBR의 첫 번째 섹터를 읽고 부트 로더를 실행합니다.

  • 부트 로더는 운영체제(OS)의 위치를 찾아 실행하는 역할을 합니다.

  • Windows에서는 bootmgr, Linux에서는 GRUB, LILO 등이 이 역할을 수행합니다.

  • MBR의 부트 로더는 주로 446바이트 크기이며, 이 공간에 OS를 로드하는 기본 코드가 들어 있습니다.

파티션 테이블 (Partition Table)

  • MBR의 64바이트 영역(0x01BE ~ 0x01FD)에는 최대 4개의 파티션 정보를 저장할 수 있습니다.

  • 각 파티션 엔트리는 16바이트 크기이며, 디스크의 저장 공간을 정의합니다.

  • MBR 방식에서는 기본적으로 4개까지만 지원하며, 추가 파티션이 필요할 경우 확장 파티션(Extended Partition)을 사용해야 합니다.

  • 확장 파티션을 사용하면 논리 파티션(Logical Partition)을 만들어 추가 파티션을 구성할 수 있지만, 구조적으로 복잡해집니다.

부트 시그니처 (Boot Signature)

  • MBR의 마지막 2바이트(0x01FE ~ 0x01FF)에는 0x55AA라는 값이 저장됩니다.

  • 이 값이 존재하면 부팅 가능한 디스크로 인식됩니다.

  • BIOS는 부팅 과정에서 MBR을 읽고 0x55AA를 확인하여 MBR이 올바른지 판단합니다.

  • 만약 0x55AA가 없으면 디스크가 부팅 가능하지 않은 것으로 간주됩니다.


2.2 GPT (GUID Partition Table)

GPT는 MBR보다 발전된 디스크 구조이며, 최신 시스템에서 사용됩니다. UEFI(Unified Extensible Firmware Interface)와 함께 동작하며, 최신 OS 환경에서 더욱 안정적이고 강력한 기능을 제공합니다.

GPT의 주요 특징

  • 이론적으로 8ZB(제타바이트)까지 지원하며, 실질적으로는 수백 개의 파티션을 만들 수 있음.

  • 각 파티션이 고유한 GUID (Globally Unique Identifier)를 사용함.

  • MBR과 달리 디스크 시작 부분뿐만 아니라 끝부분에도 백업 파티션 테이블을 저장하여 복구가 가능함.

  • CRC32 체크섬 사용으로 데이터 무결성을 검증할 수 있음.

  • Windows 11 및 최신 Linux 배포판에서는 GPT를 기본적으로 요구함.

  • 각 파티션 엔트리는 128바이트 크기로 저장되며, 각 파티션은 고유한 GUID를 가지므로 더 많은 정보를 저장할 수 있음.

  • GPT는 Protective MBR을 포함하여 MBR 기반의 운영체제에서도 최소한의 보호 기능을 수행할 수 있도록 함.


3. MBR과 GPT의 디스크 구조

3.1 MBR 디스크 구조 (512바이트 기준)

오프셋 크기(바이트 내용
0x0000 446 부트 로더 (Bootloader)
0x01BE 16 첫 번째 파티션 엔트리
0x01CE 16 두 번째 파티션 엔트리
0x01DE 16 세 번째 파티션 엔트리
0x01EE 16 네 번째 파티션 엔트리
0x01FE 2 부트 시그니처 (0x55AA)

3.2 GPT 디스크 구조

GPT는 기본적으로 MBR보다 훨씬 더 강력한 구조를 가짐.

 

위치 크기 (바이트) 내용
0 512 Protective MBR (GPT를 보호하는 MBR)
512 92 GPT Header (GUID + CRC32 + 엔트리 위치 정보)
1024 128 x N 파티션 엔트리 배열 (각 128바이트, 일반적으로 128개 이상 가능)
이후 - 사용 가능한 공간 (데이터 저장 영역)
마지막 512 92 백업 GPT 헤더
마지막 1024 128 x N 백업 파티션 엔트리 배열

4. Linux에서 MBR과 GPT 확인하기

MBR 또는 GPT 여부 확인

먼저, 시스템에서 사용 가능한 디스크 목록을 확인하세요:

lsblk

또는

sudo fdisk -l

디스크 목록이 확인되면, 해당 디스크가 /dev/sda 또는 /dev/nvme0n1 등의 이름을 가지고 있는지 확인한 후, 아래 명령어를 실행하세요:

sudo parted /dev/sda print

출력 값이 Partition Table: msdos이면 MBR, Partition Table: gpt이면 GPT입니다.


5. MBR과 GPT 변환 (※ 주의)

5.1 MBR → GPT 변환 (데이터 삭제됨)

sudo gdisk /dev/sdX  # GPT 변환 실행
x  # 전문가 모드 진입
z  # 기존 MBR 삭제 후 GPT 변환

5.2 GPT → MBR 변환 (데이터 삭제됨)

sudo gdisk /dev/sdX
r  # 복구 모드
f  # GPT 파티션 테이블을 MBR로 강제 변환

7. MBR vs GPT 비교 정리

특성 MBR GPT
지원 최대 디스크 크기 2TB 8ZB
최대 파티션 개수 기본 4개 (확장 파티션 가능) 거의 무제한
부팅 방식 BIOS UEFI
데이터 복구 불가능 백업 GPT 헤더로 가능
데이터 무결성 없음 CRC32 체크섬 있음
OS 호환성 모든 OS 지원 최신 OS만 지원

  • MBR은 2TB 이하, 레거시 BIOS 부팅에서 사용.

  • GPT는 UEFI 기반, 대용량 디스크 및 안정성 요구 환경에서 사용.

  • 새로운 시스템은 거의 GPT를 사용함.

반응형
Comments