Lilos konfigurationsfil ligger i /etc/lilo.conf. Här ställer du in vilka olika operativsystem som skall finnas vid uppstart. Men du kan även ställa in en del andra saker.Så här kan din lilo.conf se ut:
boot=/dev/hda <--Anger på vilken partition Lilo skall boota Linux ifrån
map=/boot/map <--Instruktioner för boot
install=/boot/boot.b
prompt <-- Visar Lilo promten vid boot
timeout=50 <--Anger hur många sekunder lilo skall vänta innan den bootar på den partition som är default image=/boot/vmlinuz-2.0.32 <--Anger vilken kernel som skall användas
label=linux <--Vilket namn partitionen skall ha vid liloboot
root=/dev/hda2 <--Vilken bootpartition som ska användas
read-only <--Hur filsystemet skall monteras
other=/dev/hda1 <--En annan boot parition, i detta fall DOS
label=dos <--Namnet
table=/dev/hda <--Visar på vilken hårddisk bootblocket ligger
Du använder "image" för Linux partitioner och "other" när det gäller andra filsystem. Om vi i detta fall hade haft "other=/dev/hda" ovanför "image=/boot/vmlinuz så hade DOS partitionen varit default. Om du ändringar i denna så är det viktigt att du kör lilo vid promten i Linux annars så utförs inte ändringarna bootblocket om.
Om du har expansionskort(t.ex nätverkskort) i datorn som inte hittas av linux så kan du här ange kortets IRQ och I/O adresser i lilo.conf så hittas korten:
EX:
image=/boot/vmlinuz
label=linux root=/dev/hda2
read-only
append = "ether IRQ,I/O,eth0" <-- Ether visar att det är ett nätverks-kort.Om du har mer än 64Mb minne så måste du också göra en append.
EX:
append = "mem=98304K" <--Talar om för kerneln att det finns 96Mb RAM.
I lilo.conf kan du också ändra VGA-modet vid uppstarten:
EX:
image=/boot/vmlinuz label=linux root=/dev/hda2 read-only vga=4
Nu skall jag gå igenom hur man kompilerar en ny kärna för Linux. Det kan låta svårt men det är ganska enkelt. Det enda du skall veta är vilken hårdvara du har i datorn och vad du exakt skall göra med Linux. Man kompilerar om kerneln för att den skall vara gjord precis för det systemet du har så att den skall tar mindre minne och bli snabbare. Den kernel som lades in vid installationen har stöd för en hel del hårdvara och annat som gör att den är onödigt stor.
Det första man kolla så
att man installerat kernel-source och kernel-headers. Starta glint
i X-windows och kolla i Base/Kernel. Där ska dom ligga.
Om inte får du installera dom från Redhat skivan,
dom ligger i samma katalog som ovan. Nu skall vi konfigurera den
nya kerneln. Det finns tre sätt att göra det på.
1. Ett helt textbaserat script(inte att rekomendera) 2. Ett grafiskt
gränssnitt i "linux dos" 3. Ett grafiskt gränssnitt
i X-windows. Jag föredrar X-windows gränssnittet.
1. Starta en new shell (nytt skal) i X
2. Gå till katalogen /usr/src/linux
3. Kör kommandoraden: make xconfig eller om ni kör
utanför X: make menuconfig
Nu får du upp Linux Kernel Configurator. Här ställer
du in de olika komponenterna som skall ingå i kerneln. Du
väljer även vilka moduler du vill ha. Moduler är
t.ex drivrutiner, filsystem osv. som man inte behöver jämt
utan kan laddas in när de behövs. Det gör att man
kan ta med de nödvändigaste sakerna i kerneln och ha
moduler som man kan ladda när de behövs. Om detta ska
funka måste du ha yes i alla under "Loadable module
support" fönsteret i Kernel Deamon Configuration. Nu
tänker jag inte gå igenom alla saker för det skulle
bli lite mycket. Det jag rekomenderar är att ni klickar på
Help så får ni upp information. Ni ser också
att det finns tre radioknappar, y, m, och n. Y står för
yes, dvs att drivrutinen etc. kompileras in i kerneln. M står
för module, dvs att drivrutinen etc. blir modul vid kompilering,
och N står för No, dvs, man struntar i drivrutinen
etc. Om du har SCSI-enheter så rekomenderar jag att du kompilerar
in dem i kerneln. När du har konfigurerat klart så
klickar du på Save and Exit. Gör nu som följer:
1. Gå till katalogen /usr/src/linux
2. Kör: make dep sedan make clean
3. Kör: make boot
4. Byt namn på katalogen /lib/modules/2.0.32 (eller
den version du kör) till 2.0.32-old. Om du tidigare gjort
detta så ta bort -old katalogen först.
5. Kör: make modules i /usr/src/linux katalogen
6. Kör: make modules_install
Nu är kompileringen klar.
Om det blir några fel så har du antagligen gjort något
fel i konfigurationen så då är det bara att försöka
lokalisera det och kompilera igen. Nu skall du flytta den kompilerade
kerneln till /boot katalogen, så här:
[root@linux/]#cp /usr/src/linux/arch/i386/boot/zimage /boot/vmlinuz.new
Nu måste vi redigera /etc/lilo.conf, dvs, göra så att linux startar med nya kerneln. Nu ser kanske din lilo.conf ut på följande vis:
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt timeout=50
image=/boot/vmlinuz-2.0.32
label=linux
root=/dev/hda2
read-only
other=/dev/hda1
label=dos
table=/dev/hda
För mer förklaring av lilo.conf läs Lilo Konfiguration. Här är det Linux som är default boot partition och nu ska vi byta ut kerneln. Raden image=/boot/vmlinuz-2.0.32 ska ändras till image=/boot/vmlinuz.new vilket är våran nya kernel. Men ifall att kerneln inte funkar som den ska så gör vi ett till boot val, dvs så vi också kan boota den gamla kerneln. Lägg till detta i lilo.conf:
image=/boot/vmlinuz-2.0.32
label=old
root=/dev/hda2
read-only
Nu kan du skriva old vid
lilo booten så bootas den gamla kerneln. Spara nu lilo.conf
och gå ur programmet. Kör lilo så uppdateras
bootblocket, starta sedan om datorn. Nu är det bara att hoppas
att den nya kerneln fungerar:)