home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 May / Chip_2000-05_cd2.bin / docu / ascii / suselxde / slxde-04.txt < prev    next >
Text File  |  2000-02-29  |  87KB  |  1,740 lines

  1.                                                                           Kapitel 4
  2.                       Booten und Bootmanager ¡
  3.                                              LILO, loadlin etc.
  4.  
  5. In diesem Kapitel sollen verschiedene Methoden vorgestellt werden, wie sich
  6. das fertig installierte System  booten lΣsst. Um das VerstΣndnis der einzel-
  7. nen Methoden zu erleichtern, werden zunΣchst einige technische Details des
  8. Bootprozesses auf PCs erlΣutert.
  9.  
  10.  
  11.  
  12. 4.1 Der Bootvorgang auf dem PC
  13.  
  14. Nach dem Einschalten des Rechners werden vom  BIOS (engl. Basic Input
  15. Output System) Bildschirm und Tastatur initialisiert sowie der Hauptspeicher
  16. getestet. Bis zu diesem Zeitpunkt existieren noch keine Massenspeicherme-
  17. dien in der Welt Ihres PCs!
  18.  
  19. Nachdem das Rumpfsystem seine  Innenschau" beendet hat, kann es sich
  20. der Erkundung der ⁿbrigen Welt widmen. Informationen ⁿber aktuelles Da-
  21. tum, Zeit und eine Auswahl der wichtigsten Peripherie-GerΣte werden aus
  22. den CMOS-Werten (CMOS setup) ausgelesen. Da nun die erste Festplatte
  23. einschlie▀lich ihrer Geometrie bekannt sein sollte, kann das Laden des Be-
  24. triebssystems von dort beginnen.
  25.  
  26. Dazu wird von der ersten Festplatte der physikalisch erste Datensektor von
  27. 512 Byte Gr÷▀e in den Speicher geladen, und die Programmkontrolle geht
  28. auf das ProgrΣmmchen zu Beginn dieses Sektors ⁿber. Die Abfolge der auf
  29. diese Weise ausgefⁿhrten Anweisungen bestimmt den weiteren Ablauf des
  30. Bootvorgangs. Die ersten 512 Byte auf der ersten Festplatte werden deshalb
  31. auch als Master Boot Record ( MBR) bezeichnet.
  32.  
  33. Die ZusammenhΣnge ¡ wenngleich hier nur sehr verkⁿrzt und vereinfacht
  34. wiedergegeben ¡ erlauben bereits zwei fⁿr das VerstΣndnis des Folgenden
  35. wichtige Beobachtungen: Bis zu diesem Zeitpunkt (Laden des MBR) lΣuft
  36. der Bootvorgang v÷llig unabhΣngig vom installierten System auf jedem PC
  37. immer gleich ab, und der PC hat bis dahin zum Zugriff auf die Peripherie
  38. lediglich die im BIOS gespeicherten Routinen (Treiber) zur Verfⁿgung.
  39.  
  40.                                                                                  115
  41.  
  42.  
  43.  
  44. 4. Booten und Bootmanager
  45.  
  46.                Master Boot Record
  47.                Die Struktur des MBR ist durch eine betriebssystemⁿbergreifende Konven-
  48.                tion festgelegt. Die ersten 446 Byte sind fⁿr Programmcode reserviert.1 Die
  49.                nΣchsten 64 Byte bieten Platz fⁿr eine Partitionstabelle mit bis zu vier EintrΣ-
  50.                gen (vgl. Abschnitt 2.8 auf Seite 67 und Abschnitt 2.9 auf Seite 68).2 Die letz-
  51.                ten 2 Byte mⁿssen eine feste  magische Zahl" (AA55) enthalten: ein MBR,
  52.                der dort etwas anderes stehen hat, wird vom BIOS und von allen PC-Betriebs-
  53.                systemen als ungⁿltig angesehen.
  54.  
  55.                Bootsektoren
  56.                Bootsektoren sind die jeweils ersten Sektoren der Festplatten-Partitionen.3
  57.                Sie bieten 512 Byte Platz und sind dazu gedacht, Code aufzunehmen, der
  58.                ein auf dieser Partition befindliches Betriebssystem starten kann. Die Boot-
  59.                sektoren formatierter DOS-, Windows- oder OS/2-Partitionen tun das auch
  60.                stets (und enthalten zusΣtzlich noch wichtige Grunddaten des Dateisystems).
  61.                Im Gegensatz dazu sind Bootsektoren von Linux-Partitionen ¡ auch nach der
  62.                Anlage eines Dateisystems ¡ von Hause aus erst einmal leer (!). Eine Linux-
  63.                Partition ist daher nicht von selbst startbar, auch wenn sie einen Kernel und
  64.                ein gⁿltiges Root-Dateisystem enthΣlt.
  65.                Ein Bootsektor mit gⁿltigem Systemstart-Code trΣgt in den letzten 2 Byte
  66.                dieselbe  magische" Kennung wie der MBR.
  67.  
  68.                Booten von DOS oder Windows 95/98
  69.                Im DOS-MBR der ersten Festplatte ist ein Partitionseintrag als aktiv (engl.
  70.                bootable) gekennzeichnet, was hei▀t, dass dort nach dem zu ladenden System
  71.                gesucht werden soll.4 Der DOS-Programmcode im MBR ist die erste Stufe
  72.                des Bootloaders (engl. first stage bootloader) und ⁿberprⁿft, ob auf der ange-
  73.                gebenen Partition ein gⁿltiger Bootsektor vorhanden ist.
  74.                Falls dies der Fall ist, kann der Code in diesem Bootsektor als  zweite Stufe"
  75.                des Bootloaders (engl. secondary stage loader) nachgestartet werden. Dieser
  76.                lΣdt nun die Systemprogramme, und schlie▀lich erscheint der gewohnte DOS-
  77.                Prompt bzw. es startet die Windows 95/98-OberflΣche.
  78.                Unter DOS lΣsst sich nur eine einzige primΣre Partition als aktiv markieren.
  79.                Folglich kann das DOS-System nicht auf logischen Laufwerken in einer er-
  80.                weiterten Partition untergebracht werden.
  81.  
  82.                4.2 Bootkonzepte
  83.                Das einfachste  Bootkonzept" betrifft einen Rechner mit einem einzigen
  84.                Betriebssystem. Eine verbreitete solche Konfiguration ist DOS oder Win-
  85.                1 Der Code selbst ¡ und seine FΣhigkeiten ¡ hΣngen allerdings sehr wohl von dem Betriebssystem
  86.                ab, unter dem der MBR angelegt wurde!
  87.                2 Ohne die Partitionstabelle gibt es keine Dateisysteme (MS-DOS: Laufwerke), d. h. die Fest-
  88.                platte ist praktisch nicht zu verwenden.
  89.                3 Ausgenommen die erweiterte Partition, die nur ein  BehΣlter" fⁿr andere Partitionen ist.
  90.                4 Dies bedeutet insbesondere, dass DOS zwingend auf der ersten Festplatte installiert sein muss.
  91.  
  92. 116
  93.  
  94.  
  95.  
  96.                                                                                 4.2. Bootkonzepte
  97.  
  98. dows 95/98 als ausschlie▀liches Betriebssystem auf dem Rechner. Die Ab-
  99. lΣufe in der Startphase in diesem Fall haben wir soeben geschildert.
  100. Ein solcher Bootvorgang ist auch fⁿr einen Nur-Linux-Rechner denkbar.
  101. Dann kann theoretisch auf die Installation von LILO verzichtet werden. Bei
  102. einem solchen Szenario wΣre es allerdings nicht m÷glich, dem Kernel wΣh-
  103. rend des Startens eine Kommandozeile (mit Spezialwⁿnschen zum Startvor-
  104. gang, zusΣtzlichen Hardware-Informationen usw.) mitzugeben.
  105. Sobald mehr als ein Betriebssystem auf einem Rechner installiert ist, bieten
  106. sich verschiedene Bootkonzepte an:
  107. ZusΣtzliche Systeme von Diskette booten: Ein Betriebssystem wird von
  108.     Platte geladen, mit Hilfe von Boot-Disketten k÷nnen alternativ weitere
  109.     Betriebssysteme vom Disketten-Laufwerk aus gestartet werden.
  110.     * Bedingung: Ein bootfΣhiges Diskettenlaufwerk ist vorhanden.
  111.     * Beispiel: Sie installieren Linux zusΣtzlich auf Ihrem DOS-, Win-
  112.        dows 95/98- oder OS/2-System und starten Linux stets von Bootdis-
  113.        kette.
  114.     * Vorteil: Sie ersparen sich die doch etwas heikle Bootloader-Installa-
  115.        tion.
  116.     * Nachteile: Sie mⁿssen sehr darauf bedacht sein, einen Sicherheitsvor-
  117.        rat funktionierender Bootdisketten zu haben. Der Start dauert lΣnger.
  118.     * Dass Ihr Linux ohne Bootdiskette nicht starten kann, mag je nach be-
  119.        absichtigtem Einsatz Ihres Rechners ein Nachteil oder Vorteil sein.
  120. ZusΣtzliche Systeme zur Laufzeit nachladen: Ein Betriebssystem wird
  121.     bei jedem Systemstart geladen, weitere k÷nnen von diesem aus optional
  122.     nachgeladen werden.
  123.     * Bedingung: Geeignete Programme zum Nachstarten eines Systems
  124.        sind vorhanden.
  125.     * Beispiele: Das Laden von Linux von DOS aus mit Hilfe des Pro-
  126.        gramms loadlin.exe (vgl. Abschnitt 4.9 auf Seite 139) oder das Hoch-
  127.        fahren eines NetWare-Servers von DOS aus mit server.exe.
  128. Installation eines Bootmanagers: Ein Bootmanager erlaubt, mehrere Sys-
  129.     teme gleichzeitig auf einem Rechner zu halten und sie abwechselnd zu
  130.     nutzen. Der Benutzer wΣhlt das zu ladende System bereits wΣhrend des
  131.     Bootvorgangs aus; ein Wechsel erfordert den Neustart des Rechners.
  132.     * Bedingung: Der gewΣhlte Bootmanager  harmoniert" mit allen Be-
  133.        triebssystemen.
  134.     * Beispiele fⁿr (zumindest unter bestimmten Bedingungen) mit Linux
  135.        harmonierende Bootmanager sind OS/2 (vgl. dazu Abschnitt 4.7.3 auf
  136.        Seite 133) oder der DOS-Bootloader boot.sys.
  137. Im folgenden wird die Installation und Konfiguration von LILO, dem Stan-
  138. dard-Bootmanager fⁿr Linux-Systeme, nΣher erlΣutert ¡ eine grⁿndliche Be-
  139. schreibung der FΣhigkeiten von LILO findet sich in [Alm96]5. Es schlie▀en
  140. sich Ausfⁿhrungen zu loadlin an.
  141. 5 Mit lpr /usr/doc/packages/lilo/user.dvi kann diese Datei auf dem Drucker
  142. ausgegeben werden.
  143.  
  144.                                                                                              117
  145.  
  146.  
  147.  
  148. 4. Booten und Bootmanager
  149.  
  150.                4.3 LILO stellt sich vor: Ein ▄berblick
  151.  
  152.                LILO ¡ Ihr Auftritt!
  153.  
  154.                Der Linux-Bootloader ist fⁿr die Installation im MBR geeignet (Einzelhei-
  155.                ten spΣter auf der nΣchsten Seite und in Abschnitt 4.5 auf Seite 127). LILO
  156.                hat Zugriff auf beide im Real Modus bekannten Festplatten und ist bereits
  157.                von seiner Installation her in der Lage, alle ben÷tigten Daten auf den  rohen"
  158.                Festplatten6, ohne Informationen zur Partitionierung, zu finden. Deshalb las-
  159.                sen sich auch Betriebssysteme von der zweiten Festplatte booten. Die Ein-
  160.                trΣge in der Partitionstabelle werden im Gegensatz zum DOS-Bootvorgang
  161.                ignoriert.
  162.                Der Hauptunterschied zum DOS-Bootvorgang besteht jedoch in der M÷glich-
  163.                keit, beim Booten zwischen dem Laden verschiedener installierter Betriebs-
  164.                systeme ¡ einschlie▀lich Linux ¡ wΣhlen zu k÷nnen. Nach dem Laden des
  165.                MBR in den Speicher wird LILO gestartet; LILO kann nun seinerseits dem
  166.                Benutzer die Auswahl aus einer Liste vorinstallierter Systeme anbieten (siehe
  167.                auf dieser Seite).
  168.  
  169.                Was ist LILO und was kann er?
  170.  
  171.                LILO ist ein vielseitiger Bootmanager. Er kann beim Systemstart folgende
  172.                Systemprogramme laden und starten:
  173.  
  174.                 * Bootsektoren von Partitionen (Start eines Betriebssystems von dieser Par-
  175.                    tition)
  176.                 * Linux-Kernel (Start von Linux)
  177.  
  178.                Das Zweite k÷nnen die meisten anderen Bootmanager nicht.
  179.                Zudem bietet er die wichtige Gelegenheit, dem Linux-Kernel eine Komman-
  180.                dozeile mitzugeben. Zu Sicherheitszwecken k÷nnen die LILO-Dienste ganz
  181.                oder teilweise passwortgeschⁿtzt werden.
  182.  
  183.                Wie sieht das Booten mit LILO aus?
  184.  
  185.                Wenn LILO startet, gibt er den Text LILO und eine Begrⁿ▀ungsmeldung
  186.                aus ¡ letztere haben Sie ihm bei der Konfiguration selbst mitgegeben (vgl.
  187.                Abschnitt 4.4.2 auf Seite 124). Danach erscheint eine Eingabeaufforderung
  188.                (Prompt):
  189.                    boot:
  190.                Hier wΣhlen Sie durch Eingabe eines Namens Ihr gewⁿnschtes Betriebssys-
  191.                tem aus, das dann sofort gestartet wird. Die Namen fⁿr Ihre Betriebssysteme
  192.                haben Sie gleichfalls selbst vorher bei der Konfiguration vergeben. Einem Li-
  193.                nux-Kernel k÷nnen Sie an dieser Stelle eine Kommandozeile mitgeben. Eine
  194.                                                                                      
  195.                Liste aller Namen k÷nnen Sie sich mit  Tab  (= Taste  Tab  
  196.                                                                                         ) anzeigen lassen.
  197.  
  198.                6 Von einem  rohen" DatentrΣger (engl. raw device) spricht man, wenn auf ein BlockgerΣt
  199.                (Festplatte, Partition, Diskette ... ) direkt als einzelne (GerΣte-)Datei zugegriffen wird, nicht
  200.                ⁿber ein darauf angelegtes Dateisystem.
  201.  
  202. 118
  203.  
  204.  
  205.  
  206.                                                                4.3. LILO stellt sich vor: Ein ▄berblick
  207.  
  208. Woraus besteht LILO?
  209.  
  210. Die LILO-Startmaschinerie umfasst die folgenden Bestandteile7:
  211.  
  212.  * einen LILO-Bootsektor mit einem Anfangsstⁿck ( erste Stufe") des LI-
  213.     LO-Codes, das den eigentlichen LILO beim Systemstart aktiviert
  214.  * den LILO-Maschinencode (sein  Herz").
  215.     Standardlokation: /boot/boot.b
  216.  * eine Map-Datei, in der LILO bei seiner Installation eintrΣgt, wo die Li-
  217.     nux-Kernel und sonstigen Daten, die er braucht, zu finden sind.
  218.     Standardlokation: /boot/map
  219.  * optional: eine Message-Datei, deren Inhalt vor der LILO-Bootauswahl
  220.     als Begrⁿ▀ungsbotschaft ausgegeben wird. ▄bliche Lokation:
  221.     /boot/message (oder Σhnlich)
  222.  * die verschiedenen Linux-Kernel und Bootsektoren, die LILO zum Starten
  223.     anbieten soll.
  224.  
  225.  Jeder Schreibzugriff (auch durch Dateiverschiebung) auf eines dieser Be-
  226.  standteile macht die Map-Datei ungⁿltig und daher eine Neu-Installation
  227.  von LILO erforderlich (siehe auf Seite 127)! Dies betrifft vor allem den
  228.  Wechsel zu einem neuen Linux-Kernel.
  229.  
  230. Wo kann LILO installiert werden?
  231.  
  232. Gemeint ist mit dieser Frage in Wirklichkeit meist der LILO-Bootsektor
  233. ( erste Stufe"). Bevor wir darauf eingehen, wollen wir aber gleich hier auf
  234. eine generelle EinschrΣnkung hinweisen:
  235. Dies kann man durch eine kleine Extrapartition erreichen die unter dem Ver-
  236. zeichnis /boot eingehΣngt (gemountet) wird und die komplett innerhalb der
  237. ersten 1024 Zylinder liegt.
  238.  
  239.  Alle Bestandteile der LILO-Startmaschinerie und das Kernelimage
  240.  /boot/vmlinuz mⁿssen bei Festplatten in den ersten 1024 Zylindern
  241.  liegen!
  242.  Dies kann man durch eine kleine Extrapartition erreichen, die unter dem
  243.  Verzeichnis /boot eingehΣngt ( gemountet") wird und die komplett in-
  244.  nerhalb der ersten 1024 Zylinder liegt.
  245.  
  246. Nur diese physikalischen Bereiche sind schon wΣhrend der Systemstartphase
  247. mit den BIOS-Treibern erreichbar. Noch dazu ist man in der Regel auf die
  248. ersten beiden Festplatten eingeschrΣnkt. Wenn Sie ein Σlteres BIOS haben,
  249. gilt m÷glicherweise zudem: das zusΣtzliche Vorhandensein von (E)IDE-Fest-
  250. platten schlie▀t gleichfalls vorhandene SCSI-GerΣte von der BootfΣhigkeit
  251. aus.
  252. 7 ▄brigens: Die von LILO installierten Bootsektoren enthalten eine Byte-Sequenz, die auch fⁿr
  253. Bootsektorviren charakteristisch ist. Daher ist es nicht verwunderlich, wenn DOS-Virenscanner
  254. in Dateien wie /boot/chain.b oder /boot/os2_d.b das AIRCOP-Bootsektor-Virus ge-
  255. funden zu haben glauben. ;-)
  256.  
  257.                                                                                                    119
  258.  
  259.  
  260.  
  261. 4. Booten und Bootmanager
  262.  
  263.                Erst ein neueres BIOS lΣsst in der Regeln den Zugriff auf weitere GerΣte zu:
  264.                so etwa in Verbindung mit EIDE-Festplattencontrollern auf bis zu vier EI-
  265.                DE-Platten. Viele moderne BIOS/SCSI-Hostadapter Kombinationen erlauben
  266.                sogar das  Nach-vorne-Schieben" von SCSI-Platten hinsichtlich der BootfΣ-
  267.                higkeit. Zur Nutzung dieser M÷glichkeit mit LILO vgl. die Beschreibung der
  268.                disk-Option auf Seite 125.
  269.                All das fassen wir der Einfachheit halber unter dem Schlagwort 1024-Zylin-
  270.                der-Grenze zusammen. Sie ist schon bei der Partitionierung Ihrer Festplatten
  271.                vor der Linux-Erstinstallation unbedingt zu berⁿcksichtigen ¡ danach ist es
  272.                zu spΣt und macht Ihnen m÷glicherweise eine Menge zusΣtzlicher Arbeit!
  273.                Einzelheiten zum Umgang damit spΣter unter Abschnitt 4.8.2 auf Seite 136.
  274.                Fⁿr den LILO-Bootsektor stehen folgende Installationsziele zur Auswahl:
  275.  
  276.                 * Auf einer Diskette
  277.                   Dies ist die sicherste, aber auch langsamste Methode, mit LILO zu booten
  278.                   (siehe auf Seite 130). Wem auch nach der Lektⁿre dieses Kapitels die
  279.                   VerΣnderung der Bootsektoren ein GrΣuel ist, der sollte (zunΣchst) die
  280.                   Disketten-Variante wΣhlen.
  281.                 * Im Bootsektor einer primΣren Linux-Partition der ersten Festplatte
  282.                   Diese Variante lΣsst den MBR unberⁿhrt. Vor dem Booten muss diese
  283.                   Partition mit fdisk als aktiv markiert werden. Wenn Linux ganz auf lo-
  284.                   gischen Laufwerken oder Partitionen der zweiten Festplatte eingerichtet
  285.                   wurde, bleibt fⁿr LILO nur der Bootsektor der erweiterten Partition der
  286.                   ersten Festplatte ¡ sofern diese existiert ¡ ⁿbrig. Linux fdisk kann auch
  287.                   diese Partition aktivieren.
  288.                   Wenn Sie mehrere Betriebssysteme von der Festplatte booten wollen, ist
  289.                   dieses Verfahren allerdings etwas umstΣndlich: jedesmal vor einem Be-
  290.                   triebssystem-Wechsel mⁿssen Sie unter dem bisherigen Betriebssystem
  291.                   dessen Startpartition deaktivieren und die des nΣchsten Betriebssystem
  292.                   aktivieren. Die folgenden beiden Verfahren sind fⁿr diesen Fall besser ge-
  293.                   eignet.
  294.                 * Im Master Boot Record
  295.                   Diese Variante bietet die gr÷▀te FlexibilitΣt. Insbesondere ist dies die ein-
  296.                   zige M÷glichkeit, Linux von Festplatte aus zu booten, wenn sΣmtliche Li-
  297.                   nux-Partitionen auf der zweiten Festplatte liegen, und auf der ersten keine
  298.                   erweiterte Partition zur Verfⁿgung steht. Ein VerΣnderung des MBR birgt
  299.                   aber bei unsachgemΣ▀er Installation auch gewisse Risiken. Die n÷tigen
  300.                   Sicherheitsma▀nahmen kommen in Abschnitt 4.5 auf Seite 127 zur Spra-
  301.                   che.
  302.                 * Wenn Sie bisher einen anderen Bootmanager verwendet haben ...
  303.                    ... und ihn weiterverwenden wollen, gibt es, je nach dessen FΣhigkeiten,
  304.                   noch weitere M÷glichkeiten. Ein hΣufiger Fall: Sie haben eine primΣre Li-
  305.                   nux-Partition auf der zweiten Platte, von der aus Sie Linux starten wollen.
  306.                   Ihr anderer Bootmanager wΣre imstande, diese Partition ⁿber den Boot-
  307.                   sektor zu starten. Dann k÷nnen Sie diese Partition startbar machen, indem
  308.                   Sie LILO in ihrem Bootsektor installieren, und sie dem anderen Bootma-
  309.                   nager als startbar melden.
  310.  
  311. 120
  312.  
  313.  
  314.  
  315.                                                   4.4. Ein LILO nach Ma▀: Konfiguration
  316.  
  317.  Vorsicht aber mit dem Wunsch, eine logische Linux-Partition startbar zu
  318.  machen, indem Sie LILO dort installieren: Es geht oft gut; aber selbst
  319.  wenn Ihr anderer Bootmanager logische Partitionen starten k÷nnte, ist der
  320.  Erfolg z. Z. ausdrⁿcklich nicht garantiert.
  321.  
  322.    Sie k÷nnen es natⁿrlich ausprobieren, am besten zunΣchst mit einer ganz
  323.    kleinen Linux-Installation. M÷glicherweise haben Sie Glⁿck ¡ besser ist
  324.    es aber auf jeden Fall, doch wenigstens eine primΣre startbare Linux-
  325.    Partition einzuplanen!
  326.  
  327. 4.4 Ein LILO nach Ma▀: Konfiguration
  328. Als flexibler Bootmanager bietet LILO zahlreiche M÷glichkeiten, seine Kon-
  329. figuration den individuellen Erfordernissen anzupassen. Die wichtigsten Op-
  330. tionen und ihre Bedeutung werden im folgenden erlΣutert. Fⁿr eine umfas-
  331. sende Beschreibung sei auf [Alm96] verwiesen.
  332. Die Konfiguration von LILO wird in der Datei /etc/lilo.conf einge-
  333. tragen. Bei einer Erstinstallation von Linux empfehlen wir, dies zunΣchst
  334. von YaST durchfⁿhren zu lassen. Eine eventuell n÷tige Nachbearbeitung von
  335. lilo.conf kann auf der von YaST erstellten Datei aufbauen.
  336.  
  337.  Die Datei /etc/lilo.conf sollte nur fⁿr `root' lesbar sein, da sie
  338.  Passw÷rter enthalten kann (vgl. Abschnitt 4.4.2 auf Seite 124); dies ist
  339.  Standard bei SuSE Linux; schauen Sie einmal nach ¡ im Zweifelsfall hilft
  340.  der Befehl:
  341.      erde: # chmod 0600 /etc/lilo.conf
  342.  
  343. Es ist ratsam, die bei der letzten LILO-Installation verwendete Konfigura-
  344. tionsdatei sorgfΣltig aufzubewahren und vor jeder ─nderung eine Sicherheits-
  345. kopie herzustellen. Eine ─nderung wird erst wirksam, indem Sie LILO mit
  346. der neuesten Fassung der Konfigurationsdatei neu installieren (Abschnitt 4.5
  347. auf Seite 127)!
  348.  
  349. 4.4.1 Der Aufbau der Datei lilo.conf
  350. Die /etc/lilo.conf beginnt mit einem globalen Abschnitt (engl. glo-
  351. bal options section) mit allgemeinen Einstellungen, gefolgt von einem oder
  352. mehreren System-Abschnitten (engl. image sections) fⁿr die einzelnen Be-
  353. triebssysteme, die LILO starten soll. Ein neuer Systemabschnitt wird jeweils
  354. eingeleitet durch eine Zeile mit der Option image oder other.
  355. Die Reihenfolge der einzelnen Betriebssysteme in der lilo.conf ist nur
  356. insofern von Bedeutung, als das zuerst in der Liste aufgefⁿhrte System auto-
  357. matisch gebootet wird, wenn keine Benutzereingabe erfolgt ¡ gegebenenfalls
  358. nach Ablauf einer vorkonfigurierten Wartezeit (s. u. die Optionen delay und
  359. timeout).
  360. Datei 4.4.1 auf der nΣchsten Seite zeigt eine Beispielkonfiguration auf ei-
  361. nem Rechner mit Linux und DOS. Zur Auswahl beim Booten sollen ste-
  362. hen: ein neuer und ein alter Linux-Kernel auf der gegenwΣrtigen Root-Par-
  363. tition (primΣr, auf der zweiten Platte), sowie MS-DOS (oder Windows 95)
  364. auf /dev/hda1.
  365.  
  366.                                                                                    121
  367.  
  368.  
  369.  
  370. 4. Booten und Bootmanager
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.                # LILO Konfigurations-Datei
  378.                # Start LILO global Section
  379.                boot=/dev/hda                        # LILO Installations-
  380.                ziel: MBR
  381.                backup=/boot/MBR.hda.970428 # Backup-Datei fⁿr al-
  382.                ten MBR
  383.                                                     # vom 28. Apr 1997
  384.                #compact             # faster, but won't work on all systems.
  385.                #linear
  386.                message=/boot/message                # LILO's Begrⁿ▀ungsmeldung
  387.                prompt
  388.                password = q99iwr4                   # Allgemeines LILO Passwort
  389.                timeout=100          # 10 s am Prompt warten, be-
  390.                vor Voreinstellung
  391.                                     # gebootet wird
  392.                vga = normal         # normaler Textmodus (80x25 Zeichen)
  393.                # End LILO global section
  394.  
  395.                # Linux bootable partition config begins
  396.                image = /boot/vmlinuz                # Voreinstellung
  397.                     root = /dev/hdb3                # Root-
  398.                Partition fⁿr Kernel
  399.                     read-only
  400.                     label = Linux
  401.                # Linux bootable partition config ends
  402.  
  403.                # Second Linux bootable partition config
  404.                image = /boot/vmlinuz.old
  405.                     root = /dev/hdb3
  406.                     read-only
  407.                     label = Linux.old
  408.                # 2nd Linux bootable partition config ends
  409.  
  410.                # DOS bootable partition config begins
  411.                other = /dev/hda1
  412.                     label = DOS
  413.                     loader = /boot/chain.b
  414.                     table = /dev/hda
  415.                # DOS bootable partition config ends
  416.  
  417.                          Datei 4.4.1: Beispielkonfiguration in /etc/lilo.conf
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424. 122
  425.  
  426.  
  427.  
  428.                                                               4.4. Ein LILO nach Ma▀: Konfiguration
  429.  
  430. In /etc/lilo.conf ist alles von einem # bis zum Zeilenende Kommentar.
  431. Er wird ¡ ebenso wie Zwischenraum ¡ von LILO ignoriert und kann zur
  432. Verbesserung der Lesbarkeit verwendet werden.
  433. Gehen wir einmal die wichtigsten Zeilen Schritt fⁿr Schritt durch. Die weite-
  434. ren Optionen sind in Abschnitt 4.4.2 auf Seite 124 beschrieben.
  435.  * Globaler Abschnitt (Parameterteil)
  436.      ¡ boot=<bootdevice>
  437.         Device auf dessen erstem Sektor der LILO-Bootsektor installiert wer-
  438.         den soll (das Installationsziel).
  439.         <bootdevice> kann sein: ein Diskettenlaufwerk (/dev/fd0), eine
  440.         Partition (z. B. /dev/hdb3), oder eine ganze Platte (z. B. /dev/
  441.         hda): letzteres bedeutet die Installation im MBR.
  442.         Voreinstellung: Fehlt diese Angabe, wird LILO auf der gegenwΣrtigen
  443.         Linux-Rootpartition installiert.
  444.      ¡ prompt
  445.         Erzwingt das Erscheinen der LILO-Eingabeaufforderung ( Prompt).
  446.         Die Voreinstellung ist: kein Prompt! (Vgl. Abschnitt 4.4.2 auf der
  447.         nΣchsten Seite, Option delay.)
  448.         Empfohlen, sobald LILO mehr als nur ein System starten soll. Zusam-
  449.         men damit sollte auch die timeout-Option gesetzt werden, damit ein
  450.         automatischer Reboot m÷glich ist, wenn keine Eingabe am Prompt er-
  451.         folgt.
  452.      ¡ timeout=<zehntelsekunden>
  453.         Setzt eine Auszeit fⁿr Eingaben am Prompt und erm÷glicht dadurch
  454.         einen automatischen Reboot, wenn nicht rechtzeitig eine Eingabe er-
  455.         folgt ist. <zehntelsekunden> ist dabei die verbleibende Zeit in Zehn-
  456.                                                                           
  457.         telsekunden fⁿr eine Eingabe. Drⁿcken von  Shift    am Prompt lΣsst
  458.         die Auszeit von neuem starten. Voreinstellung: keine zeitliche Begren-
  459.         zung, d. h. es wird kein automatischer Reboot durchgefⁿhrt!
  460.  * Linux-Abschnitt
  461.      ¡ image=<kernelimage>
  462.         Hier muss der Name des zu bootenden Kernel-Images stehen. Dies
  463.         wird in der Regel /boot/vmlinuz sein ¡ bzw. bei Σlteren SuSE
  464.         Linux-Systemen (vor Version 6.0) /vmlinuz oder /zImage.
  465.      ¡ label=<name>
  466.         Innerhalb der /etc/lilo.conf eindeutiger, aber sonst frei wΣhlba-
  467.         rer Name fⁿr das System (z. B. Linux). Maximale LΣnge 15 Zeichen:
  468.         m÷glichst nur Buchstaben, Ziffern und Unterstrich ¡ keine Leerzei-
  469.         chen, Sonderzeichen wie deutsche Umlaute u. ─.8. Voreinstellung: der
  470.         Dateiname des Kernel-Images (z. B. /boot/vmlinuz).
  471.         Durch Eingabe dieses Namens wΣhlen Sie beim Systemstart an der LI-
  472.         LO-Eingabeaufforderung das gewⁿnschte Betriebssystem zum Star-
  473.         ten aus. Bei mehreren Systemen empfiehlt es sich, eine nΣhere Be-
  474. 8 Die genauen Regeln fⁿr erlaubte Zeichen finden Sie in [Alm96], Abschnitt 3.2.1.
  475.  
  476.                                                                                                123
  477.  
  478.  
  479.  
  480. 4. Booten und Bootmanager
  481.  
  482.                       schreibung der Namen und Systeme in einer message-Datei (s. Ab-
  483.                       schnitt 4.4.2 auf der nΣchsten Seite, Option message) bereitzustellen.
  484.                    ¡ root=<rootdevice>
  485.                       Damit gibt LILO dem Kernel die Rootpartition (z. B. /dev/hda2)
  486.                       des Linux-Systems an. Zur Sicherheit empfohlen! Wird diese Option
  487.                       weggelassen, nimmt der Kernel die in ihm selbst eingetragene Root-
  488.                       partition9.
  489.                 * Anderes System
  490.                    ¡ other=<partition>
  491.                       Mit other werden dem LILO Startpartitionen anderer Systeme zum
  492.                       Booten bekanntgemacht (z. B. /dev/hda1).
  493.                    ¡ loader=<Boot-Loader>
  494.                       Fⁿr das Laden eines fremden Bootsektors baut LILO in seiner Map-
  495.                       Datei einen  Pseudo-MBR" (beim Booten startet erst LILO den Pseu-
  496.                       do-MBR, und dieser dann den fremden Bootsektor). Diese Option gibt
  497.                       die Datei an, aus der der Code fⁿr den Pseudo-MBR zu nehmen ist.
  498.                       Voreinstellung und generell richtig: /boot/chain.b .
  499.                       Manchmal soll ein Betriebssystem, das von der ersten Festplatte ge-
  500.                       bootet werden will (z. B. DOS), dennoch mit LILO von einer anderen
  501.                       Platte gestartet werden. Die Zusatzoptionen map-drive=<Nummer>
  502.                       und to=<Nummer> gestatten es, diese beiden Platten anhand ihrer
  503.                       BIOS-GerΣtenummern zu  vertauschen". Beispiel: Datei 4.4.2.
  504.                       Der Loader os2_d.b dient dazu, OS/2 von der zweiten Festplatte zu
  505.                       booten10. Neu ab LILO-Version 20: auch bei diesem Loader muss das
  506.                        Vertauschen" der ersten beiden Festplatten nun ausdrⁿcklich vorge-
  507.                       schrieben werden (wie im Beispiel Datei 4.4.2).
  508.  
  509.                # Booting DOS from the second hard drive
  510.                # DOS bootable partition config begins
  511.                other = /dev/hdb1
  512.                   label = DOS
  513.                   loader = /boot/chain.b
  514.                        map-drive = 0x80              # first hd: BIOS number 0x80
  515.                        to                  = 0x81    # second hd: BIOS number 0x81
  516.                        map-drive = 0x81
  517.                        to                  = 0x80
  518.                   table = /dev/hdb
  519.                # DOS bootable partition config ends
  520.  
  521.                  Datei 4.4.2: /etc/lilo.conf Auszug: DOS von 2. Festplatte booten
  522.  
  523.                    ¡ table=<ptabelle>
  524.                       <ptabelle> muss das Quell-Device fⁿr die Partitionstabelle angeben,
  525.                       die in den Pseudo-MBR soll (in der Regel /dev/hda oder /dev/
  526.                       sda).
  527.                9 Zu sehen mit dem Kommando rdev <kernelimage>.
  528.               10 any_b.b (Booten von B:) und any_d.b (Booten von der zweiten Festplatte) sind seit der
  529.                LILO-Version 20 obsolet.
  530.  
  531. 124
  532.  
  533.  
  534.  
  535.                                                       4.4. Ein LILO nach Ma▀: Konfiguration
  536.  
  537.      ¡ label=<name>
  538.        Der (wiederum frei wΣhlbare) Name fⁿr dieses System. Empfohlen.
  539.        Die Voreinstellung ¡ der blo▀e Device-Name der Partition ¡ ist beim
  540.        Booten nicht so aussagekrΣftig.
  541.  
  542. 4.4.2 Weitere optionale Konfigurationsm÷glichkeiten (Auswahl)
  543. Im letzten Abschnitt wurden nur die in /etc/lilo.conf minimal n÷tigen
  544. EintrΣge besprochen. Weitere nⁿtzliche Einstellungen folgen nun hier.
  545. Diejenigen Optionen, die ausdrⁿcklich als Image-Optionen gekennzeichnet
  546. sind, geh÷ren in den Abschnitt eines einzelnen Betriebssystems. Die anderen
  547. sind fⁿr den globalen Parameterteil von /etc/lilo.conf gedacht.
  548.  * backup=<backup-Datei>
  549.     Die Datei, in der LILO ein Backup desjenigen Bootsektors ablegt, in den
  550.     er anschlie▀end installiert wird. Hierfⁿr ist /boot/boot.xxxx die Vor-
  551.     gabe, wobei xxxx die interne GerΣtenummer der Installationspartition
  552.     ist11.
  553.     Wir empfehlen, einen leichter deutbaren Namen zu verwenden, etwa wie
  554.     oben im Beispiel (mit GerΣtenamen und Datumsangabe). Sie verzichten
  555.     damit auf das eingebaute Uninstall-Feature von LILO; aber dies macht
  556.     man unserer Meinung nach sowieso besser mit aller Sorgfalt von Hand
  557.     (siehe auf Seite 128).
  558.  
  559.   Wenn die Backup-Datei vorher schon vorhanden ist, legt LILO kein neu-
  560.   es Backup an! Sorgen Sie daher dafⁿr, dass hier jeweils ein neuer, unge-
  561.   brauchter Dateiname verwendet wird.
  562.  
  563.  * compact
  564.     Diese Option empfiehlt sich bei Installation des LILO auf Diskette. LI-
  565.     LO versucht dann, beim Start mehrere Sektoren auf einmal zu lesen und
  566.     bootet u. U. schneller. Dies funktioniert leider nicht auf allen Maschinen.
  567.     Bei Installation des LILO sollten Sie darauf verzichten: es ist sicherer,
  568.     und der Zeitgewinn betrΣgt nur wenige Sekunden.
  569.  * disk=<GerΣtedatei>
  570.     bios=<BIOS-GerΣtenummer>
  571.     cylinders=<Anzahl>
  572.     heads=<Anzahl>
  573.     sectors=<Anzahl>
  574.     Hier kann dem LILO fⁿr einzelne Festplatten direkt vorgeschrieben wer-
  575.     den, welche BIOS-GerΣtenummer und Geometrie er zur Adressierung
  576.     von Sektoren dieser Platte verwenden soll. Nur sehr selten erforderlich!
  577.     Wichtigste Anwendung:
  578.     IDE-SCSI-Mischsysteme: Wenn Sie ein BIOS haben, das die Bootrei-
  579.     henfolge SCSI vor IDE erlaubt, und Sie diese M÷glichkeit nutzen wol-
  580.     len, muss LILO extra ⁿber die geΣnderte Reihenfolge der Festplatten aus
  581.     BIOS-Sicht informiert werden. Dies geschieht durch Zusatzeintrag in den
  582. 11 Dies ist zu finden in den Kernelsourcen in /usr/src/linux/init/main.c, Funktion
  583. parse_root_dev().
  584.  
  585.                                                                                        125
  586.  
  587.  
  588.  
  589. 4. Booten und Bootmanager
  590.  
  591.                   globalen Teil der lilo.conf wie z. B. in Datei 4.4.3 fⁿr den Fall eines
  592.                   Systems mit je einer IDE- und SCSI-Platte.
  593.  
  594.                # Enable LILO to correctly access /dev/sda and /dev/hda
  595.                # at boot time if their boot order is interchanged in
  596.                # the BIOS:
  597.                disk = /dev/sda           #    The SCSI disk is regarded as ...
  598.                    bios = 0x80           #    ... first BIOS disk;
  599.                disk = /dev/hda           #    the IDE disk is regarded as ...
  600.                    bios = 0x81           #    ... second BIOS disk.
  601.                    Datei 4.4.3: lilo.conf Auszug: Bootreihenfolge: SCSI vor IDE
  602.  
  603.                 * linear
  604.                   Die Angabe dieser Option bewirkt, dass bei der Installation von LILO
  605.                   sΣmtliche Referenzen auf Plattensektoren als logische anstelle physika-
  606.                   lischer Adressen abgelegt werden, so dass sie unabhΣngig von der Fest-
  607.                   plattengeometrie werden. Diese Option ist fⁿr den Fall gedacht, dass bei
  608.                   manchen Plattencontrollern das BIOS beim Systemstart eine andere Geo-
  609.                   metrie erkennt als das laufende Linux-System. Nur selten erforderlich!
  610.                   Die linear Option befreit nicht von der 1024-Zylinder-Grenze, die
  611.                   durch die BIOS-Geometrie der Boot-Festplatte festgelegt ist. Vgl. auch
  612.                   http://sdb.suse.de/sdb/de/html/kgw_lilo_linear.
  613.                   html.
  614.                 * message=<message-datei>
  615.                   Verweist auf eine Textdatei, die von LILO beim Systemstart als erstes
  616.                   ausgegeben wird. Sie soll nicht mehr als 24 Zeilen haben (sonst scrollt sie
  617.                   weg) und kann z. B. einen ▄berblick ⁿber die anstehende LILO-Bootaus-
  618.                   wahl geben. Eine solche Startmeldung kennen Sie ⁿbrigens bereits von
  619.                   der mitgelieferten SuSE-Bootdiskette. Empfohlen.
  620.  
  621.                 Wird diese Option verwendet, so geh÷rt die message-Datei zur LILO-
  622.                 Startmaschinerie. Jede ─nderung dieser Datei macht eine Neuinstallation
  623.                 von LILO erforderlich (Abschnitt 4.5 auf der nΣchsten Seite)!
  624.  
  625.                 * password=<passwort>
  626.                   Kann sowohl am Anfang im Parameter-Abschnitt, als auch in einzel-
  627.                   nen Systemabschnitten stehen. Sichert den Zugriff auf die LILO-Dienste
  628.                   bzw. auf das Booten des betreffenden Systems mit einem Passwort ab.
  629.                   Wenn Sie damit Ernst machen, sollten Sie das Passwort nach der ers-
  630.                   ten Verwendung dieser lilo.conf gleich wieder herausl÷schen ¡ als
  631.                   root k÷nnen Sie sowieso jederzeit durch Neu-Installation von LILO
  632.                   ein neues Passwort setzen. ¡ Es empfiehlt sich, zusΣtzlich die Option
  633.                   restricted zu setzen. Andernfalls kann man mit einem Parameter wo-
  634.                   m÷glich direkt eine Shell starten; vgl. die Manual-Page von lilo.conf
  635.                   (man lilo.conf)!
  636.                 * read-only
  637.                   Mit dieser Image-Option weist LILO den betreffenden Kernel an, die
  638.                   Rootpartition zunΣchst read-only zu mounten, wie es beim Start von
  639.  
  640. 126
  641.  
  642.  
  643.  
  644.                                                      4.5. Installation und De-Installation von LILO
  645.  
  646.     Linux- Systemen generell ⁿblich ist. Wird diese Option weggelassen, ver-
  647.     wendet der Kernel die in ihm selbst eingetragene Voreinstellung12.
  648.  * delay=<zehntelsekunden>
  649.     Wenn der Prompt nicht zwingend vorgeschrieben worden ist, kann der
  650.                                                                                            
  651.     Benutzer dennoch zur Startzeit von LILO durch Tastendruck ( Shift    
  652.                                                                                           ,
  653.                
  654.      Strg  
  655.            ,  Alt  
  656.                    ) einen Prompt anfordern. Die delay Option gibt die Zeit
  657.     vor, die LILO nach seinem Start auf einen solchen Tastendruck wartet,
  658.     bevor er automatisch das erste System aus seiner Betriebssystem-Liste
  659.     lΣdt. Die Voreinstellung ist 0, d. h. keine Wartezeit.
  660.     Die delay Option ist natⁿrlich ⁿberflⁿssig, wenn mit prompt sowieso
  661.     ein Prompt zwingend angefordert wird.
  662.  * vga=<mode>
  663.     WΣhlt den VGA-Textmodus beim Start. Gⁿltige Werte fⁿr <mode> sind
  664.     normal (fⁿr 80x25), ext (fⁿr 80x50) oder ask (beim Booten fragen).
  665.  * append="<parameter>"
  666.     Image-Option fⁿr Linux-Kernel. Erm÷glicht die ▄bergabe von Kernel-
  667.     Parametern wie etwa bei der ▄bergabe von Hardwarekomponenten, ge-
  668.     nauso wie dies am LILO-Prompt m÷glich ist. Der Kernel erhΣlt zuerst
  669.     die append Zeile, dann die Eingaben am Prompt; daher ⁿberwiegen im
  670.     Zweifelsfall die Eingaben am Prompt.
  671.     Zum Beispiel: append="mcd=0x300,10"
  672.  
  673.  
  674. 4.5 Installation und De-Installation von LILO
  675.  
  676. Bei einer Neuinstallation von Linux fⁿhrt YaST den Benutzer interaktiv durch
  677. die n÷tigen Schritte. Ein Eingreifen von Hand ist bei der Installation von
  678. LILO i. Allg. nicht n÷tig. Hier m÷chten wir aber davon ausgehen, dass LILO
  679. mit speziellen Optionen in ein bestehendes System integriert werden soll.
  680.  
  681.   Die Installation eines Bootmanagers ist ein tiefer Eingriff ins System und
  682.   dementsprechend heikel. Vergewissern Sie sich vor der Installation von
  683.   LILO auf jeden Fall, dass Sie Ihr Linux, und m÷glichst auch Ihre ande-
  684.   ren vorhandenen Betriebssysteme, von Diskette booten k÷nnen! Vor allem
  685.   fdisk muss zur Verfⁿgung stehen.
  686.  
  687.  
  688. Installation nach ─nderung der Konfiguration
  689.  
  690. Wenn sich an den LILO-Komponenten (siehe auf Seite 119) etwas geΣndert
  691. hat oder wenn Sie Ihre Konfiguration in /etc/lilo.conf modifiziert ha-
  692. ben, mⁿssen Sie LILO neu installieren. Dies geschieht durch einfachen Auf-
  693. ruf des sog. Map-Installers:
  694.     erde: # /sbin/lilo
  695.  
  696. 12 Zu sehen mit dem Kommando rdev -R <kernelimage>. Sie ist bei den Installations-
  697. kernel und auch bei einem neu-ⁿbersetzten Kernel ohnehin read-only (prⁿfen!), daher braucht
  698. man diese Option normalerweise nicht.
  699.  
  700.                                                                                                127
  701.  
  702.  
  703.  
  704. 4. Booten und Bootmanager
  705.  
  706.                Was dann geschieht, ist, dass LILO ein Backup des Ziel-(Boot-)Sektors an-
  707.                legt, seine  erste Stufe" in diesen Sektor schreibt und eine neue Map-Datei er-
  708.                zeugt (siehe auf Seite 119). LILO meldet nacheinander die installierten Sys-
  709.                teme ¡ z. B. im Fall unserer obigen Beispielkonfiguration (s. Ausgabe 4.5.1):
  710.  
  711.                Added Linux*
  712.                Added Linux.old
  713.                Added DOS
  714.  
  715.                              Ausgabe 4.5.1: Ausgaben beim Aufruf von LILO
  716.  
  717.                Nach abgeschlossener Installation kann der Rechner neu gestartet werden:
  718.                   erde: # shutdown -r now
  719.  
  720.                Nachdem das BIOS seinen Systemtest ausgefⁿhrt hat, meldet sich LILO mit
  721.                seiner Eingabeaufforderung, an der Sie dem LILO Parameter fⁿr den Ker-
  722.                                                                                            
  723.                nel ⁿbergeben und das gewⁿnschte Bootimage auswΣhlen k÷nnen. Mit  Tab  
  724.                lassen sich die Bezeichnungen der installierten Konfigurationen auflisten.
  725.  
  726.  
  727.                Installation nach Neu-Kompilierung des Kernels
  728.  
  729.                Wenn Sie einen neu kompilierten Kernel in Ihr Bootkonzept aufnehmen wol-
  730.                len, haben Sie neben der LILO-Neuinstallation von Hand noch eine weitere,
  731.                und zwar bequemere M÷glichkeit:
  732.                Die Organisation der Befehle zum Konfigurieren und zum Erzeugen des
  733.                Kernels ist niedergelegt in der Datei /usr/src/linux/Makefile;
  734.                dort soll INSTALL_PATH=/boot festgelegt werden (vgl. Abschnitt 13.5
  735.                auf Seite 357). Dieses Makefile verfⁿgt ⁿber ein target namens
  736.                bzlilo, das nach einer Kernel-Kompilierung automatisch den derzeit als
  737.                /boot/vmlinuz (frⁿher /vmlinuz) installierten Kernel nach /boot/
  738.                vmlinuz.old kopiert, den neu erzeugten Kernel nach /boot/vmlinuz
  739.                schreibt und schlie▀lich LILO neu installiert. Dazu reicht:
  740.                   erde:/usr/src/linux # make bzlilo
  741.  
  742.                Das ist freilich nur sinnvoll, wenn Ihre /etc/lilo.conf auf diesen LI-
  743.                LO-Aufruf vorher vorbereitet worden ist und Ihr bisheriger Kernel wirklich
  744.                unter /boot/vmlinuz liegt. Unter Ihren Images sollten Sie den neuen Ker-
  745.                nel ¡ und zur Sicherheit auch den alten ¡ auffⁿhren; etwa so, wie es in Da-
  746.                tei 4.4.1 auf Seite 122 geschehen ist.
  747.                Dadurch k÷nnen Sie am LILO-Bootprompt sowohl den neuen Kernel star-
  748.                ten als auch den alten ¡ funktionierenden ¡ Kernel (Name im Beispiel:
  749.                Linux.old). So bauen Sie eine weitere Sicherheitsstufe ein, die dann von
  750.                Nutzen ist, wenn das System mit dem neuen Kernel nicht booten kann.
  751.                Zum Erzeugen eines neuen Kernels siehe Kapitel 13 auf Seite 353 ff.
  752.  
  753. 128
  754.  
  755.  
  756.  
  757.                                                         4.5. Installation und De-Installation von LILO
  758.  
  759. Entfernen von LILO
  760.  
  761.   Die Deinstallation eines Bootmanagers ist ein tiefer Eingriff ins System
  762.   und dementsprechend heikel. Vergewissern Sie sich vor der Deinstallation
  763.   von LILO auf jeden Fall, dass Sie Ihr Linux, und m÷glichst auch Ihre an-
  764.   deren Betriebssysteme ¡ soweit vorhanden ¡ von Diskette booten k÷nnen!
  765.   Sie geraten sonst m÷glicherweise in die unangenehme Lage, nicht mehr
  766.   auf die Betriebssysteme auf Ihrer Festplatte zugreifen zu k÷nnen.
  767.  
  768. Vielleicht wird es eines Tages doch einmal n÷tig, LILO wieder zu deinstal-
  769. lieren :-( Dies geschieht, indem der Ziel-(Boot-)sektor, in dem LILO in-
  770. stalliert worden ist, seinen vorigen Inhalt zurⁿckerhΣlt. Unter Linux ist das
  771. kein Problem, wenn ein gⁿltiges Backup vorhanden ist (vgl. Abschnitt 4.4.2
  772. auf Seite 124, Option backup).
  773.  
  774.   Ein Bootsektor-Backup wird ungⁿltig, wenn die betreffende Partition ein
  775.   neues Dateisystem erhalten hat (DOS-Welt: formatiert worden ist). Die
  776.   Partitionstabelle in einem MBR-Backup wird ungⁿltig, wenn die betref-
  777.   fende Festplatte zwischenzeitlich anders partitioniert worden ist. Solche
  778.   Backups sind  Zeitbomben": am besten sofort l÷schen! Das Zurⁿckspie-
  779.   len veralteter Backups in diese Systemsektoren ist ein ziemlich sicherer
  780.   Weg zu massivem Datenverlust!
  781.  
  782. Am einfachsten ist es, einen DOS-, Windows- oder OS/2-MBR wiederherzu-
  783. stellen. Es geschieht mit dem MS-DOS-Befehl (verfⁿgbar ab DOS-Version
  784. 5.0):
  785.      C:\> fdisk /mbr
  786. bzw. dem OS/2-Befehl:
  787.      C:\> fdisk /newmbr
  788. Diese Befehle schreiben nur die 446 ersten Bytes (den Boot-Code) in den
  789. MBR zurⁿck und lassen die gegenwΣrtige Partitionstabelle unangetastet13.
  790. Nicht vergessen: Mit fdisk die von jetzt an gewⁿnschte Startpartition wie-
  791. der als aktiv (engl. bootable) kennzeichnen; die MBR-Routinen von DOS,
  792. Windows, OS/2 brauchen das!
  793. Ansonsten legen Sie zunΣchst von dem fraglichen LILO-Sektor ein weiteres
  794. frisches Backup an ¡ sicher ist sicher. Dann prⁿfen Sie ¡ wenigstens zweimal
  795. ;-) ¡ ob Ihre alte Backup-Datei die richtige ist und ob sie genau 512 Byte
  796. gro▀ ist. Schlie▀lich spielen Sie sie dann zurⁿck. Das Ganze geht mit den
  797. folgenden Befehlen (dabei if= und of= nicht verwechseln!!):
  798.  
  799.   * Wenn LILO in Partition yyyy (z. B. hda1, hda2, ... ) residiert:
  800.   erde: # dd if=/dev/yyyy of=Neue-Datei bs=512 count=1
  801.   erde: # dd if=Backup-Datei of=/dev/yyyy
  802.  
  803.   * Wenn LILO im MBR der Platte zzz (z. B. hda, sda) residiert:
  804.  
  805. 13 Au▀er, wenn der MBR (siehe auf Seite 116) wegen einer falschen  magischen Zahl" als im
  806. ganzen ungⁿltig behandelt wird: dann wird die Partitionstabelle genullt!!
  807.  
  808.                                                                                                   129
  809.  
  810.  
  811.  
  812. 4. Booten und Bootmanager
  813.  
  814.                 erde: # dd if=/dev/zzz of=Neue-Datei bs=512 count=1
  815.                 erde: # dd if=Backup-Datei of=/dev/zzz bs=446 count=1
  816.  
  817.  
  818.                Der letzte Befehl ist  vorsichtig" und schreibt gleichfalls nicht in die Partiti-
  819.                onstabelle. Auch hier nicht vergessen: Mit fdisk anschlie▀end die von jetzt
  820.                an gewⁿnschte Startpartition wieder als aktiv (engl. bootable) kennzeichnen.
  821.                ▄brigens: beachten Sie, wie schnell so ein Bootsektor-Backup geht! Zur hΣu-
  822.                figeren Anwendung empfohlen.
  823.  
  824.  
  825.                4.6 Linux-Bootdiskette erzeugen
  826.  
  827.                Eine Linux-Bootdiskette besteht - vereinfacht gesagt - aus einem oder
  828.                mehreren Linux-Kerneln, eventuell gemanagt von LILO. Sie dient dem
  829.                Zweck, Ihr Linux-System auf der Festplatte auch dann zu starten, wenn das
  830.                Booten direkt von der Platte nicht mehr m÷glich ist. M÷gliche AnlΣsse dafⁿr
  831.                k÷nnen sein: MBR ⁿberschrieben, falsch konfigurierter Bootmanager, Fehler
  832.                bei der LILO-Installation.
  833.                Eine solche Bootdiskette lΣdt nur den Kernel: alles andere (init, Startskrip-
  834.                ten, wichtige Systemprogramme) wird von Ihrem System erwartet und muss
  835.                nach wie vor funktionsfΣhig sein. Die Verbindung von der Bootdiskette zum
  836.                System auf der Festplatte wird dadurch hergestellt, dass in dem Kernel die
  837.                betreffende Root-Partition als Root-Device eingestellt wird.
  838.                Dies ist nicht zu verwechseln mit den SuSE-Bootdisketten fⁿr Installations-
  839.                und Rettungssystem, von denen Sie anhand der Abbilddateien (engl. image
  840.                files) unter /disks auf der ersten CD jederzeit neue Exemplare herstellen
  841.                k÷nnen (vgl. Abschnitt 16.5 auf Seite 432).
  842.  
  843.  
  844.                Bootdiskette ohne LILO
  845.  
  846.                Wenn Sie in der glⁿcklichen Lage sind, dass Ihr Kernel beim Starten keine
  847.                zusΣtzliche Kommandozeile mit Hardware-Info usw. ben÷tigt14, besteht der
  848.                schnellste Weg zu einer Bootdiskette fⁿr Ihr Linux-System einfach darin,
  849.                Ihren aktuellen Kernel auf eine rohe, fehlerfreie Diskette zu schreiben und,
  850.                falls nicht schon vorher geschehen, das Root-Device richtig einzustellen:
  851.                    erde: # /sbin/badblocks -v /dev/fd0 1440
  852.                    erde: # dd if=Ihr_Kernel of=/dev/fd0 bs=18k
  853.                    erde: # rdev /dev/fd0 Ihre_Root_Partition
  854.                    erde: # rdev -R /dev/fd0 1
  855.                Der erste Befehl prⁿft die Diskette auf fehlerhafte Bl÷cke (1 Block = 1 k).
  856.                Der letzte Befehl sorgt dafⁿr, dass der Kernel die Root-Partition zunΣchst
  857.                read-only mountet, wie es sich geh÷rt (die Systemstart-Skripten verlassen
  858.                sich darauf).
  859.  
  860.               14 Dies ist der Normalfall, wenn Sie Unterstⁿtzung fⁿr den Festplatten-Controller in den Kernel
  861.                hineincompiliert haben ( monolithischer" Kernel).
  862.  
  863. 130
  864.  
  865.  
  866.  
  867.                                                             4.6. Linux-Bootdiskette erzeugen
  868.  
  869. Bootdiskette mit LILO
  870. Eine komfortablere Bootdiskette mit Begrⁿ▀ungsmeldung, Eingabeaufforde-
  871. rung fⁿr Kernel und Kernelparameter sowie den sonstigen LILO-Goodies
  872. wird erzeugt, indem man eine komplette LILO-Startmaschinerie auf die Dis-
  873. kette ⁿbertrΣgt (vgl. auf Seite 119). Dazu braucht die Diskette ein Dateisys-
  874. tem, am besten minix.
  875. Gehen Sie zum Selbermachen im Einzelnen wie folgt vor:
  876.  * Auf neuer, leerer Diskette ein minix-Dateisystem anlegen ¡ zur Sicher-
  877.    heit mit Fehlerprⁿfung ¡ und, wenn erfolgreich, mounten, z. B. unter
  878.    /mnt:
  879.        erde: # /sbin/mkfs.minix -c /dev/fd0 1440
  880.        erde: # /bin/mount /dev/fd0 /mnt
  881.  
  882.  * Ihre Kernel-Dateien und die LILO-Datei /boot/boot.b nach /mnt
  883.    (d. h. auf die Diskette) kopieren.
  884.  * Optional: Eine Datei /mnt/message fⁿr die Begrⁿ▀ungsmeldung anle-
  885.    gen.
  886.  * In /mnt eine eigene lilo.conf anlegen wie in Datei 4.6.1 auf der
  887.    nΣchsten Seite. Natⁿrlich mⁿssen Sie noch die tatsΣchliche Root-Partition
  888.    statt Ihr_Root_Device eintragen:
  889.  
  890. # LILO Konfigurations-Datei Bootdiskette
  891. # Start LILO global Section
  892. boot=/dev/fd0                            # Installationsziel: Floppy
  893. install=/mnt/boot.b                      # Natⁿrlich LILO und
  894. map=/mnt/map                             # Map-Datei auf die Floppy!
  895. message=/mnt/message                     # optional
  896. prompt
  897. timeout=100           # Warten am Prompt: 10 s
  898. vga = normal          #
  899. # End LILO global section
  900. ## Linux bootable partition config begins
  901. image = /mnt/vmlinuz                       #     default
  902.       root = /dev/Ihr_Root_Device # Root-
  903. Partition hierher!
  904.       label = linux
  905. # Linux bootable partition config ends
  906. ## Systemabschnitte fⁿr weitere Kernel hier:
  907.                  Datei 4.6.1: lilo.conf fⁿr Bootdiskette
  908.  
  909.  * Wenn Sie eine initrd verwenden, bitte auch diese in die lilo.conf
  910.    eintragen; vgl. die Hinweise in Abschnitt 16.2.3 auf Seite 419.
  911.  * LILO mit dieser lilo.conf installieren:
  912.        erde: # /sbin/lilo -C /mnt/lilo.conf
  913.  
  914.  * Floppy  unmounten", fertig!
  915.        erde: # /bin/umount /mnt
  916.  
  917.                                                                                         131
  918.  
  919.  
  920.  
  921. 4. Booten und Bootmanager
  922.  
  923.                 * Nicht vergessen: Bootdiskette ausprobieren, ob sie wirklich geht :-)
  924.  
  925.                4.7 Beispielkonfigurationen
  926.                Wenn Ihr neues Linux allein auf dem System ist, besteht zunΣchst gar kein
  927.                Handlungsbedarf. Denn alles N÷tige wurde im Rahmen der Installation unter
  928.                YaST erledigt.
  929.                Es folgen einige Beispiele fⁿr Mehrsystem-Rechner. Schauen Sie zu diesem
  930.                Thema doch auch mal nach /usr/doc/howto/en/mini/Linux+*.
  931.                gz , wo einige flei▀ige Linux-Freunde ihre eigenen Mehrsystem-Konfigu-
  932.                rationen dokumentiert haben.
  933.  
  934.                4.7.1 DOS/Windows 95/98 und Linux
  935.                Voraussetzung: Fⁿr DOS/Windows 95/98 und Linux steht jeweils eine pri-
  936.                mΣre Partition unter der 1024-Zylinder-Grenze zur Verfⁿgung (vgl. auf Sei-
  937.                te 119); die Linux Boot-Partition kann auch eine logische Partition sein, so-
  938.                fern diese ganz unter der 1024-Zylinder-Grenze liegt.
  939.                Fⁿr diesen Fall wurde eine geeignete Konfiguration bereits besprochen (vgl.
  940.                Datei 4.4.1 auf Seite 122) ¡ nur die Angaben bei root, image und other
  941.                sind an die tatsΣchlichen VerhΣltnisse anzupassen. LILO wird im MBR in-
  942.                stalliert. Natⁿrlich werden Sie den Linux.old Abschnitt weglassen, wenn
  943.                es keinen solchen zweiten Linux-Kernel gibt.
  944.                Heben Sie die /etc/lilo.conf gut auf, des weiteren eine Bootdiskette
  945.                fⁿr Ihr Linux! Gerade Windows 95/98 neigt verschiedentlich dazu,  fremde"
  946.                MBRs kurzerhand zu eliminieren. Wenn Sie Linux danach noch mit einer
  947.                Bootdiskette starten k÷nnen, ist dieses Problem rasch behoben mit dem ein-
  948.                fachen Befehl
  949.                   erde: # /sbin/lilo
  950.  
  951.                4.7.2 Windows NT und Linux auf einer Festplatte
  952.                1. M÷glichkeit: Zum Booten wird der Bootmanager von NT benutzt. Dieser
  953.                   kann neben Bootsektoren auch Abbilddateien solcher Bootsektoren star-
  954.                   ten. Mit den folgenden Schritten lΣsst sich eine Koexistenz von Linux und
  955.                   Windows NT erreichen:
  956.                    * Installation von NT.
  957.                    * Einen DatentrΣger (Festplatten-Partition oder fehlerfreie Floppy) be-
  958.                      reithalten mit einem Dateisystem, das Linux beschreiben und NT lesen
  959.                      kann, z. B. FAT.
  960.                    * Linux wie  ⁿblich" installieren (als Root-Partition nehmen wir hier im
  961.                      Beispiel mal /dev/sda3 an). FAT-DatentrΣger (z. B. unter /dosa)
  962.                      mounten (zum Mounten allgemein vgl. Abschnitt 19.11.2 auf Sei-
  963.                      te 493). Achtung: nicht die verfΣlschenden mount-Optionen
  964.                      conv=auto oder conv=text verwenden!
  965.                    * LILO in der Linux-Rootpartition (also /dev/sda3) installieren,
  966.                      nicht in den MBR (/dev/sda)! Sie haben dabei nach wie vor die
  967.  
  968. 132
  969.  
  970.  
  971.  
  972.                                                                    4.7. Beispielkonfigurationen
  973.  
  974.          M÷glichkeit, fⁿr LILO eine Auswahl unter mehreren Linux-Kernel-
  975.          images zu konfigurieren. Als Beispiel fⁿr eine lilo.conf siehe
  976.          Datei 4.7.1.
  977.  
  978. # LILO Konfigurations-Datei: Rootpartition /dev/sda3
  979. #                                         startbar machen
  980. # Start LILO global Section
  981. boot=/dev/sda3                                 # Installationsziel
  982. backup=/boot/boot.sda3.980428 # Backup fⁿr den vorigen
  983.                                            # Bootsektor
  984. prompt
  985. timeout=100              # Warten am Prompt: 10 s
  986. vga = normal             # force sane state
  987. # End LILO global section
  988. # Linux bootable partition config begins
  989. image = /boot/vmlinuz                     #      default image to boot
  990.         root = /dev/sda3                  # Root-Partition hierher!
  991.         label = Linux
  992. # Linux bootable partition config ends
  993.  
  994. Datei 4.7.1: lilo.conf zum Startbar-Machen einer Linux-Rootpartition
  995.  
  996.  
  997.       * Kopieren des LILO-Bootsektors in eine Datei auf dem FAT-DatentrΣ-
  998.          ger, z. B.
  999.      erde: # dd if=/dev/sda3 of=/dosa/bootsek.lin bs=512 count=1
  1000.  
  1001.          Dieser Schritt, wie auch der folgende, muss natⁿrlich nach jedem Ker-
  1002.          nel-Update wiederholt werden!
  1003.       * NT booten. Die Datei bootsek.lin vom FAT-DatentrΣger ins
  1004.          Hauptverzeichnis des NT-Systemlaufwerks kopieren, falls die Datei
  1005.          nicht schon dort ist.
  1006.       * In der Datei boot.ini (Attribute setzen) folgenden Eintrag am Ende
  1007.          ergΣnzen:
  1008.          c:\bootsek.lin="Linux"
  1009.  
  1010.       * Beim nΣchsten Booten sollte ¡ wenn alles geklappt hat ¡ ein entspre-
  1011.          chender Eintrag im NT-Bootmanager vorhanden sein!
  1012. 2. M÷glichkeit, leider nicht immer praktikabel: LILO im MBR installieren
  1013.       und fⁿr Windows NT so tun, als sei es DOS (wie im vorigen Beispiel);
  1014.       aber Achtung: Dies scheint bei neueren NT-Versionen nicht mehr zu funk-
  1015.       tionieren, da es nur zu starten scheint, wenn es spezielle (undokumentier-
  1016.       te) Sequenzen im MBR findet, von denen LILO leider nichts wei▀ :-(
  1017.  
  1018. Windows NT (3.5* und 4.0) kennt die von Linux verwendeten Partitionsty-
  1019. pen 82 und 83 nicht! Achten Sie darauf, dass kein NT-Programm die Par-
  1020. titionstabelle dahingehend  repariert": es droht Datenverlust! Halten Sie
  1021. sicherheitshalber gⁿltige Backups des LILO-MBR bereit.
  1022.  
  1023.  
  1024.                                                                                            133
  1025.  
  1026.  
  1027.  
  1028. 4. Booten und Bootmanager
  1029.  
  1030.                4.7.3 OS/2 und Linux
  1031.  
  1032.                1. M÷glichkeit: Zum Booten wird der Bootmanager von OS/2 benutzt. Die-
  1033.                    ser kann beliebige primΣre und logische Partitionen innerhalb der 1024-
  1034.                    Zylinder-Grenze starten ¡ die Verantwortung dafⁿr, dass sie wirklich
  1035.                    startbar sind, liegt beim Benutzer. Der Bootmanager wird mit dem fdisk
  1036.                    von OS/2 konfiguriert.
  1037.                    Vorbereitung auf Seiten von Linux: Eine primΣre Linux-Partition (ⁿbli-
  1038.                    cherweise: die Root-Partition) mit LILO startbar machen. Geeignet dafⁿr
  1039.                    ist wieder lilo.conf wie in Datei 4.7.1 auf der vorherigen Seite. Aber
  1040.                    vorher gibt es noch etwas zu bedenken ... :
  1041.                    Vorbereitung auf Seiten von OS/2: OS/2 begnⁿgt sich bei der Buch-
  1042.                    fⁿhrung ⁿber die vorhandenen Partitionen (in den MBRs der Festplat-
  1043.                    ten und den Partitionssektoren der erweiterten und logischen Partitionen)
  1044.                    nicht mit den konventionellen, allgemein verstΣndlichen EintrΣgen, son-
  1045.                    dern nutzt freien Platz in diesen Sektoren zum Speichern von Zusatzin-
  1046.                    formationen. Sind diese inkonsistent, so sieht fdisk von OS/2 die Parti-
  1047.                    tionstabelle als fehlerhaft an und verweigert Bootmanager-Dienste. Die
  1048.                    fdisk-Programme anderer Betriebssysteme pflegen diese Zusatzinforma-
  1049.                    tionen natⁿrlich nicht ... Konflikte sind vorprogrammiert.
  1050.                    Daher vor der Linux-Installation zuerst OS/2 laden (das Installationssys-
  1051.                    tem genⁿgt) und die Linux-Partitionen, zumindest die logischen, mit fdisk
  1052.                    von OS/2 anlegen. Dies ergibt zunΣchst weitere OS/2-Laufwerke, die un-
  1053.                    ter UmstΣnden arg st÷ren k÷nnen.
  1054.                    Abhilfe: gleich danach das Linux-Installationssystem (oder das Rettungs-
  1055.                    system) von der SuSE Linux CD laden und fⁿr die Linux-Partitionen mit
  1056.                    fdisk von Linux den Typ in 83 (Linux native) Σndern. Damit werden diese
  1057.                    Partitionen in Zukunft von OS/2 ordnungsgemΣ▀ ignoriert.
  1058.                2. M÷glichkeit: Als Haupt-Bootmanager wird LILO in einer primΣren Parti-
  1059.                    tion der ersten Platte benutzt15. Dies ist ein Spezialfall des nΣchstfolgen-
  1060.                    den Beispiels, in dem auch noch DOS dabei ist.
  1061.  
  1062.                4.7.4 DOS, OS/2 und Linux
  1063.  
  1064.                1. Wenn Sie fⁿr DOS und OS/2 den OS/2 Bootmanager verwendet haben
  1065.                    und ihn weiterverwenden wollen, nehmen Sie am einfachsten Linux in
  1066.                    dessen Start-Menⁿ auf: genauso wie im letzten Beispiel beschrieben.
  1067.                2. M÷glichkeit: Als Haupt-Bootmanager wird LILO in einer primΣren Par-
  1068.                    tition der ersten Platte benutzt.
  1069.                    Das folgende kompliziertere Beispiel fⁿr lilo.conf (Datei 4.7.2
  1070.                    nimmt an, dass die Startpartitionen fⁿr DOS (primΣr) und Linux (pri-
  1071.                    mΣr) auf der ersten, die fⁿr OS/2 (logisch) auf der zweiten Platte liegen
  1072.                    ¡ alle jeweils innerhalb der 1024-Zylinder-Grenze. OS/2 liegt auf der
  1073.                    zweiten Platte, daher wird statt /boot/chain.b der spezielle Loader
  1074.                    /boot/os2_d.b verwendet.
  1075.  
  1076.               15 Weniger gⁿnstig: der MBR, da jede Umpartitionierung mit einem fremden fdisk denselben neu
  1077.                schreiben und damit LILO entfernen k÷nnte.
  1078.  
  1079. 134
  1080.  
  1081.  
  1082.  
  1083.                                                                          4.8. Probleme mit LILO
  1084.  
  1085.    Es ist gleichgⁿltig, ob der MBR-Code von MS-DOS oder OS/2 stammt.
  1086.    In der Partitionstabelle ist mit einem fdisk-Programm die LILO-Partition
  1087.    /dev/sda4 als Startpartition (aktiv) zu markieren.
  1088.  
  1089. # LILO Konfigurations-Datei
  1090. # Start LILO global Section
  1091. boot = /dev/sda4                  # LILO in Linux Root-Partition
  1092. backup = /boot/boot.sda4.970428
  1093. message = /boot/message # Begruessungsbildschirm
  1094. prompt
  1095. delay = 100
  1096. vga       = normal
  1097. ## Linux bootable partition config begins
  1098. image = /boot/vmlinuz
  1099.        label = linux
  1100.        root = /dev/sda4
  1101. # Linux bootable partition config ends
  1102. ## OS/2 bootable partition config begins
  1103. other = /dev/sdb5
  1104.        table = /dev/sdb
  1105.        label = os2
  1106.        loader = /boot/os2_d.b
  1107. # New for LILO v20 and newer: interchange disk drives:
  1108.         map-drive = 0x80          # first hd: BIOS number 0x80
  1109.         to            = 0x81      # second hd: BIOS number 0x81
  1110.         map-drive = 0x81
  1111.         to            = 0x80
  1112. # OS/2 bootable partition config ends
  1113. ## DOS bootable partition config begins
  1114. other = /dev/sda1
  1115.        table = /dev/sda
  1116.        label = dos
  1117. # DOS bootable partition config ends
  1118.  
  1119.        Datei 4.7.2: LILO mit DOS, OS/2 und Linux auf zwei Festplatten
  1120.  
  1121.  
  1122. 4.8 Probleme mit LILO
  1123.  
  1124. Einige Richtlinien
  1125.  
  1126. Zu Beginn ein paar einfache Richtlinien, mit denen die meisten LILO-Pro-
  1127. bleme von vorneherein vermieden werden k÷nnen (entnommen dem LILO-
  1128. Benutzerhandbuch [Alm96]):
  1129.  
  1130.  * Keine Panik! Wenn etwas nicht geht: versuchen Sie erst, den Fehler und
  1131.    die Ursache zu finden; ⁿberprⁿfen Sie die Diagnose und beginnen Sie erst
  1132.    dann mit Ma▀nahmen zur Fehlerbehebung.
  1133.  * Halten Sie stets eine aktuelle und erprobte  Bootdiskette" bereit.
  1134.  
  1135.                                                                                             135
  1136.  
  1137.  
  1138.  
  1139. 4. Booten und Bootmanager
  1140.  
  1141.                   SuSE Linux enthΣlt seit der Version 5.0 auf der Bootdiskette und der
  1142.                   Installations-CD ein selbstΣndiges Linux-System (Rettungssystem, siehe
  1143.                   Abschnitt 16.5 auf Seite 432), mit dem Sie an alle Ihre Linux-Partitionen
  1144.                   wieder herankommen. Mit enthalten ist genⁿgend Werkzeug, um die al-
  1145.                   lermeisten Probleme mit unzugΣnglich gewordenen Festplatten zu l÷sen.
  1146.                 * Lesen Sie die Dokumentation. Vor allem dann, wenn das System nicht tut,
  1147.                   was es Ihrer Meinung nach tun sollte.
  1148.                 * Vor jedem Aufruf des Map-Installers (/sbin/lilo): ⁿberprⁿfen Sie
  1149.                   sorgfΣltig die Konfigurationsdatei /etc/lilo.conf .
  1150.                 * Rufen Sie /sbin/lilo jedesmal auf, wenn irgendein Bestand-
  1151.                   teil der LILO-Startmaschinerie oder die LILO-Konfigurationsdatei
  1152.                   /etc/lilo.conf geΣndert worden ist.
  1153.                 * Aufmerksamkeit ist bei gro▀en oder bei mehreren Festplatten geboten:
  1154.                   berⁿcksichtigen Sie die 1024-Zylinder-Grenze!
  1155.                 * Probieren Sie es ohne und mit Option linear (meist besser: ohne!).
  1156.  
  1157.                4.8.1 Fehlerdiagnose: LILO Start-Meldungen
  1158.                Hier wiederholen wir im Wesentlichen in ▄bersetzung einen Abschnitt aus
  1159.                [Alm96], der LILO-Beschreibung von WERNER ALMESBERGER.
  1160.                Wenn LILO geladen wird, zeigt er das Wort `LILO' an. Jeder Buchstabe
  1161.                entspricht der Vollendung einer spezifischen Phase. Wenn LILO nicht starten
  1162.                kann, bilden die bereits ausgegebenen Buchstaben einen genaueren Hinweis
  1163.                darauf, in welchem Stadium ein Problem aufgetreten ist.
  1164.                (nichts) Kein Teil von LILO wurde geladen. Entweder LILO ist gar nicht
  1165.                   installiert, oder es wurde nicht die Partition mit dem LILO-Bootsektor
  1166.                   gestartet.
  1167.                `L' error ... Die  erste Stufe" wurde geladen und gestartet, aber sie konn-
  1168.                   te die zweite Stufe (/boot/boot.b) nicht laden. Dies weist ⁿblicher-
  1169.                   weise auf einen physikalischen Fehler des Boot-DatentrΣgers oder eine
  1170.                   fehlerhafte Platten-Geometrie hin.
  1171.                `LI' Die zweite Stufe von LILO wurde geladen, konnte aber nicht gestartet
  1172.                   werden. Dies kann verursacht werden durch eine fehlerhafte Platten-Geo-
  1173.                   metrie oder durch Verschieben von /boot/boot.b ohne Neuinstallati-
  1174.                   on von LILO.
  1175.                `LIL' Die zweite Stufe von LILO wurde gestartet, konnte aber die n÷tigen
  1176.                   Daten (Zeiger usw.) nicht aus der Map-Datei laden. Dies wird typischer-
  1177.                   weise verursacht durch einen physikalischen Fehler des Boot-DatentrΣ-
  1178.                   gers oder eine fehlerhafte Platten-Geometrie.
  1179.                `LIL?' Die zweite Stufe von LILO wurde an eine falsche Speicheradresse
  1180.                   geladen. Dies wird typischerweise verursacht durch einen subtilen Fehler
  1181.                   in der Platten-Geometrie oder durch Verschieben von /boot/boot.b
  1182.                   ohne Neuinstallation von LILO.
  1183.                `LIL-' Die Daten in der Map-Datei sind ungⁿltig. Dies wird typischer-
  1184.                   weise verursacht durch einen Fehler in der Platten-Geometrie oder durch
  1185.                   Verschieben von /boot/boot.b ohne Neuinstallation von LILO.
  1186.                `LILO' Alle Teile von LILO wurden erfolgreich geladen.
  1187.  
  1188. 136
  1189.  
  1190.  
  1191.  
  1192.                                                                      4.8. Probleme mit LILO
  1193.  
  1194. Die hΣufigsten Ursachen fⁿr Geometriefehler sind nicht physikalische Defek-
  1195. te oder ungⁿltige Partitionstabellen, sondern Fehler bei der Installation von
  1196. LILO:
  1197.  
  1198.  * Missachtung der 1024-Zylinder-Grenze (s. nΣchsten Abschnitt);
  1199.  * missglⁿckter Versuch, mit LILO von einer logischen Partition zu starten.
  1200.  
  1201. 4.8.2 Die 1024-Zylinder-Grenze
  1202. Wie schon mehrfach betont (z. B. auf Seite 119), muss die gesamte LILO-
  1203. Startmaschinerie, d. h. alle Daten, die LILO zum Starten ben÷tigt, mit BIOS-
  1204. Routinen allein zugΣnglich sein. Welche Festplatten-Bereiche demnach dafⁿr
  1205. in Frage kommen (wir nennen das im folgenden kurz: zulΣssiger Bereich),
  1206. haben wir dort bereits ausgefⁿhrt.
  1207. Welche M÷glichkeiten lΣsst diese EinschrΣnkung nun offen? Eigentlich noch
  1208. eine ganze Menge, wenn man bedenkt, dass nur die Startmaschinerie betrof-
  1209. fen ist. Es gibt kein Gesetz, nach dem diese in der Linux-Rootpartition liegen
  1210. mⁿsste: ja, es ist im Notfall sogar m÷glich (wenn auch nicht ganz ungefΣhr-
  1211. lich), Dateien der Startmaschinerie auf Partitionen fremder Betriebssysteme
  1212. unterzubringen, wenn nur Linux Lese- und Schreibzugriff auf deren Datei-
  1213. systeme hat.
  1214.  
  1215.  Sie mⁿssen sich nur davor hⁿten, den LILO-Bootsektor in eine fremde Par-
  1216.  tition zu installieren, weil damit in der Regel deren Dateisystem beschΣdigt
  1217.  wird!
  1218.  
  1219.  * Die sauberste L÷sung besteht auf jeden Fall darin, bei der Linux-In-
  1220.    stallation eine primΣre Linux-Partition ganz innerhalb des zulΣssigen
  1221.    Bereichs anzulegen und die LILO-Daten (einschlie▀lich des LILO-Boot-
  1222.    sektors) dort unterzubringen. Diese Partition ist bislang meist die Linux-
  1223.    Rootpartition.
  1224.    Seit SuSE Linux 6.0 wird bei der Installation mit YaST eine eigene Parti-
  1225.    tion (/boot) vorgesehen: diese Partition ist lediglich gro▀ genug, um die
  1226.    folgenden Dateien aufzunehmen:
  1227.     ¡ boot.b, map, message,
  1228.     ¡ die Linux-Kernel, die LILO booten soll.
  1229.    Es genⁿgen also wenige Megabytes. Das ganze ⁿbrige System unterliegt
  1230.    dann hinsichtlich der Lokation auf der/den Festplatte(n) keiner EinschrΣn-
  1231.    kung mehr: wenn der Kernel erst mal lΣuft, hat er uneingeschrΣnkten
  1232.    Zugriff auf alle Festplatten im System.
  1233.  
  1234. Aber was tun, wenn fⁿr so eine Partition kein Platz mehr ist? Wenn Sie nicht
  1235. umpartitionieren wollen oder k÷nnen, und auch ein Upgrade auf SCSI oder
  1236. ein modernes BIOS nicht in Frage kommt, gibt es doch noch zwei behelfs-
  1237. mΣ▀ige M÷glichkeiten:
  1238.  
  1239.  * An Stelle von LILO auf der Platte eine Bootdiskette oder, wenn Sie MS-
  1240.    DOS betreiben, loadlin verwenden, um Linux zu booten.
  1241.  
  1242.                                                                                         137
  1243.  
  1244.  
  1245.  
  1246. 4. Booten und Bootmanager
  1247.  
  1248.                 * Die LILO-Startmaschinerie auf einer Nicht-Linux-Partition unterbringen,
  1249.                   die ganz im zulΣssigen Bereich liegt, und auf die Linux schreiben kann
  1250.                   (z. B. ein FAT/VFAT DOS-Laufwerk). Natⁿrlich k÷nnen wir den LILO-
  1251.                   Bootsektor nicht auch dorthin schreiben! So bleiben dafⁿr nur ⁿbrig: der
  1252.                   Anfang einer erweiterten Partition auf der ersten Platte ¡ sofern vor Zy-
  1253.                   linder 1024 ¡ oder der MBR. Nehmen wir an, die betreffende Partition ist
  1254.                   unter /mnt gemountet. LILO soll in den MBR, etwa /dev/hda, und
  1255.                   soll zusΣtzlich DOS von /dev/hda1 booten. Dann ist das Vorgehen wie
  1256.                   folgt:
  1257.  
  1258.                   ¡ Neues Verzeichnis, z. B. /mnt/LINUX anlegen und die eben schon
  1259.                      genannten LILO-Dateien aus /boot dorthin kopieren: boot.b,
  1260.                      map, message, sowie die Chain-Loader fⁿr Ihre anderen Betriebs-
  1261.                      systeme (i. Allg. chain.b) und die Linux-Kernel, die LILO booten
  1262.                      soll.
  1263.                   ¡ Legen Sie eine /mnt/LINUX/lilo.cfg an, in der alle Pfade nach
  1264.                      /mnt/LINUX verweisen (Datei 4.8.1 auf der nΣchsten Seite):
  1265.  
  1266.                # LILO Konfigurations-Datei Fremdverzeichnis
  1267.                # Start LILO global Section
  1268.                boot=/dev/hda                       # Installationsziel
  1269.                backup=/mnt/LINUX/hda.xxxx # backup alter MBR
  1270.                install=/mnt/LINUX/boot.b # Natⁿrlich sind LILO und
  1271.                map=/mnt/LINUX/map                  # Map-Datei in /mnt/LINUX!
  1272.                message=/mnt/LINUX/message # optional
  1273.                prompt
  1274.                timeout=100          # Warten am Prompt: 10 s
  1275.                vga = normal         #
  1276.                # End LILO global section
  1277.                ## Linux bootable partition config begins
  1278.                image = /mnt/LINUX/Erster_Kernel               #    default
  1279.                     root = /dev/Ihr_Root_Device               # Root-
  1280.                Partition hierher!
  1281.                     label = linux
  1282.                # Linux bootable partition config ends
  1283.                ## Systemabschnitte fⁿr weitere Kernel hier:
  1284.                ## Ende Linux
  1285.                # DOS bootable partition config begins
  1286.                other = /dev/hda1             # MSDOS-Systemlaufwerk
  1287.                     label = dos
  1288.                     loader = /mnt/LINUX/chain.b
  1289.                     table = /dev/hda
  1290.                # DOS bootable partition config ends
  1291.  
  1292.                               Datei 4.8.1: lilo.cfg fⁿr fremde Partition
  1293.  
  1294.                   ¡ LILO mit dieser lilo.cfg installieren:
  1295.                      erde: # /sbin/lilo -C /mnt/LINUX/lilo.cfg
  1296.  
  1297. 138
  1298.  
  1299.  
  1300.  
  1301.                                                                       4.8. Probleme mit LILO
  1302.  
  1303.           Danach sollte LILO funktionieren. Booten Sie MS-DOS und schⁿtzen
  1304.           Sie die LILO-Dateien, so gut es geht, gegen Schreibzugriffe. (Zur Er-
  1305.           innerung: jeder solche setzt LILO au▀er Funktion!) Zumindest geben
  1306.           Sie allen Dateien in X:\LINUX (wo X: das eben unter /mnt gemoun-
  1307.           tete MS-DOS-Laufwerk ist) die DOS-Attribute System und Versteckt.
  1308. Abschlie▀end m÷chten wir zum selben Thema noch verweisen auf die zwei
  1309. HOWTOs LILO.gz und Large-Disk.gz in /usr/doc/howto/en/
  1310. mini/.
  1311.  
  1312. 4.8.3 Spezielle Bootprobleme mit Kernel ab 2.0
  1313. Beim Booten mit LILO ¡ egal, ob von Diskette oder Festplatte ¡ treten nach
  1314. dem Laden eines gro▀en Kernels (z. B. SuSE-Installations-Kernel) zum Teil
  1315. Probleme auf :-(
  1316. Zwar kann am LILO-Prompt ein Kernel gewΣhlt werden, der Kernel wird
  1317. auch geladen (es werden einige Punkte angezeigt), aber der Start des Kernels
  1318. klappt nicht. Das hei▀t, bevor die Meldung "uncompressing Linux"
  1319. kommt, stⁿrzt das System mit unterschiedlichen Reaktionen ab.
  1320. M÷gliche Fehlermeldungen oder -erscheinungen:
  1321.  * System bootet neu
  1322.  * System bleibt einfach stehen
  1323.  * "crc-error"
  1324.  * "no free space"
  1325.  * "Error 0x00"
  1326.  * "Error 0x01"
  1327.  * "incomplete literal tree"
  1328. Danach wird zum Teil noch auf die Diskette zugegriffen, aber das System
  1329. steht.
  1330. Die Ursache dafⁿr liegt in einer Kombination aus gro▀en Kernels, LILO und
  1331. mangelhafter Hardware. Es sind grob geschΣtzt ein Prozent der Rechner be-
  1332. troffen. Wir vermuten, dass ein fehlerhaftes BIOS Probleme mit dem schnel-
  1333. len Speicherzugriff hat. ¡ Das Problem tritt nicht auf, wenn
  1334.  * Linux mit Loadlin (Abschnitt 4.9 auf der nΣchsten Seite) geladen wird,
  1335.  * der Kernel z. B. mit
  1336.           erde: # dd if=/boot/vmlinuz of=/dev/fd0
  1337.  
  1338.     auf eine Floppy kopiert und direkt von dort geladen wird,
  1339.  * ein kleinerer Kernel, der mit
  1340.           erde: # make zImage
  1341.  
  1342.     erstellt wurde, mit LILO gebootet wird.
  1343. Folgende BIOS-Einstellungen konnten ebenfalls problemlos booten:
  1344.  * Internal Cache abschalten (disable)
  1345.  * DRAM Precharge Wait State auf 1 und
  1346.  * DRAM Wait Burst Timing auf 0x3333
  1347.  
  1348.                                                                                          139
  1349.  
  1350.  
  1351.  
  1352. 4. Booten und Bootmanager
  1353.  
  1354.                L÷sung
  1355.                ZunΣchst einmal muss ein System installiert werden k÷nnen. Falls Sie nicht
  1356.                mit loadlin (bzw. setup.exe) direkt booten k÷nnen, sollten Sie zur Installation
  1357.                zunΣchst eine alte 1.2.13-Bootdisk verwenden. Falls Sie keine zur Verfⁿgung
  1358.                haben, stellen Sie die BIOS-Parameter um.
  1359.                Nach erfolgreicher Installation, stellt sich die Frage, wie man denn nun sein
  1360.                System booten kann. ZunΣchst bootet man mit demselben Medium wie zur
  1361.                Installation. Mit Loadlin von der DOS-Partition gibt es ja keine Problem. Bei
  1362.                einer Bootdiskette geben Sie dazu als Parameter an:
  1363.                   load_ramdisk=0 root=/dev/<rootpartition>
  1364.                wobei <rootpartition> Ihre Rootpartition, z. B. hda1, ist.
  1365.  
  1366.                4.9 Einrichten des Bootmechanismus mit loadlin
  1367.                Es soll nun mit loadlin noch eine weitere Methode vorgestellt werden, SuSE
  1368.                Linux zu booten. loadlin ist ein DOS-Programm, das in der Lage ist, einen
  1369.                in einem DOS-Verzeichnis gespeicherten Linux-Kernel zu starten. loadlin
  1370.                fⁿgt sich nahtlos in eine bestehende DOS/Windows 9x-Umgebung ein und
  1371.                kann mit Hilfe des Windows Bootmanagers komfortabel gestartet werden.
  1372.                Da kein Eintrag in den  MBR erfolgt, sieht Windows von Linux lediglich
  1373.                eine oder mehrere Partitionen mit ihm unbekannten Kennungen (engl. IDs).
  1374.                Die Gefahr unerwⁿnschter Nebeneffekte aufgrund der Existenz von Linux auf
  1375.                Ihrem System ist so minimiert.
  1376.                Das hier beschriebene Vorgehen funktioniert auf Windows 95 und Win-
  1377.                dows 98. Die gezeigten Konfigurationsdateien wurden unter Windows 95
  1378.                entwickelt; es ist deshalb im folgenden nur von Windows 95 die Rede.
  1379.                Wenn Sie loadlin verwenden m÷chten, um Ihr Linux zu starten, mⁿssen Sie
  1380.                diesen Weg vorbereiten. Je nach Systemgegebenheiten mⁿssen Sie auch eini-
  1381.                ge Startdateien modifizieren.
  1382.                Prinzipiell k÷nnen Sie loadlin auf zwei Arten aktivieren: indem Sie beim
  1383.                Systemstart via Bootmenⁿ zwischen mehreren Konfigurationen wΣhlen oder
  1384.                indem Sie aus dem laufenden System heraus loadlin aktivieren und zu Linux
  1385.                ⁿberwechseln.
  1386.                Beide Methoden haben Ihre Vor- und Nachteile:
  1387.                 * Das Bootmenⁿ spart den Umweg ⁿber ein anderes Betriebssystem, um
  1388.                   Linux zu starten.
  1389.                 * In ein Bootmenⁿ k÷nnen Sie weitere Konfigurationen einbauen und sich
  1390.                   so einen universellen Startmechanismus aufbauen.
  1391.                 * Sie mⁿssen allerdings die Startdateien modifizieren, um ein Bootmenⁿ
  1392.                   aufzubauen; eventuell ist dazu Probieren n÷tig. In den DOS-Hilfedateien
  1393.                   k÷nnen Sie eventuell fⁿndig werden; geben Sie einmal help menu ein.
  1394.                 * Am DOS-Prompt ist der Wechsel zu Linux sehr einfach.
  1395.                 * Unter Windows 95 kann man den Linux-Start sch÷n in die grafische Ober-
  1396.                   flΣche integrieren. Mit einem Doppelklick auf ein Icon k÷nnen Sie zu Li-
  1397.                   nux wechseln. Es ist jedoch auch unter Windows 95 ein Bootmenⁿ m÷g-
  1398.                   lich (Windows 95 enthΣlt DOS 7.0).
  1399.  
  1400. 140
  1401.  
  1402.  
  1403.  
  1404.                                              4.9. Einrichten des Bootmechanismus mit loadlin
  1405.  
  1406.  Verwenden Sie nach M÷glichkeit ein Boot-Menⁿ, wenn Sie nach dem
  1407.  Einschalten direkt Linux booten wollen. Die DOS-Prompt- bzw. Dop-
  1408.  pelklick-Methode kann zusΣtzlich verwendet werden, wenn Sie von
  1409.  DOS/Windows 95 nach Linux wechseln wollen.
  1410.  Mit Startmenⁿs und der Windows 95-Konfiguration kann man sich recht
  1411.  intensiv auseinandersetzen ¡ Sie werden verstehen, dass wir das Thema
  1412.  hier nur recht gradlinig behandeln.
  1413.  
  1414. 4.9.1 Notwendige Dateien fⁿr loadlin
  1415.  
  1416. Das mⁿssen Sie immer tun (unter DOS, Windows 3.x und Windows 95):
  1417.  
  1418. 1. Vermutlich haben Sie loadlin bereits installiert (vgl. Abschnitt 2.5.4 auf
  1419.       Seite 51). Wenn nicht, mⁿssen Sie zuerst loadlin von der CD 1 via setup
  1420.       installieren.
  1421. 2. Wechseln Sie (unter MS-DOS) in das Verzeichnis c:\loadlin. Dort
  1422.       steht eine Datei linux.par. Erstellen Sie mit einem Editor dort eine
  1423.       Datei mit Namen startlin.bat (oder einem anderen, Ihnen passen-
  1424.       den Namen). In die Datei schreiben Sie z. B. eine Zeile wie in Datei 4.9.1.
  1425.  
  1426. c:\loadlin\loadlin @c:\loadlin\linux.par
  1427.  
  1428.             Datei 4.9.1: Beispiel einer Batchdatei fⁿr den Linux-Start
  1429.  
  1430.       Nun editieren Sie in der Datei linux.par die folgende Zeile wie in
  1431.       Datei 4.9.2.
  1432.  
  1433. c:\loadlin\zimage             # first value must be
  1434.                               # the filename of the Linux-kernel
  1435.  
  1436. initrd=c:\loadlin\initrd
  1437.  
  1438. root=/dev/xxx                 # the device which gets moun-
  1439. ted as root FS
  1440.  
  1441. ro                            # mount root read-only
  1442.  
  1443.           Datei 4.9.2: Beispiel einer Parameterdatei fⁿr den Linux-Start
  1444.  
  1445.       Statt xxx tragen Sie den Devicenamen Ihrer Rootpartition ein (Sie hat-
  1446.       ten sich den Namen in Abschnitt 2.10.2 auf Seite 76 aufgeschrieben).
  1447.       Den initrd-Eintrag ben÷tigen Sie nur, wenn Sie beispielsweise SCSI-
  1448.       Unterstⁿtzung gleich beim Booten hinzuladen mⁿssen (zum Konzept
  1449.       der  initial ramdisk" vgl. Abschnitt 16.2 auf Seite 417). Mit der Da-
  1450.       tei startlin.bat k÷nnen Sie Ihr Linux jederzeit vom DOS-Prompt
  1451.       aus starten. Die Datei linux.par wird sowohl von startlin.bat
  1452.       als auch von config.sys verwendet und enthΣlt alle zum Booten
  1453.       von Linux notwendigen Parameter. Wenn Sie mit Linux vertraut ge-
  1454.       worden sind, k÷nnen Sie in linux.par auch andere Boot-Parameter
  1455.  
  1456.                                                                                         141
  1457.  
  1458.  
  1459.  
  1460. 4. Booten und Bootmanager
  1461.  
  1462.                   einfⁿgen und/oder ersetzen. Haben Sie sich spΣter einmal Ihren eige-
  1463.                   nen Kernel gebaut, kopieren Sie diesen vom Linux-Filesystem nach
  1464.                   c:\loadlin\zimage und es wird fortan dieser Kernel gebootet; bei
  1465.                   Bedarf mⁿssen Sie dort auch eine neu generierte initrd ablegen.
  1466.  
  1467.                4.9.2 Bootmenⁿs einrichten
  1468.                So richten Sie ein Bootmenⁿ unter DOS bzw. Windows 3.x ein:
  1469.                1. Als erstes mⁿssen Sie in der Datei c:\config.sys ein Bootmenⁿ
  1470.                   definieren. Tragen Sie dazu etwas Σhnliches wie in Datei 4.9.3 ein.
  1471.  
  1472.                [Menu]
  1473.                menuitem=Win, Windows starten...
  1474.                menuitem=DOS, MS-DOS starten...
  1475.                menuitem=Linux, Linux starten...
  1476.                menucolor=15,1
  1477.                menudefault=Win,5
  1478.                   Datei 4.9.3: Beispiel fⁿr config.sys (1. Teil) fⁿr den Linux-Start
  1479.  
  1480.                   Unter dem Label [Menu] definieren Sie die EintrΣge des Bootmenⁿs,
  1481.                   seine Farbe und nach wie viel Sekunden welcher Menⁿpunkt automatisch
  1482.                   aufgerufen werden soll.
  1483.                2. Weiter unten tragen Sie die Labels [Common], [Win], [DOS] und [Li-
  1484.                   nux] ein. Bei Common schreiben Sie die EintrΣge hin, die immer gelten
  1485.                   sollen; bei den anderen Labels notieren Sie die EintrΣge, welche nur bei
  1486.                   einem bestimmten Eintrag gelten. Verwenden Sie dazu die Zeilen, die in
  1487.                   Ihrer jetzigen config.sys stehen; ein Beispiel zeigt Datei 4.9.4 auf der
  1488.                   nΣchsten Seite.
  1489.                   Speichern Sie die Datei dann ab.
  1490.                3. ╓ffnen Sie jetzt die Datei c:\autoexec.bat. In die Datei mⁿssen
  1491.                   Sie die gleichen Labels schreiben und den Labels EintrΣge zuordnen, die
  1492.                   Notation ist jetzt aber etwas anders. Welches Label im Bootmenⁿ gewΣhlt
  1493.                   wurde, steht in der Variablen %config%. Schreiben Sie vielleicht etwas
  1494.                   wie in Datei 4.9.5 auf der nΣchsten Seite.
  1495.                4. Wenn Sie den Rechner jetzt booten, erscheint das Bootmenⁿ und Sie ha-
  1496.                   ben 5 Sekunden Zeit, einen Eintrag auszuwΣhlen. Nach 5 Sekunden startet
  1497.                   automatisch Windows. Wenn Sie `Linux' auswΣhlen, startet Linux und
  1498.                   wartet auf Ihr Login.
  1499.  
  1500.                4.9.3 Von Windows aus starten
  1501.                So richten Sie ein Start-Icon fⁿr Linux ein, mit dem Sie Linux aus einem
  1502.                laufenden Windows 95-System booten k÷nnen:
  1503.                1. Klicken Sie sich in den Ordner c:\loadlin hinein, markieren Sie die
  1504.                   Datei startlin.bat und wΣhlen Sie im Bearbeiten-Menⁿ `Kopie-
  1505.                   ren' aus.
  1506.                2. Gehen Sie in einen Ordner oder auf den Desktop, je nachdem, wo Sie Ihr
  1507.                   Linux-Icon haben m÷chten. Drⁿcken Sie die rechte Maustaste und wΣhlen
  1508.                   Sie `Verknⁿpfung einfⁿgen'.
  1509.  
  1510. 142
  1511.  
  1512.  
  1513.  
  1514.                                         4.9. Einrichten des Bootmechanismus mit loadlin
  1515.  
  1516. [Common]
  1517. device=c:\dos\himem.sys /testmem:off
  1518. device=c:\dos\emm386.exe noems
  1519. dos=high,umb
  1520. files=30
  1521. buffers=10
  1522. shell=c:\dos\command.com
  1523.  
  1524. [Win]
  1525. devicehigh=c:\dos\dblspace.sys /move
  1526. devicehigh=c:\cd\slcd.sys /D:SONY_000 /B:340 /M:P /V /C
  1527.  
  1528. [DOS]
  1529. devicehigh=c:\dos\dblspace.sys /move
  1530. devicehigh=c:\cd\slcd.sys /D:SONY_000 /B:340 /M:P /V /C
  1531.  
  1532. [Linux]
  1533. shell=c:\loadlin\loadlin.exe @c:\loadlin\linux.par
  1534.  
  1535. [Common]
  1536. rem Bleibt leer
  1537.  
  1538.   Datei 4.9.4: Beispiel fⁿr config.sys (2. Teil) fⁿr den Linux-Start
  1539.  
  1540. @echo off
  1541.  
  1542. rem EintrΣge fⁿr alle Konfigurationen
  1543. switches= /f
  1544. set comspec=c:\dos\command.com
  1545. prompt $p$g
  1546. loadhigh c:\dos\keyb gr,,c:\dos\keyboard.sys
  1547. loadhigh c:\dos\doskey
  1548. set temp=c:\temp
  1549. loadhigh c:\dos\mscdex.exe /D:SONY_000 /E /V /L:H
  1550. c:\logimaus\mouse.exe
  1551.  
  1552. goto %config%
  1553.  
  1554. :Win
  1555. c:\dos\smartdrv.exe a- b- c+ 2048 1024
  1556. path c:\windows;c:\dos;c:\util;
  1557. win
  1558. c:\dos\smartdrv /C
  1559. goto ende
  1560.  
  1561. :DOS
  1562. path c:\dos;c:\util;
  1563. goto ende
  1564.  
  1565. :ende
  1566. echo * Auf Wiedersehen *
  1567.  
  1568.         Datei 4.9.5: Beispiel fⁿr autoexec.bat fⁿr den Linux-Start
  1569.  
  1570.                                                                                    143
  1571.  
  1572.  
  1573.  
  1574. 4. Booten und Bootmanager
  1575.  
  1576.                3. Markieren Sie die gerade eingefⁿgte Verknⁿpfung, drⁿcken Sie die rechte
  1577.                   Maustaste und wΣhlen Sie `Eigenschaften'. Gehen Sie in das Re-
  1578.                   gister `Programm', klicken Sie unten auf den Knopf `Erweitert'.
  1579.                   Kreuzen Sie in der Maske das Feld `MS-DOS-Modus' an. BestΣtigen
  1580.                   Sie mit `OK'.
  1581.                4. ▄ber den Knopf `Anderes Symbol' k÷nnen Sie sich ein sch÷nes
  1582.                   Icon aussuchen und geben Sie der Verknⁿpfung einen passenden Namen.
  1583.                   Fertig!
  1584.                5. Ein Doppelklick auf das neue Symbol bringt eine BestΣtigungsmaske,
  1585.                   dass sich Windows 95 jetzt in den MS-DOS-Modus bemⁿht. Falls Sie
  1586.                   die Maske nervt: Ausschalten in den Eigenschaften der Verknⁿpfung.
  1587.  
  1588.                4.9.4 Das Windows Startmenⁿ
  1589.                So richten Sie ein Startmenⁿ fⁿr Windows 95 ein:
  1590.                1. Zuerst mⁿssen Sie die Datei c:\msdos.sys editieren. Dazu machen
  1591.                   Sie die Datei mittels
  1592.                   C:> attrib -R -S -H c:\msdos.sys
  1593.                   sichtbar. Es ist eine Textdatei, in die Sie einige Zeilen einfⁿgen mⁿssen,
  1594.                   um das Windows 95-eigene Startmenⁿ zu aktivieren. Unter dem Label
  1595.                   [Options] sollte es etwa so aussehen wie in Datei 4.9.6.
  1596.  
  1597.                [Options]
  1598.                BootGUI=0
  1599.                BootDelay=0
  1600.                BootMenu=0
  1601.                Logo=0
  1602.  
  1603.                               Datei 4.9.6: msdos.sys fⁿr den Linux-Start
  1604.  
  1605.                   Der Parameter Logo=0 ist optional und verhindert, dass Windows 95 vor
  1606.                   dem Booten in den Grafikmodus schaltet; das Booten geht dann schneller
  1607.                   und Sie haben weniger ─rger, wenn sie spΣter unter Linux den DOS-
  1608.                   Emulator verwenden wollen.
  1609.                   Der Parameter BootGUI=0 bewirkt, dass Windows 95 direkt in den
  1610.                   DOS-Modus bootet. Nach dem Editieren der Datei setzen Sie die Attribu-
  1611.                   te wieder zurⁿck. Um Windows dann zu starten muss
  1612.                   C:> win
  1613.                   am DOS-Prompt eingegeben werden, aber das tut schon unsere Beispiel-
  1614.                   datei c:\autoexec.bat, wenn Sie im Menⁿ Win95 gewΣhlt haben.
  1615.                2. Dann mⁿssen Sie in der Datei c:\config.sys Ihr eigenes Bootmenⁿ
  1616.                   definieren. Tragen Sie dazu am Anfang der Datei etwa den Inhalt von
  1617.                   Datei 4.9.7 ein.
  1618.                   Unter dem Label [Menu] definieren Sie die EintrΣge des Bootmenⁿs
  1619.                   und nach wie viel Sekunden welcher Menⁿpunkt automatisch aufgerufen
  1620.                   werden soll.
  1621.                3. Weiter unten stehen Labels [Win95], [DOS], [Linux] und [Common].
  1622.                   Bei [Common] schreiben Sie die EintrΣge hin, die immer gelten sollen
  1623.  
  1624. 144
  1625.  
  1626.  
  1627.  
  1628.                                           4.9. Einrichten des Bootmechanismus mit loadlin
  1629.  
  1630. [Menu]
  1631. menuitem=Win95, Windows 95 starten...
  1632. menuitem=DOS, MS-DOS starten...
  1633. menuitem=Linux, Linux starten...
  1634. menudefault=Win95,5
  1635.  
  1636. Datei 4.9.7: Beispiel fⁿr config.sys (1. Teil) fⁿr den Linux-Start unter
  1637. Windows 95
  1638.  
  1639.    (unter Windows 95 werden das nur wenige sein); bei den anderen Labels
  1640.    die EintrΣge notieren, welche nur bei einem bestimmten Eintrag des
  1641.    Bootmenⁿs gelten. Verwenden Sie dazu die Zeilen, die in Ihrer jetzigen
  1642.    config.sys stehen; das Beispiel in Datei 4.9.8 soll nur eine Anregung
  1643.    sein.
  1644.  
  1645. [Win95]
  1646. dos=high,umb
  1647. device=c:\windows\himem.sys /testmem:off
  1648.  
  1649. [DOS]
  1650. device=c:\plugplay\drivers\dos\dwcfgmg.sys
  1651. dos=high,umb
  1652. device=c:\windows\himem.sys /testmem:off
  1653. device=c:\windows\emm386.exe noems I=B000-B7FF
  1654. devicehigh=c:\cdrom\torisan.sys /D:TSYCD3 /P:SM
  1655.  
  1656. [Linux]
  1657. shell=c:\loadlin\loadlin.exe @c:\loadlin\linux.par
  1658.  
  1659. [Common]
  1660. accdate=C+ D+ H+
  1661. switches= /F buffers=20
  1662.  
  1663. Datei 4.9.8: Beispiel fⁿr config.sys (2. Teil) fⁿr den Linux-Start unter
  1664. Windows 95
  1665.  
  1666.    Speichern Sie die Datei dann ab.
  1667. 4. ╓ffnen Sie jetzt die Datei c:\autoexec.bat. In die Datei mⁿssen
  1668.    Sie die gleichen Labels schreiben und den Labels EintrΣge zuordnen, die
  1669.    Notation ist jetzt aber etwas anders. Welches Label im Bootmenⁿ gewΣhlt
  1670.    wurde, steht in der Variablen %config%. Schreiben Sie vielleicht etwas
  1671.    wie in Datei 4.9.9 auf der nΣchsten Seite.
  1672. 5. Wenn Sie den Rechner jetzt booten, erscheint Ihr eigenes Bootmenⁿ.
  1673.    Sie haben 5 Sekunden Zeit zum WΣhlen, dann startet automatisch Win-
  1674.    dows 95. Wenn Sie `Linux' auswΣhlen, startet Linux und wartet auf Ihr
  1675.    Login.
  1676.  
  1677.  
  1678.  
  1679.  
  1680.  
  1681.                                                                                      145
  1682.  
  1683.  
  1684.  
  1685. 4. Booten und Bootmanager
  1686.  
  1687.  
  1688.  
  1689.  
  1690.  
  1691.  
  1692.  
  1693.  
  1694.  
  1695.  
  1696.  
  1697.  
  1698.  
  1699.  
  1700.  
  1701.                @echo off
  1702.                loadhigh keyb gr,,c:\windows\command\keyboard.sys
  1703.                goto %config%
  1704.  
  1705.                :Win95
  1706.                win
  1707.                goto ende
  1708.  
  1709.                :DOS
  1710.                path c:.;d:.;c:\windows\command;c:\util;
  1711.                loadhigh c:\windows\command\mscdex.exe /D:TSYCD3 /L:x
  1712.                loadhigh c:\windows\command\doskey
  1713.                c:\windows\command\mouse.exe
  1714.                goto ende
  1715.  
  1716.                :ende
  1717.                echo * Und jetzt? *
  1718.  
  1719.                Datei 4.9.9: Beispiel fⁿr autoexec.bat fⁿr den Linux-Start unter Win-
  1720.                dows 95
  1721.  
  1722.  
  1723.  
  1724.  
  1725.  
  1726.  
  1727.  
  1728.  
  1729.  
  1730.  
  1731.  
  1732.  
  1733.  
  1734.  
  1735.  
  1736. 146
  1737.  
  1738.  
  1739.  
  1740.