여러 Linux 운영 체제 설치를 위해 별도의 /boot 파티션을 만들어야 합니까?

여러 Linux 운영 체제 설치를 위해 별도의 /boot 파티션을 만들어야 합니까?

여러 Linux 운영 체제 설치를 위해 별도의 /boot 파티션을 만들어야 합니까?

답변1

오늘날 주요 Linux 배포판에는 별도의 /boot 파티션이 필요하지 않습니다(심지어 문제가 발생할 수도 있음). 단일 부팅 파티션에서 여러 Linux 설치를 실행하려고 하면 부팅 문제가 발생할 가능성이 높습니다. 가장 좋은 방법은 모든 Linux에 대해 스왑 파티션을 할당한 다음 각 설치마다 ext3/4/BTRFS/어떤 파티션을 할당하는 것입니다. 특별한 이유가 없는 한 각 Linux 설치뿐만 아니라 모든 시스템을 여기에 배치합니다. 그래서 사용자 파일. 필요에 따라 별도의 데이터 파티션/드라이브를 보유하고 필요에 따라 각 운영 체제에 설치할 수 있습니다.

답변2

각 Linux마다 별도의 /boot 파티션이 필요합니까?

모든 배포판은 이것이 /boot( yum, apt, ...를 통해)를 수정하는 유일한 것이라고 가정합니다. 여러 배포판에서 동일한 콘텐츠를 관리하지 마세요./boot 목차(분할). 시스템 업그레이드는 이를 위해 효과적으로 경쟁할 것입니다.

/boot 전용 파티션을 지정하는 경우 각 배포판에는 일반적으로 자체 파티션이 필요합니다.

/부팅이 무엇인가요?

이해하기 어려운 주제이므로 주의해서 읽어주세요.. /boot 디렉토리는 브리지 역할을 하여 실행 중인 운영 체제가 부트 로더의 구성을 읽고 쓸 수 있게 해줍니다. 런타임 중에는 다른 용도로 사용되지 않습니다.

/boot 디렉토리는 부트로더의 구성과 플러그인은 물론 커널과 initramfs를 저장하는 공간입니다.

시스템을 부팅하면 컴퓨터의 펌웨어가 /boot를 읽고 구성을 로드하는 부트로더를 시작합니다. 그런 다음 필요한 커널 및 initramfs 파일을 로드합니다.

실제로 대부분의 일반적인 상황에서 Linux에 이를 설치하는 유일한 이유는 시스템 업그레이드 도구( yum,, apt...로 호출)가 새 커널 등을 설치할 수 있도록 이 도구가 있을 것으로 예상할 수 있다는 것입니다. 이러한 도구는 매우 유연하지 않습니다. /boot 디렉토리 없이 실행하는 것을 권장하지 않습니다.

/boot에는 자체 파티션이 필요합니까?

종종 그렇지 않습니다. /boot를 자체 파티션에 두는 좋은 이유는 시스템 루트 /가 부트 로더가 읽을 수 없거나 잘 읽을 수 없는 위치에 저장될 수 있기 때문입니다.

용감한 느낌?

실제로 /boot를 공유할 수 있는 메커니즘은 두 가지가 있습니다. 그러나 나는 어느 쪽이든 바람직하다고 제안하는 것이 아닙니다.

단 하나의 Linux 설치 커널과 부트로더

Linux 커널은 놀랍게도 여러 배포판에서 호환됩니다. 최소한 메이저 버전과 같은 버전이 있는 사용자는 가능합니다. 따라서 부트로더나 커널을 설치하지 않고도 배포판을 가질 수 있습니다. 이러한 설정은 /boot를 수정하려고 시도해서는 안 되며, 이로 인해 유용한 내용이 입력되지 않습니다.

따라서 하나의 Linux가 다른 Linux의 모든 부팅 항목을 관리하고 그들 간에 커널을 공유하도록 할 수 있습니다.

하위 디렉토리

사람들은 일반적으로 이것을 생각하지 않지만 /boot에 무언가를 바인드 마운트하는 것은 꽤 안전합니다. 이 메커니즘을 사용하면 각 설치마다 다른 이름의 부팅 디렉터리가 포함된 파티션을 만들 수 있습니다.

당신의 /etc/fstab모습은 다음과 같습니다:

# Mount the boot partition
UUID=cb015492-4ca4-4fae-a416-6d89443e4680 /media/boot           ext4    defaults        0       2
# Bind mount the desired 
/media/boot/ubuntu-jammy-boot /boot none bind 0 0

grub-install지난번에 이것을 확인했을 때 EFI의 배열이 이해되었고 grub이 올바르게 구성된 것처럼 보였습니다 . grub.cfg예를 들어: /boot/efi/EFI/ubuntu/grub.cfg. 그렇지 않은 경우 이 파일의 구성 줄을 수동으로 일괄 처리할 수 있습니다.

set prefix=($root)'/ubuntu-jammy-boot/grub'

답변3

파티셔닝을 하는 이유는 두 가지입니다 /boot.

  • BIOS는 대용량 디스크의 어떤 섹터에도 액세스할 수 없습니다.
  • 에 대한 부트로더를 로드할 수 없습니다 /.

나는 첫 번째 이유가 오늘날의 시스템에 맞지 않다고 생각합니다. Grub2를 사용하면 LVM 또는 Btrfs와 같은 것도 첫 번째 단계에서 로드할 수 있습니다(파일 시스템 외부의 첫 번째 섹터 포함).

그러나 2022년에 단일 볼륨 Debian 설치에 실패했습니다 / + /boot. 클라우드 서버에 있고 무슨 일이 일어나고 있는지 분석할 방법이 많지 않습니다(내 보기에는 표시되지 않습니다).

관련 정보