Bislang habe ich mich ja immer darum gedrückt, GRUB, den derzeit wohl beliebtesten OSS-Bootloader, zu konfigurieren. Stattdessen habe ich von der jeweiligen Distribution mitglieferte Automatismen benutzt.
Warum? Weil GRUB nach meinem Empfindem so unglaublich schlecht dokumentiert ist, dass es einfach keinen Spaß macht, sich damit auseinderzusetzen. Ich demonstriere das mal anhand eines Zitates aus dem
Online Manual von GRUB:
4.1.1 How to boot an OS directly with GRUB
Multiboot (see Multiboot Specification) is the native format supported by GRUB. For the sake of convenience, there is also support for Linux, FreeBSD, NetBSD and OpenBSD. If you want to boot other operating systems, you will have to chain-load them (see Chain-loading).
Zwei Vorwärtsreferenzen in einem Absatz von 3 Zeilen Länge, und das ist in dem Dokument der Normalfall! Da kräuseln sich doch die Zehennägel, und so rechte Lust, sich mit dem Thema weiter zu befassen, kommt wirklich nicht auf.
Dabei wäre es doch so schwer nicht, einfach mal so was zu schreiben:
Um GRUB auf einem üblichen Mehrfachboot-System zu installieren und benutzen zu können, muss man es im Bootsector der Festplatte installieren. Dazu kompiliert man es (configure, make, make install) und ruft das Skript "grub-install" auf.
Im Verzeichnis /boot/grub/ auf dem System, auf dem grub-install aufgerufen wurde, legt man (davor oder danach, aber unbedingt vor dem nächsten Reboot) eine Datei mit Namen "menu.lst" an. Das Format dieser Datei entnimmt man einer Beispieldatei, wie sie ja auch mitgeliefert wird. Diese Datei wird von GRUB jedesmal, wenn das System bootet, ausgelesen, um aktuelle Informationen über die zu bootenden Betriebssysteme zu erhalten und im Bootmenu präsentieren zu können.
Es ist also nicht erforderlich, etwa wie bei LILO den Inhalt einer Datei durch Aufrufen eines Programms direkt in den Bootsektor zu schreiben, sondern GRUB liest diese "dynamisch" ein, und das heißt konkret: Bei einem neuen Kernel muss nur /boot/grub/menu.lst um einen Eintrag ergänzt werden, der auf den Kernel verweist, und das war's.
Wäre so in fünf Minuten nachzulesen. Mit den derzeitigen Dokus braucht man aber eine halbe Stunde oder mehr. Das ist doch unnötig und ärgerlich.