Gentoo Logo

Kiistö: Tämä käsikirja on vanhentunut eikä sitä enää ylläpidetä.


[ << ] [ < ] [ Etusivu ] [ > ] [ >> ]


10. Käynnistyslataimen asetusten tekeminen

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. X86-alustoille Gentoossa on tarjolla GRUB tai LILO. Ennen toisen näistä 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 framebuffertuki on ytimessä mukana (tai ydin on tehty genkernelillä), voidaan käynnistyslataimen asetuksiin lisätä vga- tai video-määrite framebufferia varten.

Ensiksi täytyy selvittää minkätyyppinen framebufferi on käytössä. Kaikissa gentoo-pätsätyissä kerneleissä (kuten gentoo-sources-paketissa) on ollut mahdollisuus valita ajuriksi vesafb-tng kohdasta VESA driver type (mikä on oletusarvona). tässä tapauksessa käytössä on vesafb-tng, joka ei tarvitse vga-asetusta. Muissa tapauksissa käytössä on vesafb-ajuri, jolle pitää antaa vga-asetus.

Vga-asetus määrittelee framebufferin näyttötarkkuutta ja värisyvyyttä vesafb-ajurille. Kuten tiedostossa /usr/src/linux/Documentation/fb/vesafb.txt kerrotaan, asetukseen pitää panna VESAn tilanumero.

Alla on taulukoituna VESAn tilanumerot yleisimmille näyttötarkkuuksille ja värisyvyyksille.

640×480 800×600 1024×768 1280×1024
256 väriä 0x301 0x303 0x305 0x307
32 768 väriä 0x310 0x313 0x316 0x319
65 536 väriä 0x311 0x314 0x317 0x31A
16,7 miljoonaa väriä 0x312 0x315 0x318 0x31B

Arvo kannattaa ottaa muistiin, sitä tarvitaan piakkoin.

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/vesafb.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 Ajuri käyttää mtrr-rekisterejä.
mode (vesafb-tng:lle vain)
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ä vga=0x318 video=vesafb:mtrr,ywrap tai video=vesafb:mtrr,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/hda1 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/hda, cd-asema /dev/hdb, polttava asema /dev/hdc ja toinen kovalevy /dev/hdd eikä SCSI-kovalevyjä, on /dev/hdd7 silloin (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ä:

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 ja ytimelle kernel-2.6.11-gentoo-r3. 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: 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

# Oletusvalinta listauksista, numerointi alkaa nollasta
default 0
# Valintaruudun kesto sekunneissa ennen oletusvalinnan käynnistystä.
timeout 30
# Tyylikäs käynnistyskuva mausteeksi :-)
# kommentoi se pois jollei käytössä ole grafiikkakorttia
splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoon Linux 2.6.26-r9
# Osio jolla ydin sijaitsee
root (hd0,0)
kernel /kernel-2.6.11-gentoo-r3 root=/dev/hda3

# Seuraavia kolmea riviä käytetään Windows-dualbooteissa.
# Tässä tapauksessa Windows on siis osiolla /dev/hda6.
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1

Koodilistaus 2.4: grub.conf genkernel-ytimille

default 0
timeout 30
splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoo Linux 2.6.11
root (hd0,0)
kernel /kernel-2.6.11-gentoo-r3
root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda3 udev
# (kernel…udev yhdelle riville, mutta se on tässä katkottu
# useammalle, jotta näkyisi selaimissa ja tulosteissa)
initrd /initrd-2.6.11-gentoo-r3

# Vain dualbooteille
title=Windows XP
root (hd0,5)
makeactive
chainloader +1

Huomaa: 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.

Jos ytimelle pitää antaa lisäparametrejä, ne voi lisätä kernel-komennon loppuun. Esimerkissä annetaan jo parametri root=/dev/hda3 tai real_root=/dev/hda3, mutta useampiakin voidaan syöttää. Esimerkiksi aiemmin mainittua framebufferia tähän syötettäisiin vga- ja video-parametrit.

Jos 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/mounts /etc/mtabiksi:

Koodilistaus 2.5: /etc/mtabin päivitys

# cp /proc/mounts /etc/mtab

Sitten voidaan asentaa grub:

Koodilistaus 2.6: Grub-installin suoritus

# grub-install /dev/hda

Lisätietoa GRUBista englanniksi löytyy GRUB FAQ:sta ja GRUB Manuaalista.

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

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/hda1, 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)          (Osoita /boot-osion sijainti)
grub> setup (hd0)           (Asenna Grub MBR:ään)
grub> quit                  (Poistu Grubin kehotteelta)

