
Mein jüngster Versuch, ein Multi-Boot-System auf meinem Doppel-Disk-Rig zu installieren, schlug fehl, obwohl ich Ubuntu, Linux Mint und Peppermint erfolgreich auf Disk 1 installiert und Grub anschließend aktualisiert hatte. Als ich versuchte, CentOS, openSUSE und Fedora auf Disk 2 zu installieren, stieß ich auf zahlreiche Probleme.
- Nicht genügend Speicherplatz verfügbar. Obwohl ich GParted verwendet hatte, um beide Festplatten für eine Nicht-LVM-Installation zu formatieren, war auf Festplatte 2 kein Betriebssystem vorhanden.
- Die anderen Distributionen werden im Installationsprogramm nicht angezeigt.
- Einhängepunkte werden nicht akzeptiert.
- Eine /boot/efi-Partition war erforderlich und eine GPT-Partitionstabelle wurde angefordert.
- Der Versuch, die Partitionen über das Installationsprogramm zu ändern, stürzte ab.
- Habe LMDE 2 ausprobiert (Debian hat Probleme mit meiner CPU?), obwohl es alle installierten Distributionen gesehen hat (einschließlich des neu installierten CentOS 6.6, um zu überprüfen, ob es an mir lag), wollte es eine /boot/efi-Partition.
Aktionen.
Da ich Probleme mit den neueren RPM-Distributionen hatte, beschloss ich, zuerst CentoS 7 zu installieren, obwohl CentOS 6.6 zuvor problemlos mit meinen alten BIOS-Einstellungen und sudo update-grub lief. Gibt es insbesondere bei openSUSE irgendwelche Hinweise, um meine Chancen auf eine saubere Installation zu verbessern? Ich glaube, ich habe die Eigenheiten von CentOS und Fedora behoben.
- Alles deinstallieren. Für eine Neuinstallation.
- Formatieren Sie beide Festplatten mit GPT neu und erstellen Sie für jede Festplatte zwei mit dem FAT32-Kennzeichen /boot/efi gekennzeichnete Partitionen. Ist das übertrieben oder eine Notwendigkeit?
- Dann habe ich für meine neue manuelle Installation ohne LVM die Partitionen / und /home mit ext4 und einer Linux-Swap-Partition erstellt.
- Überprüfen Sie das BIOS und ändern Sie die Einstellungen von Legacy auf UEFI.
- Installieren Sie CentOS 7, nachdem Sie die Macken des Speicherplatzmangels und der Macken der Einhängepunkte (/boot/efi, dann /home, gefolgt von / und Swap) überwunden haben.
- Führen Sie den Befehl [ -d /sys/firmware/efi ] && echo "Im UEFI-Modus installiert" aus. || echo "Im Legacy-Modus installiert" = Im UEFI-Modus installiert.
Da Ubuntu und Ubuntu-basierte Distributionen hauptsächlich auf Debian basieren und systemd derzeit noch nicht implementieren, ist es sehr wahrscheinlich, dass sie in naher Zukunft nachziehen werden, und ich muss mich jetzt anpassen.
Kettenlader.
Damit habe ich nicht viel Erfahrung, als ich es das letzte Mal probiert habe, hat es sudo update-grub entfernt. Nach einer Websafari habe ich einige konkrete Ausgangspunkte gefunden und die richtigen Begriffe (neu) für CentOS 7 aufgerufen, wobei grub2-mkconfig -o /boot/grub2/grub.cfg sudo update-grub ähnelt. Dann „etc/grub.d/40_custom“, um eine Gedit-Datei zu öffnen, oder so dachte ich zumindest, würde es passieren, um den Menüeintrag #40 zu bearbeiten.
Terminal.
Gebe ich im Terminal meinen Chainloader nach dem #... ein? Ich bin mir beim folgenden Skript nicht sicher und würde mich über eine erfahrene Meinung dazu freuen.
[root@localhost tony]# /etc/grub.d/40_custom
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
[root@localhost tony]#
#DISK 1
#
# for CentOS-7
menuentry "My custom boot entry" {
set root= '(hd0,2)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for openSUSE
"openSUSE-13.2" {
set root='(hd0,5)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for Fedora
"Fedora-22" {
set root='(hd0,8)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
#DISK 2
#
# for Ubuntu
"Ubuntu-14.04.2" {
set root='(hd1,2)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for Linux Mint
"Linuxmint-17.1" {
set root='(hd1,5)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for Peppermint
"Peppermint-Five" {
set root='(hd1,8)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
Zusammenfassung.
Von Legacy- in den UEFI-Modus gewechselt, GPT-Partitionstabellen verwendet, zwei /boot/efi-Partitionen für beide Festplatten erstellt, ist das notwendig? Chainloader, bin mir nicht sicher, brauche Anleitung, um hoffentlich eine problemlose Installation der anderen Distributionen zu ermöglichen, die harmonisch miteinander harmonieren.
Vielen Dank im Voraus für die dringend benötigte Hilfe zu diesem Thema.
Antwort1
Einige Ihrer Probleme, z. B. dass Installationsprogramme die von Ihnen angegebenen Einhängepunkte nicht akzeptieren, sind eindeutig distributionsspezifisch und sollten in Form einzelner Fragen dazu behandelt werden, möglicherweise in distributionsspezifischen Foren.
Zur allgemeinen Frage, wie Sie einen Bootmanager für Ihr komplexes Multi-OS-Setup konfigurieren, rate ich Ihnen zunächst, kein derart komplexes Setup zu erstellen. Wenn möglich, sollten Sie einen Single-Boot durchführen und Virtualisierung (VMWare, VirtualBox, KVM/QEMU usw.) verwenden, um mehrere Betriebssysteme zu verwalten. Dieser Ansatz istvielweniger Aufwand, als zu versuchen, ein halbes Dutzend verschiedener Betriebssysteme auf einem Computer zu verwalten.
Wenn dumussWenn Sie so viele Betriebssysteme gleichzeitig booten möchten, ist GRUB meiner Meinung nach eine schreckliche Lösung. Es erfordert eine komplexe Betriebssystemerkennungslogik in den Setup-Skripten. Die Setup-Skripte einer beliebigen Distribution kommen mit dieser Distribution ziemlich gut zurecht, sind bei anderen Distributionen jedoch viel unsicherer. Stattdessen sollten Sie die Verwendung eines anderen EFI-Bootmanagers in Betracht ziehen. Es gibt mehrere davon, wie aufdiese Seitevon mir. Die meisten erfordern eine manuelle Konfiguration, aber diese Konfiguration ist viel einfacher als die Anpassungen, die erforderlich sind, um GRUB zum Laufen zu bringen. Meine eigenerEFIndist für Sie wahrscheinlich am einfachsten einzurichten, da es bei jedem Start nach Bootloadern und Linux-Kerneln sucht. Sie benötigen /boot/refind_linux.conf
für die meisten Ihrer Installationen möglicherweise eine Datei und müssen sorgfältig auf die Dateisysteme achten, auf denen Sie Ihre Kernel speichern, und sicherstellen, dass Sie EFI-Dateisystemtreiber für sie installieren. rEFInd bootet jedoch wahrscheinlich die meisten oder alle Ihrer Distributionen ohne viel Aufwand und Sie müssen die Konfiguration nicht anpassen, wenn Sie Ihren Kernel in einer bestimmten Distribution ändern.