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.
Volg deze stappen voor een herstel van LILO- of systeemstoringen.
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
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
/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
bash# mkdir /hda4 bash# mount /hda4 bash# mount -a bash# chroot /hda4 /sbin/lilo -q bash# man chroot bash# chroot /hda4 /sbin/lilo
bash# man lilo bash# /sbin/lilo -r /hda4
bash$ man mkbootdisk bash# cp /etc/lilo.conf /etc/lilo-original.conf
bash# mkbootdisk /dev/fd0
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
bash$ man mkbootdisk bash# cp /etc/lilo.conf /etc/lilo-original.conf
bash# mkbootdisk /dev/fd0 bash# cp /etc/lilo-original.conf /etc/lilo.conf
Je zou de volgende voorzorgsmaatregelen moeten nemen om problemen in de toekomst te tackelen.
bash$ man mkbootdisk bash$ mkbootdisk --help bash$ mkbootdisk --device /dev/fd0 2.2.12-20
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
Je kunt de bootsector vervangen door de DOS bootloader door het uitvoeren van de DOS-opdracht:
FDISK /MBR
Zie ook de LILO documentatie onder linux in /usr/doc/lilo* voor andere methoden om LILO te de-installeren. En zie tevens `man lilo'.
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