[ << ]
[ < ]
[ Etusivu ]
[ > ]
[ >> ]
10. Käynnistyslataimen asetukset
Sisällysluettelo:
10.a. Käynnistyslataimen valinta
Johdanto
Nyt kun ydin ja asetukset on saatu kuntoon, asennetaan ohjelma jolla ydin
ladataan käynnistyksen yhteydessä. Ohjelmaa kutsutaan
käynnistyslataimeksi.
AMD64-alustalle, Gentoo Linuxissa on tarjolla GRUB tai LILO.
Ennen asennusta tarkastelemme framebufferin säätämistä (jos sellaista
tarvitaan). Framebufferilla pystytään tuomaan komentojonoille joitain
(rajoittuneita) graafisia ominaisuuksia (kuten Gentoon tyylikkään
käynnistyskuvan).
Valinnainen: Framebuffer
Jos framebuffer-tuki on ytimessä mukana (tai ydin on tehty
genkernelillä), voidaan käynnistyslataimen asetuksiin lisätä
video-määrite framebufferia varten.
Ensiksi täytyy selvittää minkätyyppinen framebufferi on käytössä.
Yleiselle VESA-ajurille kannattaa käyttää uvesafb:tä.
Video-asetus määrittelee framebufferin asetuksia. Siihen syötetään
framebuffer-laitteen nimi (vesafb 2.6-kerneleille tai
vesa 2.4-kerneleille) ja asetukset jotka lisätään.
Luettelo asetusmuuttujista on tiedostossa
/usr/src/linux/Documentation/fb/uvesafb.txt,
mutta alla on taulukoituna yleisimmät.
| Asetus |
Kuvaus |
| ywrap |
Ajuri olettaa näyttödatan jatkuvan muistissa kuvan reunojen yli (so. rivin
viimeinen näyttöpiste edeltää välittömästi seuraavan rivin ensimmäistä).
|
| mtrr:n |
Aseta mtrr-rekisterien käyttöaste. n voi olla:
0 — disabled
1 — uncachable
2 — write-back
3 — write-combining
4 — write-through
|
| mode |
Asettaa näyttötarkkuuden, värisyvyyden ja virkistystaajuuden. Esimerkiksi
arvo
1024x768-32@85 vastaa näyttötarkkuutta 1024×768 näyttöpistettä,
32-bittistä värisyvyyttä ja 85 hertsin virkistystaajuus.
|
Lopputuloksena näistä kahdesta asetuksesta saataneen jotain tyyppiä
video=uvesafb:mtrr:3,ywrap,1024x768-32@85 oleva asetus.
Arvo kannattaa ottaa muistiin, sitä tarvitaan piakkoin.
Nyt voidaan jatkaa asentamalla GRUB tai LILO.
10.b. Oletus: GRUBin käyttö
GRUBin termistöä
Vaikein asia GRUBissa on sen tapa viitata kovalevyihin ja osioihin.
Linux-maailman osio
/dev/sda1
onkin todennäköisesti GRUBissa (hd0,0).
Sulut kuuluvat ilmaisuun, niitä ei voi jättää pois.
Kovalevyjen laskeminen aloitetaan siis nollasta aan asemesta ja osiotkin
alkavat nollasta eivätkä ykkösestä. Laitteista lasketaan vain kovalevyt eikä
esimerkiksi atapi-ide-laitteita kuten cd-asemia tai -polttimia. SCSI-asemat
käyttävät samaa muotoa kuin IDE-asematkin. (Niissä on usein korkeammat numerot
kuin IDEllä, elleivät ne ole biosista määriteltyjä käynnistysasemia.) Lisäksi
jos BIOSia käskee käynnistämään joltain tietyltä kovalevyltä, se on grubille
aina (hd0, riippumatta missä johdossa se on kiinni.
Jos käytetään järjestelmää jossa on kovalevy /dev/sda,
ja kaksu muuta /dev/sdb ja /dev/sdc, silloin
/dev/sdb7 on (hd1,6).
Saattaa kuulostaa hankalalta ja sitä se hieman onkin, mutta GRUB:pa
tarjoileekin meille tabintäydennysmekanismia, joka on erittäin
kätevä, jos numerointimalli pääsee muuten hämäämään.
Nyt kun meillä on tuntumaa käsitteisiin, voimme jopa asentaa GRUBin.
GRUBin asennus
GRUBin asennus aloitetaan emergellä:
Tärkeää:
Non-multilib-profiilin,
kanssa asennetaan emergellä grub-static, eikä grub.
Non-multilib-profiililla ja ilman IA32-emulaatioasetusta kernelissä
pitää käyttää liloa.
|
Koodilistaus 2.1: GRUBin asentaminen |
# emerge grub
|
Nyt GRUB on asennettu kohdalleen. Enää tarvitsee kehitellä asetustiedosto, joka
viittaa uuteen ytimeemme. Luodaan /boot/grub/grub.conf
nanolla (tai muulla editorilla):
Koodilistaus 2.2: /boot/grub.confin luonti |
# nano -w /boot/grub/grub.conf
|
Seuraavassa kirjoitamme asetustiedoston grub.conf. Alla on kaksi
vaihtoehtoista esimerkkiä oppaassa käytetylle osiointimallille. Vain
ensimmäinen esimerkki on täysin kommentoitu.
-
Ensimmäinen grub.conf on käsin rakennetuille ytimille.
-
Toinen grub.conf on genkernelillä tehdyille ytimille.
Huomaa:
Grub hakee asetukset BIOSilta, joten jos BIOS-asetukset muuttuvat saattavat
laitteiden numerot ja kirjaimet muuttua myös. Esimerkiksi jos muutat
laitteiden käynnistysjärjestystä, saattaa se pitää päivittää myös grubin
asetuksiin.
|
Huomaa:
Jos juuren tiedostojärjestelmä on JFS, pitää kernel-riville lisätä
” ro”, sillä JFS:n pitää suorittaa loki lävitse ennen kirjoitussuojaamattoman
tilan liitosta.
|
Koodilistaus 2.3: Grub.conf käsin asennetuille ytimille |
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title=Gentoon Linux 2.6.34-r1
root (hd0,0)
kernel /boot/kernel-2.6.34-gentoo-r1 root=/dev/sda3
title=Gentoo Linux 2.6.34-r1 (pelastus)
root (hd0,0)
kernel /boot/kernel-2.6.34-gentoo-r1 root=/dev/sda3 init=/bin/bb
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1
|
Koodilistaus 2.4: Grub.conf genkernel-ytimille |
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title=Gentoo Linux 2.6.34-r1
root (hd0,0)
kernel /boot/kernel-genkernel-amd64-2.6.34-gentoo-r1 real_root=/dev/sda3
initrd /boot/initramfs-genkernel-amd64-2.6.34-gentoo-r1
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1
|
Muita osiointeja varten mallia pitää muuttaa tarpeen mukaan. Varmista kuitenkin
että kaikki hakemistot liittyvät valitun GRUB-osion (kuten
(hd0,0)) juurihakemistoon eikä koko järjestelmän juureen. Siksi
siis (hd0,0)/grub/splash.xpm.gz onkin oikeasti
/boot/grub/splash.xpm.gz, sillä (hd0,0) liittyy
hakemistoon /boot.
Tapauksissa, joissa käytetään eri osiointimallia, jossa ei ole erillistä
/boot-osiota, pitää /boot/ määritellä kaikissa
käynnistyslataimen asetuksissa. Jos erillinen /boot-osio on
käytössä, sitä ei tarvitse asetuksissa mainita, mutta sen käyttäminen on
silti suositeltavaa, sillä se toimii siinäkin tapauksessa symbolisen
linkin ansiosta. Käytännössä siis yllä annetut esimerkit toimivat sellaisenaan
molemmissa tapauksissa.
Jos ytimelle pitää antaa lisäparametrejä, ne voi lisätä kernel-komennon
loppuun. Esimerkissä annetaan jo parametri root=/dev/sda3 tai
real_root=/dev/sda3, mutta useampiakin voidaan syöttää. Esimerkiksi
tähän syötettäisiin aiemmin tarkastellut framebufferin vga- ja
video-arvot.
Jos käytössä on real_root-asetus, juuritiedostojärjestelmän parametreille
pitää käyttää real_rootflagsiä.
Jos käytössä on ytimen versio 2.6.7 tai sitä uudempi, ja olet asettanut
kovalevyysi jumpperin rajoittamaan kokoa koska BIOSisi ei ymmärrä suuria
kovalevyjä, merkkaa myös vastaavalle kovalevylaitteelle ydinasetus
hdx=stroke.
genkernelillä käännetyt ytimet käyttävät samoja asetuksia kuin
asennus-CD, esimerkiksi SCSI-laitteita varten käytetään
doscsi-parametriä.
Nyt tallenna grub.conf ja poistu. GRUB pitää vielä asentaa MBR:ään (Master
Boot Record), jotta GRUB käynnistäisi koneen käynnistämisen yhteydessä.
Grubin kehittäjät suosittelevat komennon grub-install käyttämistä.
Kuitenkin, jos grub-install ei jostain syystä toimikaan, voit
silti yrittää asentaa sen käsinkin.
Jatka joko pitkin Oletusreittiä: Grubin asennus
grub-installilla tai Vaihtoehtoa:
Grubin asennus käsin.
Oletus: Grubin asennus grub-installilla
Grubin asentamiseen riittää grub-install-komento. Kuitenkin,
grub-install ei toimi suoraan koska olemme vielä chroot-ympäristössä. Ensin
pitää päivittää /etc/mtab (tiedosto, joka sisältää tiedot
liitetyistä tiedostojärjestelmistä): onneksi tämä on helppoa; kopioidaan
vain /proc/mountsista kaikki paitsi rootfs
/etc/mtabiksi:
Koodilistaus 2.5: /etc/mtabin päivitys |
# grep -v rootfs /proc/mounts > /etc/mtab
|
Sitten voidaan asentaa grub:
Koodilistaus 2.6: Grub-installin suoritus |
# grub-install --no-floppy /dev/sda
|
Lisätietoa GRUBista englanniksi löytyy GRUB FAQ:sta ja
GRUB Wikistä, tai info
grub -ohjeesta.
Seuraavaksi voidaan jatkaa uudelleenkäynnistyksellä.
Vaihtoehto: Grubin asennus käsin
Grubin asetuksia pääsee muuttamaan kirjoittamalla grub. Se tuo esiin
grubin kehotteeen: grub>. Seuraavaksi kirjoitetaan
komennot joilla Grub asentaa käynnistystietueen kovalevyllesi.
Koodilistaus 2.7: Grubin kehotteen avaus |
# grub --no-floppy
|
Huomaa:
Jollei järjestelmässäsi ole diskettiasemia, lisää valitsin --no-floppy
grubin komentoon niin se ei käytä aikaa niiden paikantamiseen.
|
Esimerkissä asennamme Grubin lukemaan tiedot käynnistysosiolta
/dev/sda1, ja asentamaan käynnistystietueen kovalevyn
MBR:ään (master boot record). Tällainen järjestely käynnistää koneen
oletusarvoisesti aina Grubilla. Tietenkin taas mukautat annettuja komentoja,
jolleivät osiointisi vastaa ohjeen esimerkkiä
Grubissa on kehotteessa toimiva tabintäydennysmekanismi. Tämä toimii siten,
että jos vaikkapa kirjoitat root ( ja painat tabulaattoria, grub
näyttää listan laitteista (kuten hd0). Jos sitten kirjoitat
root (hd0, ja painat tabia, saat vastaavasti listan ensimmäisen
kovalevyn osioista.
Tabintäydennyksen kanssa Grubin säätäminen ei ole liian monimutkaista.
Seuraavaksi laitetaan siis asetukset kuntoon.
Koodilistaus 2.8: Grubin asennus MBR:ään |
grub> root (hd0,0)
grub> setup (hd0)
grub> quit
|
Huomaa:
Jos haluat asentaa Grubin jollekin osiolle MBR:n sijaan, voit muuttaa
setup-komentoa osoittamaan oikeaan osioon. Esimerkiksi laitteelle
/dev/sda3 sopiva komento on setup (hd0,2).
Tällaista tarvinnee kuitenkin aika harvoin.
|
Lisätietoa Grubista saat GRUB FAQista tai
GRUB Wikistä, tai info
grub -ohjeesta.
Jatka järjestelmän uudelleenkäynnistyksellä.
10.c. Vaihtoehto: LILOn käyttäminen
LILOn asennus
LILO (LInuxLOader) on vanha ja vakaa Linuxin käynnistyslatain. Siitä puuttuu
joitain GRUBin toimintoja (mistä syystä GRUB saavuttaakin suosiota). LILOa
kuitenkin käytetään joissain järjestelmissä joissa GRUB ei toimi sekä vanhasta
tottumuksesta. Joka tapauksessa, Gentoo toimii molemmilla ja tässä
tarkastellaan LILOa.
LILOn asennus on näppärää, ei tarvitse kuin käskyttää emergeä.
Koodilistaus 3.1: LILOn asennus |
# emerge lilo
|
LILOn asetusten teko
LILOn asetuksia varten luodaan tiedosto /etc/lilo.conf.
Käynnistä suosikkieditorisi (käsikirjassa käytetään nanoa)
Koodilistaus 3.2: /etc/lilo.confin luonti |
# nano -w /etc/lilo.conf
|
Joitain kohtia aiemmin otettiin ylös ytimen nimi.
Seuraavassa käytetään aiemmin kuvailtua osiointimallia.
Esimerkissä on kaksi kohtaa:
-
käsin käännetyille ytimille
-
genkernelillä käännetyille ytimille.
Muista varmistaa tiedostonimien oikeellisuus oman järjestelmäsi mukaan.
Huomaa:
Jos juuren tiedostojärjestelmä on JFS, pitää kernel-riville lisätä
” ro”, sillä JFS:n pitää suorittaa loki lävitse ennen kirjoitussuojaamattoman
tilan liitosta.
|
Koodilistaus 3.3: /etc/lilo.conf-esimerkki |
boot=/dev/sda
prompt
timeout=50
default=gentoo
image=/boot/kernel-2.6.34-gentoo-r1
label=gentoo
read-only
root=/dev/sda3
image=/boot/kernel-genkernel-amd64-2.6.34-gentoo-r1
label=gentoo
read-only
append="real_root=/dev/sda3"
initrd=/boot/initramfs-genkernel-amd64-2.6.34-gentoo-r1
image=/boot/kernel-2.6.34-gentoo-r1
label=gentoo.rescue
read-only
root=/dev/sda3
append="init=/bin/bb"
other=/dev/sda6
label=windows
|
Huomaa:
Jos käytössä on jokin muu osiointi tai ydin, niin esimerkit korvataan niillä.
|
Jos ytimelle pitää antaa muita parametrejä, ne lisätään
append-lausekkeella. Esimerkiksi framebufferin asetus
video annetaan seuraavasti:
Koodilistaus 3.4: Parametrien lisäys framebufferilla |
image=/boot/kernel-2.6.34-gentoo-r1
label=gentoo
read-only
root=/dev/sda3
append="video=uvesafb:mtrr:n,ywrap,1024x768-32@85"
|
Jos käytössä on ytimen versio 2.6.7 tai sitä uudempi, ja olet asettanut
kovalevyysi jumpperin rajoittamaan kokoa koska BIOSisi ei ymmärrä suuria
kovalevyjä, merkkaa myös vastaavalle kovalevylaitteelle ydinasetus
sda=stroke.
genkernelillä käännetyt ytimet käyttävät samoja käynnistysparametreja
kuin asennus-CD:kin. Esimerkiksi SCSI-laitteet käynnistetään lisäämällä
doscsi ydinparametreihin.
Seuraavaksi tallenna tiedosto ja poistu editorista. Lilon asennus
viimeistellään komennolla /sbin/lilo. Se tallentaa LILOn asetukset
järjestelmään (eli kopioi lataimen levylle). Muista että /sbin/lilo
pitää ajaa joka kerta kun uusi ydin asennetaan.
Koodilistaus 3.5: LILOn asennuksen viimeistely |
# /sbin/lilo
|
Lisätietoa LILOsta saattaa löytää englanninkielisen
wikipedian LILO-sivulta.
Seuraavaksi voidaan jatkaa uudelleenkäynnistyksellä.
10.d. Järjestelmän uudelleenkäynnistys
Poistu chroot-ympäristöstä ja irrota osioliitokset. Sitten voit kirjoittaa sen
viimeisen taikasanan: reboot.
Koodilistaus 4.1: Chrootista poistuminen, osioiden irrotus ja uudelleenkäynnistys |
cdimage ~# exit
cdimage ~# umount -l /mnt/gentoo/dev{/pts,/shm,}
cdimage ~# umount -l /mnt/gentoo{/boot,/sys,/proc,}
cdimage ~# reboot
|
Muista tietenkin ottaa käynnistyvä cd pois asemasta, että käynnistys tapahtuisi
uuteen järjestelmään cd:n asemesta.
Uudelleenkäynnistyksen jälkeen voitkin viimeistellä Gentoon asennuksesi.
[ << ]
[ < ]
[ Etusivu ]
[ > ]
[ >> ]
Tämän sivun sisältö ja suomennos kuuluvat
Creative Commons - Nimi mainittava-Sama lisenssi 2.5 -lisenssin alle.
Sivun sisältöä koskee myös
Gentoo Name and
Logo Usage Guidelines.
|