UEFI 및 BIOS는 하드웨어를 초기화하고 운영 체제를 로드하기 위해 시작하는 동안 사용되는 2가지 유형의 메인보드 펌웨어로 장치 부팅 우선 순위를 결정하고 사용자가 하드웨어 및 소프트웨어 설정을 사용자 지정할 수 있다.
두 펌웨어 유형 모두 동일한 용도로 사용되지만 UEFI가 BIOS보다 최신 버전이며 더 많은 사용자 지정 옵션과 기능을 제공한다.
UEFI란?
UEFI(Unified Extensible Firmware Interface)는 통합 확장 가능 펌웨어 인터페이스로 2007년 Windows가 Windows Vista 서비스 팩 1 및 Windows 7, Windows Server 2008 R2 출시 된 이후 컴퓨터의 레거시 BIOS를 점진적으로 대체하는 최신 펌웨어이다.
UEFI를 만드는 주된 목적은 BIOS의 한계를 극복하고 시스템 부팅/종료 시간을 단축하는 것과 UEFI는 GPT 파티셔닝 체계를 사용하고 훨씬 더 큰 저장 용량(2.2TB 이상)을 지원하고 UEFI는 Secure Boot 기능으로 더 나은 보안을 제공하여 승인되지 않은 앱(멀웨어)이 부팅되는 것을 방지와 네트워킹 기능 지원으로 원격문제 해결 및 구성에 유용하다.
그러나 단점은 보안 부팅이 다른 OS를 서명되지 않은 앱으로 취급하기 때문에 이중 부팅을 방지한다는 것이다.
UEFI는 32비트 또는 64비트 모드에서 실행되므로 그래픽 사용자 인터페이스를 제공할 수 있다 .
BIOS란?
BIOS(Basic Input/Output System)는 1980년대에 개발되어 EPROM(Erasable Programmable Read-Only Memory)을 사용하고 보드에 납땜이 된 상태라 변경이 쉽지 않았으나 기술이 발전되어 1990년대부터 다시 기록할 수 있는 EEPROM(Electrically EPROM)을 사용하며 발전하고 개선되었지만 현재는 BIOS가 아닌 UEFI를 사용하여 사라질 예정이다.
BIOS의 목적은 CMOS 칩에 저장된 설정을 확인하여 사용자가 원하는 시스템 실행 방법과 초기화할 장치(CPU, GPU , RAM 등)를 결정하는 것으로 장치 확인 후 부팅전 하드웨어를 한번 초기화하여 사용 준비하게 하고 BIOS는 부팅 가능한 장치를 찾고 OS에 대한 제어를 수행한다.
BIOS는 16비트 모드에서 작동하며 펌웨어 ROM에서 읽고 실행할 수 있는 코드의 양도 제한되어 부팅/종료시간도 느리다. 펌웨어는 MBR 파티셔닝 체계를 사용 하고 최대 2TB까지만 저장 장치를 지원합니다.
[BIOS vs UEFI]
구분 | BIOS (Basic Input/Output System) |
UEFI (Unified Extensible Firmware Interface) |
출시일 | 1980년대 | 1990년대 후반 |
작동 모드 | 16 비트 | 32 비트/ 64 비트 |
사용자 인터페이스 | 키보드를 사용한 기본 UI 제공 | 마우스를 지원하는 사용자 친화적인 그래픽 UI 제공 |
파티션 지원 | 최대 4개의 물리적 파티션 | 최대 128개의 물리적 파티션 |
파티션 크기 제한 | 2TB | 18EB(엑사바이트 : 1,880만 TB) |
성능 | 16비트 시스템에서 가장 잘 수행 | BIOS에 비해 부팅 시간이 상항히 빠르고 성능도 향상 |
저장 | 메인보드의 전용 침에 저장된 시스템 초기화 정보 | 하드디스크의 .efi파일에 저장된 시스템 초기화 정보 |
보안 | 비밀번호 보안 | 보안 부팅 가능 (각 부팅 소프트웨어, 드라이버 및 OS의 서명을 확인하여 서명이 유효한지 확인 후 OS가 동작) |
[MBR vs GPT]
구분 | MBR | GPT |
저장 공간 | 최대 2TB의 저장 용량을 지원 | 사용 가능한 모든 저장 용량을 지원 (2TB보다 작거나 클 수 있으며 최대 18EB까지) |
파티션 수량 | 디스크 1개에 최대 4개의 주 파티션 또는 주 파티션 3개 + 확장 파티션 을 통한 추가 파티션 생성 가능 |
디스크 1개에 최대 128개 파티션을 생성 가능 |
데이터 보안 | 파티셔닝 및 부팅 데이터를 한 곳에 저장하여 데이터가 손상되면 검색할 수 없다. | 디스크 전체에 파티션 정보를 여러 복사본으로 저장. 데이터가 손상된 경우에도 다시 가져올 수 있다. |
지원되는 부팅 모드 | 레거시 BIOS 부팅 모드 사용 | UEFI 부팅 모드 사용 |
기타 | .부팅 파티션을 1개만 지정 가능 .확장 및 논리 파티션은 부팅 파티션 불가 .대부분의 펌웨어/OS에서 사용 가능 |
.32bit Windows 및 기본 BIOS를 사용하는 시스템에서는 파티션 내용 조회 불가 .일부 과거 버전의 OS에서는 부팅 파티션으로 사용 불가 |
1. 펌웨어 종류 확인 방법
요즘 메인보드는 UEFI 만 또는 UEFI와 BIOS가 혼합된 상태로 제공되며 부팅모드 설정화면에서도 확인 가능하다.
두 가지를 구별하는 다른 방법은 설정 화면에 따라 마우스 커서가 나타나거나 메뉴가 모두 텍스트로 표시된다. BIOS에 더 익숙한 사람들을 혼동하지 않으려 고 일부 제조업체는 외관상 두 가지 모드를 구별하지 않는 경우도 있으며 컴퓨터가 UEFI 또는 BIOS를 사용하는지 여부를 확인하는 검증 된 방법이 필요하다.
1)Windows "시스템 정보"에서 확인방법
- "Windows + R"키를 동시에 눌러 실행 창을 열고 MSInfo32 입력하면 시스템 정보 창이 열립니다.
- 오른쪽 창에서 "BIOS 모드"를 찾는다.
→ BIOS를 사용하는 경우 레거시가 UEFI를 사용하는 경우 UEFI가 표시된다.
2)Windows "setupact.log"에서 확인방법
Windows 파일 탐색기에서 setupact.log 파일을 확인하면 컴퓨터에서 사용 중인 BIOS 모드를 알 수 있습니
- "Windows + E"키를 동시에 눌러 "파일 탐색기"를 열고 C:\Windows\Panther 폴더로 이동
- setupact.log 텍스트 파일을 메모장으로 연다
- Ctrl + F를 눌러 메모장에서 찾기창을 열고 Detected Boot Environment를 입력후 다음찾기 클릭
→ 결과에 EFI 또는 BIOS 단어를 확인한다
Callback_BootEnvironmentDetect: Detected Boot Environment : BIOS
Callback_BootEnvironmentDetect: Detected Boot Environment : EFI
3)Linux 명령어로 확인
parted -l 명령어로 확인
4)UEFI/BIOS 부트모드에서 확인방법
하드웨어 제조사마다 다르며 일반적으로 F2 키를 눌러 기존 BIOS에 액세스 가능하다.
(그외 F1, F10, F11, F12, Esc, Delete 키를 사용하는 경우도 있음)
-컴퓨터를 다시 시작
-BIOS 설정 유틸리티 화면이 나타날 때까지 "F2" 키를 계속 누른다.
(일반적으로 서버 및 PC는 "Del" 키를 노트북은 "F2" 키를 사용한다. 안되면 다른 키를 시도)
-Boot 선택 > Boot 탭에서 위쪽 및 아래쪽 화살표로 UEFI 모드 나 Legacy모드를 선택 > Enter > Exit > Yes
2. UEFI 펌웨어 사용을 위한 파티션 변경(MBR → GPT)
-BIOS를 UEFI로 변경하였을때 시스템 부팅시 문제를 예방하려면 파티션을 MBR(BIOS)에서 GPT(UEFI)로 변환해야 한다.
-디스크에 어떠한 파티션 또는 볼륨도 포함되어 있지 않아야 디스크를 MBR에서 GPT 파티션으로 변경할 수 있다.
-또, 디스크를 변환하기 전에 모든 데이터를 백업하고 디스크에 액세스하는 모든 프로그램을 닫는다.
1)Windows 인터페이스로 변환
-GPT 디스크로 변환하고자 하는 기본 MBR 디스크의 모든 데이터를 백업 또는 이동한다.
-디스크에 파티션 또는 볼륨이 포함된 경우 각각을 마우스 오른쪽 단추로 클릭 후 파티션 삭제 또는 볼륨 삭제를 클릭한다.
-GPT 디스크로 변경하고자 하는 MBR 디스크를 마우스 오른쪽 단추로 클릭한 후 "GPT 디스크로 변환"을 클릭한다.
2)CLI(명령줄)로 변환
빈 MBR 디스크를 GPT 디스크로 변환하려면 MBR2GPT.EXE 도구를 사용할 수도 있지만 약간 복잡하다.
자세한 내용은 MBR 파티션을 GPT로 변환(https://learn.microsoft.com/ko-kr/windows/deployment/mbr-to-gpt)을 참조
-GPT 디스크로 변환하고자 하는 기본 MBR 디스크의 모든 데이터를 백업 또는 이동한다.
-"Windows +R" 키 동시에 눌러서 "diskpart"를 입력후 Enter (디스크에 파티션이나 볼륨이 없는 경우 6단계까지 건너뜀)
-DISKPART> 에서 "list disk"를 입력하여 서버에 연결된 모든 디스크를 확인 후 Enter (GPT로 변환하려는 디스크 번호를 기록해 둔다)
-DISKPART> 에서 "select disk disknumber"(disknumber는 MBR 디스크 번호)를 입력하여 GPT로 변환하려는 디스크 번호 선택후 Enter
-DISKPART> 에서 "clean"를 입력하여 대상 디스크에 있는 모든 파티션을 삭제하고 Enter
-DISKPART> 에서 "convert gpt"를 입력하고 Enter.
-DISKPART> 에서 "exit"를 입력하고 Enter.
명령 | 설명 |
list disk | 디스크의 목록과 크기, 사용 가능한 공간 크기, 기본 또는 동적 디스크 여부, 디스크의 MBR(마스터 부트 레코드) 또는 GPT(GUID 파티션 테이블) 파티션 스타일 사용 여부 등 정보를 표시합니다. 별표(*)가 표시된 디스크는 포커스가 설정됩니다. |
select disk disknumber | disknumber는 MBR 디스크 번호를 의미함 디스크 번호가 disknumber인 지정된 디스크를 선택하고 포커스를 설정합니다. |
clean | 포커스가 설정된 디스크에서 모든 파티션 또는 볼륨을 삭제합니다. |
convert gpt | MBR(마스터 부트 레코드) 파티션 스타일의 비어 있는 기본 디스크를 GPT(GUID 파티션 테이블) 파티션 스타일의 기본 디스크로 변환합니다. |