Huomaa: Jos haluat asentaa Grubin jollekin osiolle MBR:n sijaan, voit muuttaa setup-komentoa osoittamaan oikeaan osioon. Esimerkiksi laitteelle /dev/hda3 sopiva komento on setup (hd0,2). Tällaista tarvinnee kuitenkin aika harvoin.

Lisätietoa Grubista saat GRUB FAQista tai GRUB Manualista.

Huomaa: Tästä lähin kun asennat uuden kernelin, ei tarvitse enää kopioida tiedostoja käynnistyshakemistoon käsin. Kernelin käännön jälkeen ne voi asentaa komennolla make install, joka huolehtii tiedostojen kopioinnista ja Grubin asetuksista.

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 --usepkg 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 nimeä kernel-2.6.11-gentoo-r3 ja 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/hda             # Asennetaan LILO MBR:ään
prompt                    # Käynnistetään valintaruudulla
timeout=50                # Odotetaan valintaa 5 sekuntia
default=gentoo            # 5 sekunnin jälkeen käynnistetään gentoo-valinta


# Käsin käännetty ydin
image=/boot/kernel-2.6.11-gentoo-r3
  label=gentoo            # Ytimelle annettaan nimi
  read-only               # Aloitetaan juuriosio kirjoitussuojattuna. Pakollinen!
  root=/dev/hda3          # Juuriosion sijainti

# Genkernelillä käännetty ydin
image=/boot/kernel-2.4.26-r9
  label=gentoo
  read-only
  root=/dev/ram0
  append="init=/linuxrc real_root=/dev/hda3 udev"
  initrd=/boot/initrd-2.4.26-r9

# Tätä kohdetta käytetään vain Windows-dualbooteissa
# Tässä esimerkissä Windows on osiolla /dev/hda6.
other=/dev/hda6
  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 vga annetaan seuraavasti:

Koodilistaus 3.4: Parametrien lisäys framebufferilla

image=/boot/kernel-2.6.11-gentoo-r3
  label=gentoo
  read-only
  root=/dev/hda3
  video=vesafb:mtrr,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 hdx=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

Huomaa: Tästä lähin kun asennat uuden kernelin, ei tarvitse enää kopioida tiedostoja käynnistyshakemistoon käsin. Kernelin käännön jälkeen ne voi asentaa komennolla make install, joka huolehtii tiedostojen kopioinnista ja lilon asetuksista.

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 /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo
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 ] [ > ] [ >> ]


Tulostettava muoto

Näytä kaikki

Tämä sivu on viimeksi päivitetty 9. kesäkuuta 2005

Tätä käännöstä ei enää ylläpidetä

Tiivistelmä: X86-alustalle on saatavilla useita käynnistyslataimia. Jokaisella näistä on omat asetuksensa. Tässä opastetaan askel askeleelta läpi kaikki asetukset mitä käynnistyslatain tarvitsee.

Sven Vermeulen
Tekijä

Daniel Robbins
Tekijä

Chris Houser
Tekijä

Jerry Alexandratos
Tekijä

Seemant Kulleen
Gentoon x86-kehittäjä

Tavis Ormandy
Gentoon alpha-kehittäjä

Brad House
Gentoon AMD64-kehittäjä

Guy Martin
Gentoon HPPA-kehittäjä

Pieter Van den Abeele
Gentoon PPC-kehittäjä

Joe Kallar
Gentoon SPARC-kehittäjä

John P. Davis
Toimittaja

Pierre-Henri Jondot
Toimittaja

Eric Stockbridge
Toimittaja

Rajiv Manglani
Toimittaja

Jungmin Seo
Toimittaja

Stoyan Zhekov
Toimittaja

Jared Hudson
Toimittaja

Colin Morey
Toimittaja

Jorge Paulo
Toimittaja

Carl Anderson
Toimittaja

Jon Portnoy
Toimittaja

Zack Gilburd
Toimittaja

Jack Morgan
Toimittaja

Benny Chuang
Toimittaja

Erwin
Toimittaja

Joshua Kinard
Toimittaja

Grant Goodyear
Katselmoija

Gerald J. Normandin Jr.
Katselmoija

Donnie Berkholz
Katselmoija

Ken Nowack
Katselmoija

Lars Weiler
Kontribuuttori

Flammie Pirinen
Vastuullinen kääntäjä

Jouni Hätinen
Käännöksen laatutarkistaja

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.