LILO, Linux Crash Rescue HOW-TO

Al Dev (Alavoor Vasudevan) alavoor@yahoo.com, Vertaald door: bokkie@nl.linux.org v5.0, 5 dec 2000

In dit document worden methoden besproken om een hersteloperatie uit te voeren na Linux systeemstoringen. Er kunnen diverse redenen zijn voor linux systeemstoringen - LILO is geruïneerd, of het lukt niet linux te booten, of de Master Boot Record (MBR) is beschadigd, of linux slaagt er niet in te booten als een ander besturingssysteem, zoals Windows NT, is geïnstalleerd, waardoor LILO of de MBR wordt gewist.

Inhoudsopgave

1 Introductie 1

1.1 Snelle stappen naar herstel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Voorzorgsmaatregelen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3 LILO verwijderen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.4 Gebruikelijke fouten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Gerelateerde URL’s 5

3 Andere formaten van dit document 5

4 Copyright 7

1 Introductie

Je kunt ongelukken niet voorkomen en als het gebeurt bij linux systemen dan kan het de master boot record (MBR) of LILO (Linux boot loader) beschadigen. Er kunnen situaties ontstaan waarbij linux vanwege gebreken aan de harddisk niet zal booten. LILO kan ook falen als je per ongeluk de harddisk herpartitioneert of je een ander extra besturingssysteem, zoals Windows 98/NT op de linux computer installeert.

Dit document reikt je een aantal ideeën aan, tips en een snelle leidraad om snel een hersteloperatie uit te voeren zonder honderden pagina’s documentatie over LILO of linux door te hoeven nemen.

1.1 Snelle stappen naar herstel

Volg deze stappen voor een herstel van LILO- of systeemstoringen.

1. SCENE 1: Als je systeem niet boot - Haal de tomsrtbt floppy op <http://www.toms.net/rb> Boot met tomsrtbt floppy Gebruik fdisk /dev/hda om naar de partities te zoeken Probeer als volgt achter de rootpartitie te komen:

     bash# fdisk /dev/hda
     bash# mkdir /dev/hda1 /test
     bash# ls /test

Als het goed is zie je de rootpartitie als volgt weergegeven:
bin   fd    lib   mnt  proc  sbin  usr
boot  dev   etc   home  lost+found  opt  root  tmp   var

Als dit geen rootpartitie is, probeer dan de volgende partitie /dev/hda2. Probeer vervolgens hda3, hda4, hda5, enz.. totdat je de rootpartitie vindt. Herhaal dit voor andere devices, zoals hdb, hdc, hdd, enz.. als je het nog steeds niet hebt gevonden. Ook zijn de /usr, /var en /boot partitie nodig aangezien deze vereist zijn voor het aanmaken van de nieuwe lilo configuratie. In mijn geval is de rootpartitie /dev/hda4 die in de voorbeelden hieronder wordt gebruikt:

 bash# mkdir /hda4
 bash# mount /dev/hda4 /hda4
 bash# cat /hda4/etc/fstab
 Lees de uitvoer van fstab en mount zoals hieronder weergegeven de partities.
 bash# mount /dev/hda5 /hda4/boot
 bash# mount /dev/hda6 /hda4/usr
 bash# mount /dev/hda7 /hda4/var
 bash# mount /dev/hda8 /hda4/opt
 bash# mount /dev/hda9 /hda4/root
 bash# mount /dev/hda10 /hda4/home

Wijzig /etc/fstab (niet /hda4/etc/fstab) en plaats hierin het volgende (hiergegeven voorbeeldcode) -

        /dev/hda5  /hda4/boot      ext2 defaults 1 1
        /dev/hda6  /hda4/usr       ext2 defaults 1 1
        /dev/hda7  /hda4/var       ext2 defaults 1 1
        /dev/hda8  /hda4/opt       ext2 defaults 1 1
        /dev/hda9  /hda4/root      ext2 defaults 1 1
        /dev/hda10 /hda4/home      ext2 defaults 1 1
        /dev/hda11 /hda4/win95part vfat defaults 1 1
Op mijn computer bevat hda4 de linux boot/root partitie en
hda1 het windows 95 vfat systeem.
 bash# mkdir /hda4/win95part
 bash# mount /hda4/win95part
 En repareer het systeem met de opdracht fsck of e2fsck.
 bash# man fsck
 bash# man e2fsck

