Debian 9.9를 설치할 때 EFI의 올바른 위치

Debian 9.9를 설치할 때 EFI의 올바른 위치

나는 Debian 9.9를 설치하려고 합니다. 8GB RAM이 있는 1TB 하드 디스크에 이 레이아웃을 원합니다.

Size              Name / Mounted at
512 MB            EFI System Partition
40 GB             /
8GB               /swap
Remaining space   /home

인터넷에서 사람들은 /boot 또는 /boot/efi에 마운트된 EFI 파티션을 사용하고 있습니다.

데비안 9에서는 /boot가 FAT32가 되는 것을 허용하지 않으므로 /boot를 사용할 수 없습니다. /boot/efi도 같은 이유로 옵션이 아니라고 생각하는 것이 맞습니까?

GRUB2가 포함된 /grub 폴더가 있어야 할 이유가 있나요? 자체적으로 EFI 시스템 파티션에 GRUB2를 설치하지 않습니까?

대체 파티션 구성표(즉, /boot, /boot/efi의 EFI 또는 /grub에 설치된 GRUB2)의 이점은 무엇입니까?

답변1

EFI 파티션의 표준 위치(적어도 Debian의 경우)는 입니다 /boot/efi. 이것은 다음과 같습니다.해야한다FAT32 파티션.

표준 Debian Grub EFI 레이아웃에서 grub은 세 부분으로 구성됩니다:

  1. /boot/efi
    마운트된 EFI 파티션
    에는 stub grub 부트로더 및 구성이 포함되어 있습니다.
  2. /boot/grub
    동일한 파티션 /boot 또는 /
    grub 모듈 및 실제 grub 구성 포함
  3. /etc/grub.d
    동일한 파티션 /
    자동 구성 스크립트 포함

Grub은 EFI에 완전히 설치되지 않으며, 그 중 상당 부분이 다른 곳에 있습니다. 따라서 부팅하려면 여전히 /boot/grub. 나머지 부분을 가리키도록 스텁 및 스텁 구성만 설치합니다. 일반적인 EFI 스텁 구성은 다음과 같습니다( /boot/efi/EFI/debian/grub.cfg).

search.fs_uuid 2c675303-d207-4573-98f5-59a33c9890ab root hd0,gpt3
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg

이 구성이 grub에게 실제 구성을 찾을 수 있는 위치( /boot/grub/grub.cfg하드 디스크 0 파티션 3에 있음)만 알려주는 방법에 유의하세요.

또한 구성이 주로 /boot/grub에 저장되어 있더라도 이를 수동으로 편집할 수 없으며 grub 스크립트에 편집을 요청해야 합니다. 따라서 grub을 재구성하려면(단지 새 커널을 추가하기 위해서라도) /etc/grub.d. 이 디렉토리의 스크립트는 데비안이 설치한 다른 라이브러리에 의존할 수 있습니다.


따라서 다음 두 가지 이유로 /boot/grub을 유지해야 합니다.

  1. 여기에는 실제 구성 및 grub 모듈이 포함되어 있습니다.
  2. 자동 구성 스크립트가 새 구성을 작성할 위치를 알 수 있도록 합니다.

정말로 EFI로 전환하고 싶다면 /boot/grub... (비표준)

실제로 당신을 막을 수 있는 것은 아무것도 없습니다. 스크립트가 /etc/grub.d어디서 찾을 수 있는지 확인하세요(예: 심볼릭 링크 남겨두기).

나는 난해한 이유로 이전에 이 작업을 수행한 적이 있습니다. 두 개의 디렉토리 EFIgrub. 나는 이것을 다음과 같이 설정했습니다.

# Move /boot/grub onto my EFI partition
mv /boot/grub /boot/efi

# Leave a symbolic link from the old location to the new location
ln -s /boot/efi/grub /boot/grub

# Update the stub config /boot/efi/EFI/debian/grub.cfg to point to the new location
grub-install

# For safety update the contents of /boot/efi/grub aka /boot/grub
update-grub

저는 실제로 이 설정을 좋아합니다. 사람들이 OS를 삭제하고 grub을 파괴하고 다른 OS가 부팅되는 것을 방지하는 실수를 여기에서 여러 번 방지할 수 있기 때문입니다.


분할 이유

파티셔닝에는 여러 가지 목적이 있습니다. 부트로더의 부분 분할과 관련하여 이는 시스템의 다양한 부분의 다양한 기능을 처리하는 데 유용합니다.

  • BIOS는 FAT 기반 파일 시스템만 읽을 수 있습니다.
  • Grub은 파일 시스템을 꽤 잘 지원하지만 LVM과 암호화된 볼륨이 문제가 될 수 있습니다.
  • 리눅스는 모든 것을 읽을 수 있습니다
  • 오래된Grub Legacy는 매우 큰 디스크나 파티션을 읽을 수 없습니다.

BIOS는 grub을 로드하고 실행할 수 있어야 하므로 EFI는 FAT 기반 파일 시스템에 있어야 합니다.

마스터 파티션은 grub이 읽을 수 없는 곳에 있을 수 있지만 grub은 커널, Initramfs 및 자체 구성에 액세스해야 하므로 /boot 및 /boot/grub은 grub이 읽을 수 있는 파티션에 있어야 합니다. 그럽 레거시 시절에는 이 파티션이 충분히 작고 매우 작은 디스크의 드라이브 시작 부분에 가까웠는지 확인해야 했습니다.

Linux는 모든 것을 읽을 수 있지만 Linux가 LVM 또는 암호화된 볼륨에서 실행되기를 원할 수도 있습니다.

관련 정보