Som tidligere nævnt starter vi med at fremstille en bootdiskette,
den fremstilles således. Sæt en blank diskette i diskette-drevet
og i din terminal skriver du
mke2fs /dev/fd0 -> klik Enter
Du vil nu se at der bliver oprettet ext2 filsystem på din diskette,
når det er sket mounter du disketten med kommandoen
mount /dev/fd0 /mountpoint/floppy -> klik Enter
(Mountpoint kan være forskelligt)
Opret mappen boot på din diskette med kommandoen mkdir /mnt/floppy/boot
Opret mappen grub på din diskette med kommandoen mkdir /mnt/floppy/boot/grub
Det er ikke alle distroer der har grub placeret i /usr/share der er nødvendigt at du selv undersøger det for at angive den rigtige sti, men i eksemplet forudsætter vi at grub er placeret i /usr/share
Så skal stage1 kopieres til din diskette det gøres med kommandoen
cp /usr/share/grub/i386-pc/stage1 /mnt/floppy/boot/grub
derefter skal stage2 kopieres til din diskette det gøres med kommandoen
cp /usr/share/grub/i386-pc/stage2 /mnt/floppy/boot/grub
Hvis du er ved at finde det uoverskueligt kan du herunder se de kommandoer
du skal bruge
| # mkdir /mnt/floppy/boot
# mkdir /mnt/floppy/boot/grub # cp /usr/share/grub/i386-pc/stage1 /mnt/floppy/boot/grub # cp /usr/share/grub/i386-pc/stage2 /mnt/floppy/boot/grub |
Så er vi ved at være klar til at færdiggøre
din diskette, du er sikkert stadig logget ind som root og din diskette
sidder i drevet, du åbner din terminal
og skriver grub Det medfører forhåbentlig at du
får en hilsen der ser således ud
GRUB version 0.5.96.1 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first
word, TAB
lists possible command completions. Anywhere else
TAB lists the possible
completions of a device/filename. ]
grub>
Nu fuldender du linien så der står grub> root (fd0)
-> Enter
Nu fuldender du linien så der står grub> setup (fd0)
-> klik Enter
Nu fuldender du linien så der står grub> quit ->
klik Enter
Så er din diskette klar til at boote et system men det skal kun
forstås på den måde at det giver dig mulighed for at
boote individuelt hvis dit system er gået ned,
i det her tilfælde er årsagen den at du skal øve
dig på grub men det er helt konkret det der menes da jeg tidligere
skrev
| Grub har en speciel interaktiv ”konsol mode” der tillader dig at ”efter indlæse” en kernel og vælge en boot partition |
grub leder default efter disse filer på den partition eller disk som du har specificeret som root i dette tilfælde altså (fd0)
kommandoen setup (fd0) bevirkede at du installerede grub på din diskettes MBR (master boot record)
kommandoen grub> quit bevirkede at du afsluttede grub
Før du kan begynde at bruge grub er der et par ting du skal have
styr på. Du skal vide hvilken partition du har installeret din Linux
kernel på og du skal vide dit systems rodpartition, endelig skal
du være opmærksom på om der skal tilføjes argumenter
for andre processer der skal ske under start-up proceduren.
Alle disse oplysninger vil kunne se i din /etc/lilo.conf jeg går
ud fra at du har lilo som bootloader på nuværende tidspunkt
men hvis du har grub kan du se de samme oplysninger i /boot/grub/menu.lst,
du skal ligeledes kende betegnelsen på din initrd som ligeledes ligger
i /boot.
Initrd image er et kernel-specifik image der
tillader nogle setup funktioner sker før root filsystemet er mountet
START GRUB
Nu skulle du være klar til den store generalprøve, du har disketten i drevet og din computer er sat til at boote fra floppy så du genstarter computeren
Når disketten er indlæst vil du se en besked på skærmen der oplyser at stage 1 og stage 2 er indlæst, herefter følger en remse som nedenstående
GRUB version 0.5.96.1 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first
word, TAB
lists possible command completions. Anywhere else
TAB lists the possible
completions of a device/filename. ]
grub>
Når man taler om root i forbindelse med grub menes der den partition
der indeholder din Linux kernel, nogle distroer opretter en separat partition
som indeholder Linux kernel og boot information i øvrigt, hvis du
kører et sådan system så er det den partition der bliver
opfattet som root når vi taler grub, og for at det ikke skal være
løgn så har grub også den særhed at den begynder
med 0 (nul) både når det gælder harddisk og partitioner
det er en særhed du bør huske den optræder oftere end
man forestiller sig. Men mere om det senere vi vender tilbage til terminalen
hvor du fortsætter linien så der står
Grub> root ( -> klik Tabulator
Her løb du sikkert ind i et mindre problem, nemlig at du ikke
har fået indlæst dit DK-tastatur så du bliver tvunget
til at bruge UK-tastatur indtil din kernel bliver indlæst men det
begrænset hvor meget du skal skrive
| For de meget utålmodige er her ændringer der er på
dit tastatur for denne lille øvelse
( = ) ) = shift + = = = tasten med følgende tegn ´`| brug ikke shift / brug nummertastaturet Det er tegn med sat med rødt der angiver hvilket taster du skal bruge for at få DK tegnsætning |
Du vil nu få listet de harddiske der kører på
systemet hd0 =(hda) hd1 = (hdb) osv du skal indsætte den harddisk
hvor har den partition
der indeholdet den kernel der skal boote computeren, bliv ikke forvirret
jeg viser et eksempel senere så bliver det mere overskueligt,
vi forudsætter at du kun har en harddisk
Du vil nu få listet alle partitionerne på (hd0, =(/dev/hda)
det kunne se ud som nedenstående
Possible partitions are:
Partition num: 0, Filesystem type is ext2fs, partition
type 0x83
Partition num: 1, Filesystem type unknown, partition
type 0x82
Partition num: 2, Filesystem type unknown, partition
type 0x7
Partition num: 4, Filesystem type is reiserfs, partition
type 0x83
Partition num: 5, Filesystem type is reiserfs, partition
type 0x83
Hvis vi gjorde det tanke eksperiment at du i stedet for at taste grub havde tastet fdisk ville Linux om præcis den samme harddisk give disse oplysninger
/dev/hda1, Filesystem type is ext2fs, partition type 0x83
/dev/hda2, Filesystem type unknown, partition type 0x82
/dev/hda3, Filesystem type unknown, partition type 0x7
/dev/hda5, Filesystem type is reiserfs, partition type
0x83
/dev/hda6, Filesystem type is reiserfs, partition type
0x83
Hvis vi nøjes med at koncentrere os om den sidste partition på
ovennævnte harddisk kan du se at Linux betegner den som /dev/hda6
altså den 6. partition
hvorimod grub betegner den som partition num: 5. Hvis du tæller
partitionerne vil du se at grub rammer rigtigt
Vi vedtager nu for eksemplets skyld at din Linux kernel er placeret
på /dev/hda6
Da jeg begyndte på de sidste noter havde jeg lige skrevet
Grub> root ( -> klik Tabulator
-> hvis du kun har en harddisk -> klik Tabulator indtil du får
alle dine partitioner listet
Vi har som tidligere nævnt valgt partition: 5 (/dev/hda6)
til at være den partition der indeholder din Linux kernel, så
du indsætter et 5 efter kommaet og afslutter parentesen
Din linie skal nu således ud
Grub> root (hd0,5) -> klik Enter
og der kvitteres med følgende linie
Filesystem type is ***, partition type 0x83 (*** angiver det filsystem grub har fundet på den valgte partition)
Nu er det tid at indlæse din Linux kernel, jeg går ud fra
at du har fundet ud af hvad den hedder, ellers er det nu, du kan finde
svaret i /boot
| Jeg kører SuSE og jeg ved hvad den hedder så jeg fortsætter
den linie der nu er fremme
Grub> kernel /boot/vmlinuz root=/dev/hda6 -> klik Enter Nu skal dit initrd image indlæses, du fuldender den nye
linie så der står
Og hvorfor skrev jeg så det ?? det gjorde jeg fordi min kernel
hedder vmlinuz den er placeret i /boot som er placeret i roden som er placeret
på den 6. partition. Præcis det samme gælder for initrd
|
Det er vigtigt at du er omhyggelig med at angive den korrekte sti til den partition hvor din Linux kernel er placeret
Så er det tid at boote, det gøres ved at du skriver boot -> klik Enter har du fulgt anvisningen vil din computer starte.
Nu er det naturligvis ikke holdbart i længden med alt det skriveri
men forsøget viser os at har du en diskette med stage1 og stage2
ja så kan du boote en Linux installation, vi iler straks videre
med at udvide vores diskette således at den kan boote computeren.
Til det brug er det nødvendig at du opretter en fil så
du vælger dit tekstredigerings værktøj og laver en fil
som skal hedde menu.lst
Du indsætter disse linier i menu.lst
title linux
kernel /boot/vmlinuz root=/dev/hda6 (du
skal stadig være opmærksom på at stien skal passe til
dit system)
initrd /boot/initrd
De sidste 2 linier kan du sikkert genkende det var dem du skrev da du bootede din computer før
Det er en fil som vi skal bygge lidt på efterhånden som
tingene skrider frem men her nu skal du skrive præcis det samme som
du gjorde for at boote computeren
Gem filen på computeren i /boot/grub og lav samtidig en kopi som du gemmer på /dev/fd0/boot/grub
unmount /mnt/floppy -> klik Enter
Skriv grub
grub> root (fd0) -> klik Enter
grub> quit -> klik Enter
reboot -> klik Enter
Nu genstarter computeren du må ikke fjerne disketten har du gjort
som anvist vil du nu blive præsenteret for en simpel menu der
blot kræver at du klikker Enter
På et tidligere tidspunkt kopierede du stage1 og stage over på
din diskette hvor du fandt filerne henne ved jeg ikke men vi forudsatte
i
eksemplet at de lå i usr/share/grub/i386-pc/.
Nu skal du kopiere samtlige de filer der hedder noget med stage over på computeren i mappen /boot/grub.
Når det er gjort skal der bygges lidt mere på din /boot/grub/menu.lst
med forbehold for at du naturligvis skal indsætte de korrekte stier
der passer
til dit system skal den se således ud
| color white/blue black/light-gray
default 0 timeout 8 title linux
title floppy
|
Som du kan se er der blevet tilføjet nogle argumenter (vist med
grøn skrift)
Og ligeledes er muligheden for at boote med floppy blevet tilføjet.
Ovenstående menu.lst må siges at være så simpel
som muligt den kan boote en partition, derudover giver den mulighed for
at boote fra floppy,
vi vil senere tilføje meget mere men her og nu vil vi
installere grub i MBR (master boot record) og så skulle det gerne
resultere i at din computer
booter korrekt næste gang du starter. Du installerer grub i MBR
med følgende kommandoer
grub -> klik Enter
grub> ( -> klik Tabulator indtil du får alle dine partitioner
listet, indsæt den partition der indeholder din linux kernel,
efter kommaet afslut parentesen -> klik Enter
grub> setup (hd0) -> klik Enter
grub> quit -> klik Enter
fjern disketten og genstart, så skulle det gerne køre
HUSK
Hvis du ikke Kan få grub til at køre fra MBR
og du ikke kan starte op på LILO som antagelig var din forrige bootloader
så boot op på din diskette som vi tidligere har gennemgået
når du er startet op kan du geninstallere LILO med kommandoen
/sbin/lilo -> klik Enter
Det var lidt af en roman det her og de fleste gider sikkert ikke terpe
alt det vrøvl så her følger en stærk forenklet
version
| Download -> udpak og installer grub
Opret en diskette med mke2fs -> opret /dev/fd0/boot -> opret /dev/fd0/boot/grub Kopier stage1 + stage2 til /dev/fd0/boot/grub Skriv grub til din diskettes MBR grub> Nu fuldender du linien så der står grub> root (fd0) -> Enter Nu fuldender du linien så der står grub> setup (fd0) -> klik Enter Nu fuldender du linien så der står grub> quit -> klik Enter Nu skal du finde ud af på hvilken partition din Linux kernel er placeret Genstart på den diskette du lige oprettede Angiv stien til den partition der indeholder din Linux kernel Indlæs din Linux kernel Indlæs din initrd Boot din computer |
| Opret en fil, gem den menu.lst på /dev/fd0/boot/grub
Indsæt de samme linier i /dev/fd0/boot/grub som du skrev for at boote computeren Skriv grub til din diskettes MBR grub> Nu fuldender du linien så der står grub> root (fd0) -> Enter Nu fuldender du linien så der står grub> setup (fd0) -> klik Enter Nu fuldender du linien så der står grub> quit -> klik Enter Genstart nu skulle du kun klikke Enter |
Hvis ovenstående virker
| Rediger /dev/fd0/boot/grub/menu.lst til at se således ud
color white/blue black/light-gray
title linux
title floppy
|
Hvis du er tilfreds og ønsker at installere grub i MBR således at computeren fremover booter på normal vis gøres det med kommandoen
grub -> klik Enter
grub> ( -> klik Tabulator indtil du får alle dine partitioner
listet, indsæt den partition der indeholder din linux kernel,
efter kommaet afslut parentesen -> klik Enter
grub> setup (hd0) -> klik Enter
grub> quit -> klik Enter
Jeg skrev tidligere at såfremt det blev aktuelt kunne vi senere
bygge på /boot/grub/menu.lst det kan f.eks blive aktuelt hvis du
installerer flere systemer på din computer og ønsker at vælge
under opstart, det fikse ved menu.lst er at du blot kan tilføje
de nødvendige oplysninger så virker det, herunder ser du en
menu.lst fra virkelighedens verden
color white/blue black/light-gray
default 2
timeout 8
title SUSE LINUX 9.2
kernel (hd0,4)/boot/vmlinuz root=/dev/hda5 vga=0x31a
selinux=0 splash=silent
initrd (hd0,4)/boot/initrd
title SUSE 8.1
kernel (hd0,2)/boot/vmlinuz root=/dev/hda3
vga=791
initrd (hd0,2)/boot/initrd
title Windows
root (hd0,0)
chainloader +1
Den gennemgår vi lige
| color white/blue black/light-gray -> angiver
kuløren på velkomstskærmen
default 2 -> angiver det system der starter default, starter ved 0 timeout 8 -> angiver I sekunder hvornår default system starter title SUSE LINUX 9.2 -> system
nr. 0
title Windows -> system nr
2
title Diskette
|