
Libreboot 26.10 ‘Ominous Olive’가 2026년 10월 15일 공개됐다. 이번 버전은 거의 모든 64비트 지원 보드에서 EDK2 기반 UEFI를 기본 펌웨어로 사용하고, MrChromebox 프로젝트가 지원하는 크롬북 233종을 추가했다. 기존 GRUB·SeaBIOS 설정을 쓰는 사용자는 부팅 방식이 바뀌는 점과 호환성 관련 주의사항을 확인해야 한다.
새 릴리스는 Libreboot 26.10 다운로드에서 받을 수 있으며, 미러 목록도 제공된다. 변경 사항은 이전 버전인 Libreboot 26.01과 비교한 것이다.
Libreboot는 지원되는 Intel·AMD 및 ARM64 하드웨어에서 독점 BIOS/UEFI 펌웨어를 대체하는 자유 오픈소스 부팅 펌웨어다. 이번 버전은 MrChromebox의 EDK2 페이로드를 통해 UEFI를 지원해 Windows 10·11을 비롯한 UEFI 호환 운영체제를 부팅할 수 있게 했다. 프로젝트는 거의 모든 보드에서 EDK2를 기본값으로 삼았지만, 32비트 전용 보드와 일부 예외적인 하드웨어는 이전 구성을 유지한다.
기본 부팅 방식과 호환성
EDK2는 Intel의 UEFI 참조 구현이다. Libreboot는 MrChromebox가 제공하는 EDK2 포크를 범용 coreboot 페이로드로 사용하며, 릴리스에 전체 소스 코드를 포함했다. 기존 설정과의 호환성을 위해 EDK2 메뉴에는 EFI 버전 GRUB와 SeaBIOS CSM도 넣었다. 부팅 중 안내가 나오면 ESC를 눌러 메뉴에 접근할 수 있다. iPXE도 지원 보드에서는 기본 활성화된다.
릴리스 설명에 따르면 여러 Libreboot 기기에서 다음 운영체제와 부팅 방식이 시험됐다.
- Windows 10과 11, 9front, OpenBSD의 EFI 부트로더 및 GPT 구성, FreeBSD의 UEFI 모드가 동작했다.
- Linux UKI, systemd-boot 등도 EDK2에서 부팅할 수 있다. 최신 Linux 배포판은 GRUB 없이 사용할 수 있다.
- ReactOS는 UEFI를 지원하지 않아 동작하지 않았다. RedoxOS는 동작할 가능성이 있다고 설명했다.
- ThinkPad X200/T400에 쓰인 GM45부터 ThinkPad T480·X280과 Dell OptiPlex 3050/5050에 쓰인 Kabylake까지 Intel 하드웨어에서 EDK2를 시험했다고 밝혔다.
기존 Linux·BSD 설치를 유지하려면 EDK2 메뉴의 EFI GRUB 또는 SeaBIOS CSM을 사용할 수 있다. 다만 호환성 모듈보다 운영체제를 EFI 방식으로 설치하는 것이 권장된다. BIOS 방식 부트로더를 쓰는 FreeBSD는 SeaBIOS 텍스트 모드가 필요할 수 있으며, 새 설치는 EDK2를 이용한 UEFI 모드가 권장된다.
일부 보드에서는 EDK2가 제공되지 않는다. 32비트 전용이거나 플래시 용량이 제한된 보드, HP EliteBook 8560w처럼 그래픽 구성이 특이한 일부 보드는 독립형 GRUB·SeaBIOS 페이로드를 계속 사용한다. 독립형 페이로드는 구식 구성으로 간주되며 이후 릴리스에서 제거될 수 있다.
기존 GRUB·SeaBIOS를 다시 빌드하려는 사용자는 해당 보드의 target.cfg에서 build_depend, payload_edk2, grubtree 변수를 제거하고 다음 설정을 추가해야 한다.
payload_grub="y"
payload_seabios="y"
payload_memtest="y"
그 뒤 다시 빌드한다. 기본 build_depend 값을 명시하려면 다음과 같이 설정할 수 있다.
build_depend="seabios/build grub/default memtest86plus/default"
GRUB 트리도 지정하려면 다음을 추가한다.
grubtree="default"
예시 설정 파일은 config/module/coreboot/t480_vfsp_16mb/target.cfg다. EDK2 구성에서 SeaBIOS 텍스트 모드가 필요한 경우에는 config/module/coreboot/t480_vfsp_16mb/config/libgfxinit_corebootfb를 libgfxinit_txtmode로 이름을 바꾼 뒤 다음 명령을 실행한다.
./mk -m coreboot t480_vfsp_16mb
./mk -s coreboot t480_vfsp_16mb
메뉴에서 Devices -> Display -> Framebuffer mode로 이동해 Legacy VGA text mode를 선택한다. 이 방식은 새 설치에 권장되지 않는다. FreeBSD BIOS 모드 부트로더를 부팅할 때 텍스트 모드가 필요할 수 있으며, 새 설치에는 EDK2를 통한 EFI 모드가 권장된다. 더 자세한 내용은 Libreboot의 BSD 문서를 참고하라고 안내한다.
EDK2의 키보드 배열 설정 메뉴는 이번 릴리스에 없다. 기본값은 영국식 QWERTY이며, Libreboot 측은 이후 버전에서 EDK2 설정 메뉴와 SMMSTORE를 이용해 키보드 배열 및 로캘을 설정하는 기능을 추가할 계획이라고 밝혔다. 보드별 키맵 ROM 이미지는 더 이상 제공하지 않는다. 원하는 사용자는 config/data/grub/keymap/의 keymap.gkb를 CBFS에 넣을 수 있다. GRUB EFI에서 PS/2 키보드로 키맵을 사용하려면 grub.cfg에서 terminal_input을 at_keyboard로 설정하고 다음 명령으로 키맵을 불러와야 한다.
keymap (cbfsdisk)/keymap.gkb
크롬북과 추가 하드웨어
MrChromebox가 현재 지원하는 Intel·AMD 크롬북 233종을 Libreboot 빌드 시스템에 가져와 설정을 적용했다. 이 릴리스에서는 소스 코드만 제공하므로 사용자는 직접 빌드해야 하며 미리 빌드된 바이너리는 없다. Baytrail 세대의 Kip은 시험했지만 나머지는 추가 시험이 필요하다. 설치에는 MrChromebox 문서를 참고하라고 안내한다. 프로젝트는 Libreboot 이미지가 MrChromebox 설치 도구와 동작상 호환된다고 설명한다.
크롬북 구성에는 MrChromebox의 EDK2를 사용하고 Libreboot 로고와 색상을 적용했다. Intel ME 비활성화를 위해 빌드 시 HAP 비트를 설정하고, Intel Flash Descriptor(IFD) 영역을 읽기·쓰기로 풀었다. EDK2 안에 SeaBIOS CSM, GRUB EFI, MemTest86+를 넣어 이전 설정과의 호환성을 제공한다. Haswell 크롬북은 MRC 대신 네이티브 RAM 초기화를 사용한다. Kabylake까지의 Intel 크롬북은 GOP 대신 libgfxinit을 사용한다. 추가 페이로드는 부팅 중 ESC 메뉴에서 선택할 수 있다.
크롬북 외에도 Dell OptiPlex 5050 SFF, Supermicro X11SSH-F, ThinkPad X280·X270, Dell OptiPlex 3040 Micro 지원이 추가됐다. ThinkPad X301은 부팅 가능한 것으로 확인돼 대상 설정의 release="n"이 제거됐다. ASUS KGPE-D16과 KCMA-D8에는 4MB·8MB 대상이 추가됐다.
AMD Fam15h 보드에는 15h.org의 coreboot 포크를 사용한다. 기존 4.11_branch 트리를 대체했으며, AMD AGESA 코드를 이용해 CPU와 메모리 초기화를 개선하고 더 많은 RAM을 지원한다고 릴리스는 설명한다. IOMMU와 TPM 관련 수정도 포함됐다. SeaBIOS·GRUB 이미지에는 일반 바이너리를 제공하지만, 이 보드의 EDK2 이미지는 실험적이며 소스 코드만 제공한다. EDK2에는 프레임버퍼가 필요한데 AST2050 내장 그래픽은 네이티브 초기화에서 텍스트 모드로만 시작하며, 프로젝트는 이를 위해 제조사 VGA ROM을 사용하지 않기로 했다. EDK2 이미지는 그래픽 카드를 사용하는 경우를 대상으로 한다.
크롬북 대상 목록은 릴리스 페이지에 실렸다. 목록에는 Google 보드 이름과 Purism Librem 기기 이름이 포함된다.
그래픽 카드와 주의사항
EDK2와 PCIe 재배치 가능 BAR(ReBAR)을 함께 쓰면 4GB보다 높은 메모리 주소 할당이 필요한 최신 그래픽 카드를 사용할 수 있다. ReBAR는 기본적으로 꺼져 있으며 coreboot의 menuconfig에서 켤 수 있다. 다만 시험 중 ReBAR를 활성화하면 libgfxinit을 사용하는 Intel GPU의 영상 출력이 고장 났고, 아직 해결책을 찾지 못해 기본값은 비활성화다. 외장 GPU만 있는 보드에서는 ReBAR를 켜 둘 수 있다고 설명한다. 내장 그래픽이 있는 시스템에서 실수로 켰다면 그래픽 카드를 장착해 복구할 수 있으며, 이 경우에도 Linux i915 드라이버는 KMS/DRM에서 프레임버퍼를 초기화할 수 있다고 덧붙였다. 향후 수정 후 기본 활성화할 계획이다.
필요한 EDK2 빌드에서는 PCIe Option ROM이 기본 활성화된다. Dell OptiPlex 9020 SFF와 5050 SFF 등 여러 데스크톱에서 시험했다.
SeaBIOS CSM에는 알려진 제약이 있다. 부팅 시 CPU 코어 하나를 점유해 쿼드코어 시스템이 Linux에서 3코어로 표시될 수 있다. 향후 수정할 예정이며, 호환성이 필요하다면 이 문제가 없는 GRUB EFI를 쓰는 편이 낫다고 안내한다. 두 페이로드 모두 부팅 중 ESC를 눌러 EDK2 메뉴에서 선택할 수 있다.
그 밖의 변경과 개발자 주장의 범위
EDK2 지원은 플래시가 4MB 이상인 Intel·AMD 보드에 추가됐다. GRUB EFI 메뉴에는 EDK2 설정으로 돌아가는 fwsetup 항목이 생겼고, EFI 페이로드에서 iPXE 부팅도 지원한다. 빌드 도구에는 MrChromebox 설정을 가져오는 util/mrimport와 U-Boot 설정을 가져오는 ./mk import_uboot가 추가됐다. 후자는 아직 사용되지 않았으며, 향후 시험을 거친 U-Boot 보드를 추가하는 데 쓸 계획이다. ./mk cbtest는 보드 이름과 lbmk·coreboot defconfig가 일치하는지 검사하고, ./mk test는 캐시 없이 광범위하게 빌드와 다운로드를 시험한다.
기본 GRUB 부팅 메뉴는 단순화됐다. USB를 먼저 확인하며, 처음 찾은 설정으로 부팅한다. ESC를 눌러 검색 과정에서 다음 설정으로 이동할 수 있어 여러 Linux 배포판의 멀티부팅에 활용할 수 있다. Intel 시스템에서는 빌드 시 IFD 영역을 자동으로 풀고 HAP 비트를 설정해 Intel ME를 비활성화한다. EDK2를 쓰는 대상은 TPM을 활성화하고 SMMSTORE를 기본으로 사용한다. SMMSTORE는 부팅 시 설정 메뉴에서 부팅 순서처럼 펌웨어를 다시 빌드하지 않고도 유지할 설정을 바꾸는 데 쓰인다.
주요 상위 프로젝트 버전도 갱신됐다. Flashprog는 2026년 9월 24일 기준, EDK2는 26.09.2, GRUB는 2.16으로 업데이트됐다. 기본 coreboot 트리는 2026년 9월 18일 기준 8ce4c91c41da3f042979f92095149a85bc93227c, MrChromebox 트리는 e5997cf9384b29082a1bf3101813d8ac3dadda42를 가져왔다. Fam15h용 15h.org 트리는 2026년 5월 27일 기준 57e26bdcd959808c0171164f3c6197d4a347c3b2다. coreboot 업데이트에는 GCC 15.2, MPC 1.4.1, Nasm 3.02, acpica 20251212, binutils 2.46.1이 포함됐다.
버그 수정에는 ThinkPad X230 부팅 중 멈춤 문제 수정, ThinkPad X280의 IFD 영역과 OEM 영역 처리 수정, 여러 크롬북의 잘못된 벤더 파일 경로 수정 등이 포함됐다. GCC 16에서 pico-serprog 빌드 오류를 수정했고, 이전 배포판과의 호환성을 위해 coreboot에서 gnu23 대신 gnu2x를 사용한다. 오프라인 GRUB 빌드가 되도록 번역 파일을 빌드 시스템에서 캐시하고 체크섬으로 확인하게 했다. 빌드 시스템에서는 ccache 사용을 제거했으며, 프로젝트는 신뢰성 있는 빌드를 위해 빌드 시간이 길어지는 편을 택했다고 설명한다. util/nvmutil/에는 경계 검사, 메모리 정렬 처리, EINTR 대응 I/O 등 수정이 들어갔다.
릴리스에는 lbmk/AGENTS.md에 강한 반인공지능 정책을 추가한 변경도 포함됐다. 프로젝트 책임자는 AI 보조 코드에 반대하며 x86용 U-Boot 페이로드를 EDK2로 대체한 이유 중 하나로 AI를 사용한 포크에 대한 우려를 들었다. 이는 Libreboot 프로젝트 측의 입장이다. ARM64에서는 U-Boot를 계속 사용한다. EDK2는 x86에서 U-Boot를 대신하는 기본 페이로드가 됐고, AI를 사용하지 않는다는 이유로 선택했다고 주장한다. Libreboot는 향후 AI 지원 커밋이 포함된 다른 프로젝트도 검토할 의향을 밝혔다.
이번 릴리스에서 완료하지 않은 작업도 있다. util/libreboot-utils의 임시 파일 생성 도구 mkhtemp는 엄격한 보안 검사와 심볼릭 링크 제한 등을 구현하려 했지만, 메모리 문제와 기존 빌드 도구와의 호환성 문제로 중단됐다. 잡음 방지와 자동 톤 감지를 강화하려던 util/spkmodem-decode도 과도한 작업으로 판단해 재개하지 않기로 했다. ARM64 크롬북용 U-Boot는 최신 버전의 부팅 메뉴가 제대로 작동하지 않아 Libreboot 26.01에 사용한 2025년 초 버전을 유지한다. Linuxboot와 EDK2 키보드 배열 설정도 이후 작업으로 미뤘다.
주요 변경점과 마이그레이션 안내를 포함한 전체 Libreboot 26.10 릴리스 노트에서 보드별 세부 사항과 추가 수정 내역을 확인할 수 있다.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요