Bunun partiye biraz geç kaldığını fark ettim, ancak üç eşzamanlı kurulum ve bir /boot
bölüm tutmak için bunu sürdürdüm:
- arch linux
- Ubuntu 14.04
- Ubuntu 16.04
Ben yıllardır arch kullandım, ancak ubuntu ile pek aşina değildim ve bir bootloader yüklemesini nasıl durduracağından emin değildim, ben de izin verdim. Kemer için kullanıyorum syslinux
, bu grub
yüzden daha fazla aşina değilim. Bu, denememde biraz erken olsa da , işte prosedürüm:
- potansiyel olarak çakışan dosyaları tanımlar. Ubuntu ve arch'ın adlandırma kurallarını belirttikten sonra, bu 14.04 ve 16.04'lere düştü
vmlinuz
ve ininrd.img
bunlar aynı adlandı (farklı zamanlarda güncelleme yaparlarsa sürüm numarasının dışında). Hepsi için uyumlu olduklarını biliyorum, ama onlara öyle davranmamayı seçtim.
syslinux
her dağıtım için girişler oluşturarak her zamanki gibi kurulum yapın (aşağıda gösterilmiştir)
- Potansiyel olarak çelişen dağıtımlardan herhangi birinin güncellenmesi durumunda, sorunlardan kaçınmak için bir adlandırma stratejisi uygulayın
- bir yedekleme planına sahip olmak
Her iki ubuntu çekirdeği güncellerse, iki anahtar dosya alırım:
/boot/initrd.img-x.x.x-xx-generic
/boot/vmlinuz-x.x.x-xx-generic
Yukarıdakilerin her biri için, sadece sonuna _distro
eklerim, ayrıca syslinux.cfg
her güncellememi değiştirmemek için statik olarak adlandırılmış bir değişkeni değiştiririm (aşağıda daha fazla gösterilmiştir). İşlem, örnek olarak 14.04 / Trusty kullanarak ve sadece ilgilenilen dosyaları gösteren bu şekilde görünür.
$ cd /boot
$ sudo mv ./initrd.img-4.4.0-62-generic ./initrd.img-4.4.0-62-generic_trusty
$ sudo cp ./initrd.img-4.4.0-62-generic_trusty ./initrd-trusty.img
$ sudo mv ./vmlinuz-4.4.0-62-generic ./vmlinuz-4.4.0-62-generic_trusty
$ sudo cp ./vmlinuz-4.4.0-62-generic_trusty vmlinuz-trusty
Arch adlandırma kuralı asla çatışan beri, bu şimdiye 2 yedekleme / doğru adlandırılmış ile bitirmek anlamına gelir initrd
ve vmlinuz
benim değiştirmesini tutmak için kullanabileceğim ikisiyle birlikte dosyaların syslinux.cfg
her zaman. Anahtar dosyalar şöyledir (yorum eklenmiş olarak):
$ ls /boot/
initramfs-linux.img ## arch main initramfs
initramfs-linux-fallback.img ## arch fallback initramfs
initrd.img-4.4.0-62-generic_trusty ## named recent 14.04 initrd
initrd.img-4.4.0-62-generic_xenial ## same for xenial (16.04)
initrd-trusty.img ## statically named initrd
initrd-xenial.img
vmlinuz-4.4.0-62-generic_trusty ## named vmlinuz
vmlinuz-4.4.0-62-generic_xenial
vmlinuz-linux ## arch's vmlinuz
vmlinuz-trusty ## statically named vmlinuz
vmlinuz-xenial
Önyükleme için, işte syslinux
girişlerim:
LABEL arch
MENU LABEL arch
LINUX ../vmlinuz-linux
APPEND luks-options-here rootflags=compress=lzo,discard,ssd,subvol=arch rw
INITRD ../intel-ucode.img,../initramfs-linux.img
LABEL xenial
MENU LABEL xenial
LINUX ../vmlinuz-xenial
APPEND luks-options-here ro rootflags=compress=lzo,discard,ssd,subvol=xenial quiet splash $vt_handoff
INITRD ../initrd-xenial.img
LABEL trusty
MENU LABEL trusty
LINUX ../vmlinuz-trusty
APPEND luks-options-here ro rootflags=compress=lzo,discard,ssd,subvol=trusty quiet $vt_handoff
INITRD ../initrd-trusty.img
Şimdiye kadar grub
ubuntus'tan ayrıldım ve her güncellemede şikayet ediyor, ancak hiçbir şey ters gitmedi. Benim yedek plan kopyalamak oldu mbr.bin
için /boot/
(genellikle İçinde bulunduğu /usr/lib/syslinux...
kemer üzerine) böylece eğer grub
ben en azından can benim açılış üzerine karar geri bootloader. % 95 + kemer kurulumumun asla rahatsız edilmeyeceğinden eminim (en azından önyüklemek için), bu yüzden hemen hemen her zaman buna önyükleyebilirim ve ubuntusu yanlış bir şekilde kopyalarsam / adlandırırsam düzeltebilirim. Muhtemelen her birinin eski bir sürümünü tutacağım, böylece işlem sırasında bir sorun çıkarsa hangisinin açılışta yükleneceğini değiştirebilirim .dd
syslinux
initrd/vmlinuz
initramfs
Umarım olan biten şey budur. Muhtemelen, otomatikleştirmek için henüz bağlantılar almadıysam, bir çeşit güncelleme sonrası komut dosyası vb. Kullanabilirdim.
Kabul edilen cevap, işlerin yanlış gidebileceğini ortaya koyuyor, ancak bunu yapan başkalarının örnekleri için etrafa dolandığımdan ve sadece bu gibi cevaplar bulduğumdan (temelde "mümkün, ama yapma"), somut bir örnek ekleyeceğimi düşündüm. böyle bir şeyi nasıl kurardık.
Şahsen ben bu konuda oldukça heyecanlıyım. Bir önyükleme bölümüm var ve sizin de fark ettiğiniz gibi, bir btrfs
bölümden üçe yan yana dağıtım yapın . Önceden tahsis etmeye gerek yok, bir kurulumdan hoşlanmama ve dağıtma konusunda endişelenmenize gerek yok (çevresinde kullanılmayan bir bölme bırakarak) ve zaten sahipken bir linux bölümünü başlatmak için bir sürü mantıksal hacme gerek yok bootloader!
Umarım bu birine yardımcı olur.
apt-get dist-upgrade
veapt-get autoremove
) yapabilir ve bir dağıtımın artık gerekmediğine inanabileceği dosyayı silebilirsiniz.