2. SCENE 2: Als LILO niet werkt. Volg scene 1 en als dat niet werkt, dan

bash# mkdir /hda4
bash# mount /hda4
bash# mount -a
bash# chroot /hda4 /sbin/lilo -q
bash# man chroot
bash# chroot /hda4 /sbin/lilo

Als alternatief kun je direct gebruik maken van /sbin/lilo in plaats van chroot. De -r optie van lilo doet in feite een chroot. Het is zeer sterk aan te bevelen dat je gebruik maakt van chroot, in plaats van lilo -r, aangezien het prettiger is en je kunt er makkelijker fouten mee afvangen.

bash# man lilo
bash# /sbin/lilo -r /hda4

3. SCENE 3: Als LILO niet werkt.. Als scene 1 en 2 niet werken, en je de bootdisk hebt gemaakt met ‘mkbootdisk’ (tijdens de installatie of door middel van ‘man mkbootdisk’), boot hier dan mee en repareer je partities. mkbootdisk zit in het mkbootdisk*.rpm package, je moet het installeren.

4. SCENE 4: Als het met scene 1, 2, of 3 niet lukte en je hebt geen bootdisk Als je een andere computer met daarop linux draaiend hebt, log dan in als root en geef op

bash$ man mkbootdisk
bash# cp /etc/lilo.conf /etc/lilo-original.conf

Wijzig het bestand /etc/lilo.conf, plaats hierin de naam van de rootpartitie, zoals verkregen in ’scene 1’, doe een lege diskette in het diskettestation en geef de opdracht

bash# mkbootdisk /dev/fd0

Zorg ervoor dat je /etc/lilo-original.conf terug kopieert naar /etc/lilo.conf!! Gebruik deze diskette voor scene 3

5. SCENE 5: Als het met de scenes 1, 2, 3 en 4 niet lukt, probeer dan het volgende Stap 1: Boot tomsrtbt en mount de partities en maak een backup van de rootpartitie naar een andere partitie met diskruimte met de commando’s -

        Wijzig /etc/fstab en plaats hierin (gegeven voorbeeldcode) -
                /dev/hdb1 /b1 vfat defaults 1 1
bash$ mkdir /b1; mount /b1
bash$ cd /
bash$ tar cvf /b1/root-a4.tar   a4

