Btrfs RAID5 / 6'dan önyükleme?


0

Btrfs RAID5 / 6 köklü bir Arch Linux sistemi kurmaya çalışıyorum. GRUB'u birimin disklerinden birine kurduğumda, başlangıçta şöyle bir mesaj yazdırıyor:

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

… Ve sonra beni bir kurtarma kabuğuna attı. Yazarsam ls (hdX)( Xbirimin fiziksel disklerinden biri nerede varsa , bunun da dahil olduğu bazı hata metinlerini yazdırır:

Unsupported raid flags 82

Birkaç forum konusu GRUB'un şu anda bu tür btrfs hacimlerini desteklemediğini gösteriyor. Bu yüzden bir sonraki düşüncem, ext4 formatlı ayrı bir önyükleme sürücüsü oluşturmaktı. Bir Arch canlı CD'sinden başladım ve şunu yaptım:

$ 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

Başarıyla GRUB'a inmiştim, ancak menü zaman aşımından sonra şu mesajları aldım:

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...

… Sonra GRUB menüsüne geri döndüm. İki sorunun cevabını bulmaya çalışıyorum:

  1. Önyükleme sesimi oluştururken yanlış bir şey mi yapıyorum?
  2. Sistemimi btrfs RAID'den başlatmanın daha iyi bir yolu var mı?

Ayrı bir önyükleme bölümü (BIOS) kullanmayı veya tüm önyükleme öğelerinizi esp bölümünüze (EFI) yerleştirmeyi deneyebilirsiniz.
30'da

Yanıtlar:


1

Ev sunucumdaki Gentoo böyle oluşturduğum tek sürücülü Btrfs'lerden önyükleme yapıyor (özel seçeneklerin alakasız olması ve tüm kurulumun açıkça bu ilgili satırlar arasında daha fazla adım gerektirmesi gerekiyor):

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

ve bu fstab girişlerine sahiptir:

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

Kullanıcı verileri, 3x4Tb sürücülerden (sdb, sdc, sdd) oluşan bir RAID5 Btrfs dosya sisteminde depolanır.

Sistem kökünü büyük RAID5 dosya sistemine taşımak istediğimde aynı anda iki sınırlama getirebileceğimi düşünüyorum:

  • GRUB2 (2.02_beta3 itibariyle) Btrfs RAID5'i desteklemiyor gibi görünüyor (20 Gb sanal sürücüleri olan sanal bir makinede denedim ve yaptığınız gibi aynı hataları yaptım)
  • EFI önyüklemesi, önyükleyici için GPT bölümlemesi ve FAT16 veya FAT32 dosya sistemi gerektirir; eski BIOS önyüklemesi MBR tarafından adreslenmiş <= 2Tb alan gerektiriyor (bu [uygulanabilir geçici çözümler olabilir] için tam olarak emin değilim, ancak> 2Tb sürücüleri için geçerli olduğunu düşünüyorum / MBR'nin bakış açısına göre sürücüdeki tüm LBA alanımız teknik olarak tek bir temel bölüm olduğu için gerçek bölümlere sahip olmasak bile birimler var ve bence BIOS'un GRUB'unu yapmak için dosya sisteminin "MBR deliğinde" standart bir MBR olduğunu düşünüyoruz) . Bununla birlikte, yukarıdaki testim yine de başarısız olduktan sonra bunu bir VM'de test etmeyi denemedim.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.