btrfs RAID5 / 6에서 부팅 하시겠습니까?


0

btrfs RAID5 / 6 루트를 사용하여 Arch Linux 시스템을 구축하려고합니다. 볼륨 디스크 중 하나에 GRUB을 설치하면 시작시 다음과 같은 메시지가 인쇄됩니다.

error: no such device: [my btrfs volume uuid]

… 그런 다음 복구 쉘로 덤프합니다. ls (hdX)( X볼륨의 물리 디스크 중 하나 인 곳 )을 입력 하면 다음과 같은 오류 텍스트가 인쇄됩니다.

Unsupported raid flags 82

몇몇 포럼 스레드는 GRUB이 현재 이러한 종류의 btrfs 볼륨을 지원하지 않는다고 제안합니다. 그래서 다음 생각은 별도의 ext4 포맷 부팅 드라이브를 만드는 것이 었습니다. 나는 아치 라이브 CD에서 시작하고 이것을했다 :

$ mount /dev/sdb /mnt # one of the btrfs RAID5 disks
$ arch-chroot /mnt/root /bin/bash
$ mkfs.ext4 /dev/sdi # our new boot disk
$ mount /dev/sdi /mnt # /mnt inside the chroot
$ grub-install --target=i386-pc --root-directory=/mnt /dev/sdi
$ grub-mkconfig -o /mnt/boot/grub/grub.cfg
$ umount /mnt
$ exit # …the chroot
$ reboot # …and switch the boot drive in BIOS settings

GRUB에 성공적으로 착륙했지만 메뉴 시간 초과 후 다음 메시지가 표시되었습니다.

error: no such device: [my btrfs volume uuid]
Loading Linux linux ...
error: hd6 cannot get C/H/S values.
Loading initial ramdisk ...
error: you need to load the kernel first.

Press any key to continue...

… 그럼 GRUB 메뉴에 다시 버려졌습니다. 두 가지 질문에 대한 답을 찾으려고합니다.

  1. 부트 스트랩 볼륨을 만드는 데 문제가 있습니까?
  2. btrfs RAID에서 시스템을 부팅하는 또 다른 더 좋은 방법이 있습니까?

별도의 부팅 파티션 (BIOS)을 사용하거나 모든 부팅 항목을 esp 파티션 (EFI)에 넣을 수 있습니다.
whoKnows

답변:


1

내 홈 서버의 젠투는 다음과 같이 만든 단일 드라이브 Btrfs에서 부팅합니다 (사용자 정의 옵션은 관련이 없어야하며 전체 설치에는 분명히 관련 라인 사이에 더 많은 단계가 필요합니다).

mkfs.btrfs -f -s 4k -n 4k -O extref,skinny-metadata,no-holes /dev/sda
grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

그리고 다음 fstab 항목이 있습니다.

/dev/sda   /            btrfs    noatime,autodefrag              0 0
/dev/sdb   /            btrfs    noatime,autodefrag              0 0

사용자 데이터는 3x4Tb 드라이브 (sdb, sdc, sdd)로 구성된 RAID5 Btrfs 파일 시스템에 저장됩니다.

시스템 루트를 대형 RAID5 파일 시스템으로 옮기고 싶을 때 한 번에 두 가지 제한 사항에 도달 할 수 있다고 생각합니다.

  • GRUB2 (2.02_beta3 현재)는 Btrfs RAID5를 지원하지 않는 것 같습니다 (20Gb 가상 드라이버가있는 가상 머신에서 시도했지만 동일한 오류가 발생했습니다)
  • EFI 부팅에는 부트 로더에 GPT 파티셔닝과 FAT16 또는 FAT32 파일 시스템이 필요하지만 레거시 BIOS 부팅에는 MBR에 의해 지정된 <= 2Tb 공간이 필요합니다. MBR의 관점에서 볼 때 드라이브의 전체 LBA 공간은 기술적으로 단일 기본 파티션이므로 파일 시스템의 "MBR 구멍"에 BIOS를 GRUB으로 만들기 위해 표준 MBR이 여전히 있다고 생각하기 때문에 실제 파티션이없는 경우에도 볼륨이 증가합니다.) . 그럼에도 불구하고 위의 테스트가 실패한 후에 VM에서 이것을 테스트하려고 시도하지 않았습니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.