Fedora CoreOS 설정¶

Fedora CoreOS는 BC-250에서 훌륭하게 동작합니다. 컨테이너 최적화 OS로 cockpit, podman, quadlets를 사용하여 단일 머신을 관리합니다. 여러 노드를 관리할 때는 Docker swarm을 사용합니다.
ignition 설정은 다루지 않지만, BC-250 및 성능 커스터마이징에 대한 설치 후 설정은 안내할 수 있습니다.
상태: 완전히 동작
난이도: 특수 설정 (데스크톱이 아니라 헤드리스 서버 플랫폼)
운영 체제: Bazzite가 이 위에 구축된 기반이므로 향후 Bazzite로 쉽게 'rebase'할 수 있습니다.
커널 및 소프트웨어 버전: 작성 시점 기준 커널 7.0.8이 기본 커널 버전입니다. 아래 모든 커스터마이징은 Zincati를 통한 Fedora CoreOS 자동 시스템 업그레이드를 통해 유지되도록 설계되었습니다.
Fedora CoreOS를 선택하는 이유¶
장점¶
- 롤링 릴리스 - 롤링 릴리스 및 관리형 업그레이드
- 낮은 RAM 사용량 - 새로 프로비저닝된 머신에서 일반적으로 640MB 미만
- 불변 기반 - rpm-ostree의 모든 장점
- 컨테이너 최적화 워크로드용 - 사용 사례 예: Games on Whales, Frigate, Home Assistant, *Claw, llama-server
BIOS 요구 사항¶
설치 전 필수:
-
수정된 BIOS 플래시 (P3.00 권장)
-
VRAM 할당 설정 (512MB dynamic 권장)
-
IOMMU 비활성화 (IOMMU가 손상됨 — 반드시 비활성화)
BIOS 플래시 가이드를 참조하세요.
Fedora CoreOS 설치¶
사전 요구 사항¶
- USB 드라이브 (4GB+)
- Fedora CoreOS Live DVD ISO fedoraproject.org
- Linux 명령줄에 대한 친숙함
설치 단계¶
Fedora CoreOS 설치 가이드 따르기
Fedora CoreOS 설치는 공식 Fedora CoreOS 설치 가이드에 따라 수행해야 합니다. BC-250에 CoreOS를 설치하는 데 특별한 변경이나 커스터마이징은 필요하지 않습니다. 모든 커스터마이징은 설치 후에 수행합니다.
설치 후 단계¶
ACPI C-State 및 P-State 활성화¶
CoreOS 업그레이드를 통해 C-State 및 P-State 설정이 유지됩니다. root 사용자로 실행하세요.
- bc250-acpi-fix github 저장소에서 두 .aml 파일을 가져옵니다.
- AML 파일을 포함하는 dracut 디렉터리 생성
- *.aml 파일을 /etc/dracut.conf.d/acpi/에 복사
- 다음 내용으로 /etc/dracut.conf.d/99-acpi-override.conf 새 파일 생성
- InitramFS 생성 활성화
- 재부팅
- ACPI 테이블 Override가 적용되었는지 확인
Cyan Skillfish 거버너 활성화¶
GPU를 스로틀할 수 있습니다. 내 설정에서는 350 MHz에서 2200 MHz까지 테스트되었습니다. 냉각 설정에 크게 의존합니다. GPU 속도를 2000 MHz 이상으로 설정하고 모든 GPU Compute Unit을 활성화할 때는 주의하세요. 내 설정에서는 시스템 잠금이 발생했습니다.
- COPR filippo/bazzite 저장소를 로컬 시스템에 다운로드하여 배치합니다.
- cyan-skillfish-governor-smu 패키지 설치
- 재부팅
- 선호에 맞게 구성 편집
- cyan-skillfish-governor-smu 서비스 활성화
- 서비스가 실행 중이고 동작하는지 확인
하드웨어 모니터 활성화¶
읽기 전용 하드웨어 모니터 기능을 사용할 수 있습니다.
- 모듈을 로드하는 구성 파일 생성
- 모듈과 함께 로드할 옵션의 구성 파일 생성
- 재부팅
- 모듈이 로드되었는지 확인
추가 코어 잠금 해제 활성화¶
이전에 언급했듯 40 Compute Unit을 활성화하고 냉각/전력에 주의**가 필요합니다. 준비되지 않으면 **문제가 발생합니다. 이를 활성화하는 경우 거버너를 350 MHz에서 1500 MHz 사이로 유지하는 것이 권장됩니다. 재부팅마다 한 번 로드해야 합니다. 대안으로 동일한 목표를 달성하는 커널 패치를 참조할 수 있습니다(향후 업데이트를 위해 이 패치를 유지하는 것이 더 복잡할 수 있음).
- AMD User Mode Register (UMR) 유틸리티 설치
- 재부팅
- 다음 내용으로 systemd용 새 파일 생성
cat <<EOF > /etc/systemd/system/gpu-unlock.service [Unit] Description=Unlock GPU Compute Units at Boot After=multi-user.target [Service] Type=oneshot RemainAfterExit=yes ExecStartPre=/usr/bin/sleep 10s ExecStart=/usr/bin/umr -w *.gfx1013.mmRLC_PG_ALWAYS_ON_WGP_MASK 0x1f ExecStart=/usr/bin/umr -w *.gfx1013.mmCC_GC_SHADER_ARRAY_CONFIG 0x0 ExecStart=/usr/bin/umr -w *.gfx1013.mmCC_GC_SHADER_ARRAY_CONFIG 0x0 -b 1 0 0xffffffff ExecStart=/usr/bin/umr -w *.gfx1013.mmCC_GC_SHADER_ARRAY_CONFIG 0x0 -b 1 1 0xffffffff ExecStart=/usr/bin/umr -w *.gfx1013.mmCC_GC_SHADER_ARRAY_CONFIG 0x0 -b 0 1 0xffffffff ExecStart=/usr/bin/umr -w *.gfx1013.mmCC_GC_SHADER_ARRAY_CONFIG 0x0 -b 0 0 0xffffffff ExecStart=/usr/bin/umr -w *.gfx1013.mmSPI_PG_ENABLE_STATIC_WGP_MASK 0x1f -b 0 0 0xffffffff ExecStart=/usr/bin/umr -w *.gfx1013.mmSPI_PG_ENABLE_STATIC_WGP_MASK 0x1f -b 0 1 0xffffffff ExecStart=/usr/bin/umr -w *.gfx1013.mmSPI_PG_ENABLE_STATIC_WGP_MASK 0x1f -b 1 0 0xffffffff ExecStart=/usr/bin/umr -w *.gfx1013.mmSPI_PG_ENABLE_STATIC_WGP_MASK 0x1f -b 1 1 0xffffffff [Install] WantedBy=multi-user.target EOF - 서비스 등록, 활성화 및 시작
14.75GB VRAM 할당 활성화¶
LLM 등 서비스에 GPU에 14.75GB RAM을 할당할 수 있습니다. 추가 VRAM 구성 설정이 있습니다. 링크된 문서를 검토하세요. 참고: 아래 할당이 동작하려면 BIOS VRAM을 512MB Dynamic Allocation으로 설정해야 합니다.
- 다음 내용으로 modprobe 구성 생성
- initramfs 동기화 강제
- 재부팅
Spectre 완화 비활성화¶
일부 CPU 속도 향상을 허용합니다.
- 커널 commandline 설정
- 재부팅
Podman으로 컨테이너에 GPU 노출¶
컴퓨트 용도(예: LLM)로 vulkan을 활용하여 GPU를 자주 노출합니다. podman 명령줄에서 다음을 사용하세요:
관련 가이드: - Fedora 설정 - Bazzite 설정 - CachyOS 설정 - GPU 거버너