기본 설치

기본 설치

며칠 전 coreboot를 사용하여 x230을 플래시했습니다.지도 시간.

이제 설치하면핀투 그걸 써GPT 파티션가이드(사용하지 마세요.MBR 파티션), 다음과 같은 오류가 발생합니다.

EFI variables are not supported on this system

이는 Coreboot/SeaBIOS가 MBR 파티션만 사용한다는 의미입니까?

답변1

이 질문에 대답하려면,코어부트+SeaBIOS하다GPT 파티션 지원!

UEFI 또는 BIOS 펌웨어가 부팅 디스크가 가질 수 있는 파티션 테이블 유형과 직교한다는 점을 강조하는 설명은 정확합니다.

  • UEFI는 MBR 및 GPT를 지원합니다.
  • BIOS는 MBR 및 GPT1을 지원합니다.
  • coreboot+SeaBIOS는 MBR 및 GPT1을 지원합니다.

¹BIOS 및 coreboot+SeaBIOS에서 GPT용 BIOS 부팅 파티션만 생성하면 됩니다.

최근에 coreboot+SeaBIOS가 포함된 Librem 14 노트북을 구입했는데 같은 질문이 있습니다. coreboot가 GPT 파티션을 사용하는 데 특별한 장애물을 생성합니까? (검색 엔진에서 이 질문을 검색하다 이 질문이 나왔습니다!) 다행히도 클래식 BIOS/GPT 레이아웃을 사용하는 것이 나에게 적합하다고 보고할 수 있습니다.

기본 설치

불행하게도 저는 Gentoo를 설치한 적이 없으며(제가 사용하는 배포판은 Arch입니다), 시스템이 EFI 변수에 대해 불평하는 이유를 모르지만 배포판 설치 간에 전송할 수 있는 몇 가지 정보를 제공할 수 있기를 바랍니다.

  • 나는 사용했다기본 BIOS/GPT 파티션 구성표, 스왑 파티션은 제외합니다(저는 스왑 파일을 사용합니다).

    나는 GPT를 사용하여 gdisk드라이브를 파티션했습니다 ./dev/nvme0n11MiB BIOS 부팅 파티션을 생성했습니다., 드라이브의 나머지 부분에 걸쳐 있는 루트 파티션입니다.

    BIOS 부팅 파티션에는파일 시스템 없음( FSTYPE)또는 마운트 지점, 루트 파티션의 경우 ext4입니다.

    lsblk -o name,parttypename,fstype,size,mountpoint

    NAME             PARTTYPENAME     FSTYPE        SIZE MOUNTPOINT
    nvme0n1
    ├─nvme0n1p1      BIOS boot                        1M
    └─nvme0n1p2      Linux filesystem ext4        931.5G /
    
  • 그런 다음 GRUB을 설치했습니다.grub-install --target=i386-pc /dev/nvme0n1

    ('라고 생각하실 수도 있겠네요.무엇? ! i386-pc???나는 1985년의 32비트 CPU를 사용하고 있지 않습니다!' 하지만 이것이 grub-install기본 플래그이고coreboot+SeaBIOS 시스템을 포함한 x86-64 BIOS 시스템용 플래그입니다. 여기서는 다른 소스에서의 발생을 설명하고 사람들이 잘못된 플래그를 포함하지 않도록 하기 위해서만 언급합니다. 예를 들어 x86_64-efiUEFI에서만 작동합니다. )

    나중에 편집하여 더 나은 GRUB 설정을 지정할 수 있습니다 /etc/default/grub(그러나 저는 아무것도 설정하지 않았습니다).

    그런 다음 GRUB 구성 파일을 생성했습니다.grub-mkconfig -o /boot/grub/grub.cfg

그 후 디스플레이 관리자와 데스크탑 환경을 설치하고 일부 서비스를 활성화한 후 새로운 Arch 설치로 재부팅했습니다. 나는 목록을 작성하고 싶습니다.모두내 설치에 대한 잔혹한 세부 사항(나는 대략적으로 따랐습니다.아치 설치 가이드), 그러나 여기서는 범위를 벗어납니다. 핵심 정보는 위에 나열된 파티션 구성표 및 GRUB 설치입니다.

LUKS 디스크 암호화를 사용하여 설치

coreboot+SeaBIOS에서 GPT 디스크를 암호화하려면 유효한 설정은 위의 기본 설정과암호화루트 파티션( p3)을 선택하고 암호화되지 않은 ~500MiB /boot파티션( p2)을 추가합니다.

lsblk -o name,parttypename,fstype,size,mountpoint

NAME             PARTTYPENAME     FSTYPE        SIZE MOUNTPOINT
nvme0n1                                       931.5G
├─nvme0n1p1      BIOS boot                        1M
├─nvme0n1p2      Linux filesystem ext2          512M /boot
└─nvme0n1p3      Linux filesystem crypto_LUKS   931G
  └─cryptroot                     ext4          931G /

보너스 정보

위의 파티션 구성표를 사용하여 이 작업을 수행하는 방법이 궁금하신 분은 먼저 암호화된 루트 파티션을 루트 파티션으로 설정하고 열고 포맷하세요.

cryptsetup --verify-passphrase --verbose luksFormat /dev/nvme0n1p3
cryptsetup open /dev/nvme0n1p3 cryptroot
mkfs.ext4 /dev/mapper/cryptroot

그런 다음 마운트하고 /boot파티션을 나누십시오 ...

mount /dev/mapper/cryptroot /mnt
mkdir /mnt/boot
mount /dev/nvme0n1p2 /mnt/boot

...그리고 Arch의 경우 일반적으로 다음과 같습니다.설치 설명서그때부터.

GRUB 설치 세부 사항과의 유일한 차이점은 부트 로더(GRUB)를 설정해야 한다는 점입니다.기본 설치윗부분은 너야~ 할 것이다GRUB 설정을 구성하려면 상단 변수를 편집 /etc/default/grub해야 합니다 .GRUB_CMDLINE_LINUX

GRUB_CMDLINE_LINUX="cryptdevice=UUID=XXXXXX:cryptroot root=/dev/mapper/cryptroot"

XXXXXXUUID는 어디에 있나요?밖의, 루트 파티션을 암호화합니다. nvme0n1p3(아니요내부, 해독된 루트 파티션, cryptroot):

lsblk -o name,uuid

NAME             UUID
...
└─nvme0n1p3      XXXXXX
  └─cryptroot

그런 다음 GRUB 구성 파일을 생성하고 아래 단계를 따르십시오.기본 설치부분.

관련 정보