Stap 2: Doe de Linux cdrom in het station, reboot en installeer redhat linux op /dev/hda4 (maar installeer GEEN extra packages, je hoeft alleen de root bootsystemen, en LILO manager te installeren (dat is een absoluut minimum). Hiermee zal LILO ook op de harddisk worden geïnstalleerd. Boot nu linux en login als root en geef de opdracht -

bash$ man mkbootdisk
bash# cp /etc/lilo.conf /etc/lilo-original.conf

Opmerking: Je MOET er aan denken lilo-original.conf terug te kopiëren naar lilo.conf! Wijzig het bestand /etc/lilo.conf en plaats hierin de naam van de rootpartitie zoals je deze in ’scene 1’ verkreeg, doe een lege diskette in het station en geef dan op -

bash# mkbootdisk /dev/fd0
bash# cp /etc/lilo-original.conf /etc/lilo.conf

Gebruik deze diskette voor de probleemcomputer en test deze bootdiskette om te zien of het werkt en zet dan alle bestanden terug waarvan je met behulp van tar op /b1/root-a4.tar zoals aangegeven in stap 1 een backup hebt gemaakt.

1.2 Voorzorgsmaatregelen

Je zou de volgende voorzorgsmaatregelen moeten nemen om problemen in de toekomst te tackelen.

• Je MOET van tijd tot tijd een bootdisk aanmaken en wanneer je wijzingen aan de partitie aanbrengt. Doe een lege diskette in het diskettestation en geef dan de opdracht -

bash$ man mkbootdisk
bash$ mkbootdisk --help
bash$ mkbootdisk --device /dev/fd0 2.2.12-20

• Je moet de tomsrtbt bootfloppy bij de hand hebben. Breng een bezoek aan <http://www.toms.net/

rb>

• Je moet de Yard rescue- en bootfloppy bij de hand hebben. Breng een bezoek aan <http://www.

croftj.net/~fawcett/yard>

• Backup /root en /boot directory’s. Boot de Tomsrtbt floppy en

bash# vi /etc/fstab
En plaats daarin deze regels -
                /dev/hda1 /a1 vfat defaults 1 1
                /dev/hdb1 /b1 vfat defaults 1 1
In mijn geval had hda1 de linux root partitie '/'
bash# cd /
bash# tar cvf /b1/linux-root-partition-hda1.tar  a1
bash# tar cvf /b1/linux-boot-partition-hda1.tar  a1/boot

1.3 LILO verwijderen

Je kunt de bootsector vervangen door de DOS bootloader door het uitvoeren van de DOS-opdracht:

   FDISK  /MBR

MBR staat voor "Master Boot Record".

Zie ook de LILO documentatie onder linux in /usr/doc/lilo* voor andere methoden om LILO te de-installeren. En zie tevens ‘man lilo’.

1.4 Gebruikelijke fouten

Na het wijzigen van /etc/lilo.conf MOET je lilo opstarten om ervoor te zorgen dat de wijzigingen effect hebben. Het is een zeer gebruikelijke fout van nieuwe gebruikers. Typ -

bash# lilo -v -v -v

2 Gerelateerde URL’s

Bezoek de volgende plaatsen welke zijn gerelateerd aan LILO, Rescue Linux, crash herstel:

• Mini Lilo HOWTO op <http://www.linuxdoc.org/HOWTO/mini/LILO.html>
• Bootdisk-HOWTO op <http://www.metalab.unc.edu/LDP/HOWTO/Bootdisk-HOWTO/index.html>
• Voorgefabriceerde bootdisks op <http://www.linuxdoc.org/HOWTO/Bootdisk-HOWTO/a1277.html>
• Tomsrtbt’s bootdiskette <http://www.toms.net/rb>
• Yard rescue- en bootdiskette <http://www.croftj.net/~fawcett/yard>
• BootPrompt-HOWTO op <http://www.linuxdoc.org/HOWTO/BootPrompt-HOWTO.html>
• Multiboot met LILO mini HOWTO op  <http://www.linuxdoc.org/HOWTO/mini/
  Multiboot-with-LILO.html>
• Linux+WinNT mini HOWTO op <http://www.linuxdoc.org/HOWTO/mini/Linux+WinNT.html>
• Linux goodies main site <http://www.aldev.8m.com>
• Linux goodies mirrorsite <http://aldev.webjump.com>
• Vim kleurenteksteditor voor C++, C <http://metalab.unc.edu/LDP/HOWTO/Vim-HOWTO.html>

3 Andere formaten van dit document

Dit document is in 11 verschillende formaten gepubliceerd, te weten - DVI, Postscript, Latex, Adobe Acrobat PDF, LyX, GNU-info, HTML, RTF(Rich Text Format), Plain-text, Unix man pages en SGML.

• Je kunt dit HOWTO document ophalen als een enkel getarred bestand in HTML, DVI, Postscript of

  SGML formaat vanaf - <ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/other-formats/>
• Een versie in gewone tekst is te vinden in: <ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO>

• Vertalingen naar andere talen zoals Frans, Duits, Spaans, Chinees, Japans zijn te vinden in <ftp:

//sunsite.unc.edu/pub/Linux/docs/HOWTO> Alle hulp voor het vertalen naar andere talen is welkom. Dit document is geschreven met behulp van een tool genaamd de "SGML-Tools"welke kan worden opgehaald vanaf - <http://www.sgmltools.org> Voor het compileren van de source gebruik je de volgende commando’s

• sgml2html LILO-crash-rescue-HOWTO.sgml (genereren html-bestand)

• sgml2rtf LILO-crash-rescue-HOWTO.sgml (genereren RTF-bestand)

• sgml2latex LILO-crash-rescue-HOWTO.sgml (genereren latex bestand) LaTeX documenten kunnen worden geconverteerd naar PDF bestanden door er eenvoudigweg Postscript uitvoer van te produceren met behulp van sgml2latex ( en dvips) en de uitvoer te gebruiken met de Acrobat distill ( <http://www.adobe.com>) opdracht zoals met:

bash$ man sgml2latex
bash$ sgml2latex filename.sgml
bash$ man dvips
bash$ dvips -o filename.ps filename.dvi
bash$ distill filename.ps
bash$ man ghostscript
bash$ man ps2pdf
bash$ ps2pdf input.ps output.pdf
bash$ acroread output.pdf &

Of je kunt de Ghostscript opdracht ps2pdf gebruiken. ps2pdf is werkbestanddeel voor praktisch alle functionaliteit van Adobe’s Acrobat Distiller product: het converteert PostScript bestanden naar Portable Document Format (PDF) bestanden. ps2pdf is als een zeer klein commando-script (batch bestand) geïmplementeerd dat Ghostscript aanroept, waarbij het een speciaal üitvoerdevice"selecteert, genaamd pdfwrite. Om ps2pdf te kunnen gebruiken, moet het pdfwrite device zijn opgenomen in de makefile wanneer Ghostscript wordt gecompileerd; Zie voor details de documentatie over het bouwen van Ghostscript.

Dit howto document is te vinden op

   • <http://metalab.unc.edu/LDP/HOWTO/LILO-crash-rescue-HOWTO.html>

Dit document is ook te vinden op de volgende mirrorsites -

   • <http://www.caldera.com/LDP/HOWTO/LILO-crash-rescue-HOWTO.html>
   • <http://www.WGS.com/LDP/HOWTO/LILO-crash-rescue-HOWTO.html>
   • <http://www.cc.gatech.edu/linux/LDP/HOWTO/LILO-crash-rescue-HOWTO.html>
   • <http://www.redhat.com/linux-info/ldp/HOWTO/LILO-crash-rescue-HOWTO.html>

• Andere mirror-sites in de buurt (netwerk-adres-wijsheid) zijn te vinden op <http://metalab.unc. edu/LDP/mirrors.html> selecteer een site en ga naar de directory /LDP/HOWTO/LILO-crash-rescue-HOWTO.html

Gebruik het xdvi-programma om dit document in het dvi-formaat te bekijken. Het xdvi-programma is te vinden in het tetex-xdvi*.rpm package in Redhat Linux wat kan worden gevonden via de ControlPanel | Applications | Publishing | TeX menu buttons.

             Geef het volgende commando om het dvi-document te lezen -
                     xdvi -geometry 80x90 howto.dvi
             En pas de grootte van het scherm met de muis aan.
             Zie de manpage over xdvi.
             Gebruik de pijltjestoetsen, Page Up, Page Down keys, om door
             het document te manoeuvreren, je kunt ook de
             'f', 'd', 'u', 'c', 'l', 'r', 'p', 'n' letter
             toetsen gebruiken om naar boven, onder, het midden, de volgende
             pagina, vorige pagina, enz te gaan.
             Druk op 'x' om het expert-menu uit te schakelen.

Je kunt het postscript-bestand lezen met behulp van het programma ’gv’ (ghostview) of ’ghostscript’. Het ghostscript programma is te vinden in het ghostscript*.rpm package en het gv programma is te vinden in het gv*.rpm package in Redhat Linux welke kan worden gelokaliseerd via de ControlPanel | Applications | Graphics menu buttons. Het gv programma is veel gebruikersvriendelijker dan ghostscript. Ghostscript en gv zijn ook voor andere platformen beschikbaar zoals OS/2, Windows 95 en NT.

             Geef het volgende commando om het postscript document te lezen -
                     gv howto.ps
             Met gebruik van ghostscript geef je op -
                     ghostscript howto.ps

Je kunt het HTML-formaat document lezen met Netscape Navigator, Microsoft Internet explorer, Redhat Baron Web browser of enige andere webbrowser.

Je kunt de latex, LyX uitvoer lezen met LyX een X-Window front end naar latex.

4 Copyright

Copyright beleid is GNU/GPL zoals door de LDP (Linux Documentation project). LDP is een GNU/GPL project. Aanvullende verzoeken bestaan daaruit dat de naam, het emailadres van de auteur en deze copyrightmelding op alle kopieën behouden blijven. Als je wijzigingen aanbrengt of dit document aanvult, laat dit dan aan alle auteurs van dit document weten. Merknamen, in dit document genoemd, zijn in eigendom van hun respectieve eigenaren.