암호화 된 시스템 파티션을 사용하여 MBR에서 UEFI로 마이그레이션


1

라이브로 실행중인 openSUSE 설치를 MBR에서 GPT / UEFI로 변환 할 생각이있었습니다. 이 튜토리얼을 따라 디스크 유지 파티션과 관련 데이터를 성공적으로 변환했습니다. 내 원래 설정은 다음과 같습니다.

/dev/sda1 ext4 /boot
/dev/sda2 LVM
    /dev/root/root ext4 /
    /dev/root/home ext4 /home

디스크를 GPT로 변환 한 후 리눅스가 부팅되지 않았다고 생각합니다. BIOS는 현재 GPT 디스크에있는 MBR 부팅 Linux 옵션을 보여주지 않았습니다. 이제 설정해야 grub2-efi합니다.

156MB의 EFI 파티션 grub2efi에 설치해야합니다 /dev/sda. 먼저, /bootEFI에 따라 VFAT로 변환 ( "백업, 형식 및 복원 된 파일 읽기") 했습니다. 또한 파티션 유형이 EFI Boot인지 다시 확인했습니다. 루트 파티션에 마운트 & chroot하기 위해 Live openSUSE를 실행했습니다.

# cryptsetup luksOpen /dev/sda2 root
# vgchange -a y suse
# mkdir /mnt/suse
# mount /dev/suse/root /mnt/suse
# mount /dev/suse/home /mnt/suse/home
# mount /dev/sda1 /mnt/suse/boot
# for i in /dev /dev/pts /sys /proc; do mount -B $i /mnt/suse$i; done
# chroot /mnt/suse

YaST Boot Loader 구성으로 시도했지만 나중에 grub2-efi-install결과는 항상 다음과 같습니다. Linux로 EFI 부팅하면 GRUB의 복구 콘솔에 "알 수없는 파일 시스템"오류가 표시됩니다.

현재 파티션 설정은 다음과 같습니다

/dev/sda1 vfat /boot #only this changed
/dev/sda2 LVM
    /dev/root/root ext4 /
    /dev/root/home ext4 /home

간단하게 질문 : grub 부팅을 암호화 된 시스템 파티션으로 만들려면 어떻게해야합니까?

답변:


1

분할 : 솔루션을 찾을 수 /boot

  1. 모든 /boot파일을 백업
  2. /dev/sda1파티션을 제거 했습니다 (제 경우에는 156MB였습니다)
  3. /dev/sda1VFAT로 포맷되고 / boot / efi에 마운트되고 크기가 50MB 인 EFI-boot 파티션 유형 의 새로운 작은 파티션을 만들었습니다.
  4. /dev/sda5방금 생성 /boot/efi한 시스템 파티션 /boot과 ext4 형식으로 마운트 된 시스템 파티션 사이 에 새로운 (YaST가이 번호를 할당하면 sda2 여야 함) 파티션을 생성했습니다.
  5. /boot백업에서 복원 된 파일
  6. sda5대신 grub이 재개되도록 구성sda2
  7. mkinitrdgrub2-efi-install
  8. 재부팅

이제 거의 완벽하게 작동하는 풀 UEFI 랩톱이 있습니다 (Windows는 이미 UEFI에서 부팅 됨). 그럽에는 테마가 없기 때문입니다.

설명 : 왜 별도의 파티션입니까?

UEFI와 GRUB은 매우 엄격합니다. 부트 로더 인 GRUB을 메모리에로드하려면 EFI 암호화되지 않은 파티션이 필요합니다.

암호화 된 시스템 볼륨이 없으면 두 번째 부분을 쉽게 건너 뛸 수 있습니다. 그러나 EFI 파티션은 부트 로더 만 보유하며 커널 과 동일하지 않습니다 . 커널을로드하려면 initrdgrub이로드 한 파일 을 보유하는 암호화되지 않은 또 다른 암호화되지 않은 파티션이 필요합니다 .

개념은 간단합니다. grub은 EFI 파티션에서 시작되고 즉시 파티션에서 initrd를 /boot찾습니다. 결국 시스템 볼륨이 암호화되어 키를 요구합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.