Muokataan sivua GNU GRUB 2

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 1: Rivi 1:
{{Ohjelma | nimi=GNU GRUB 2 | kuva= | kuvateksti= | lisenssi=[[GPL]] | käyttöliittymä=teksti | kotisivu=[http://www.gnu.org/software/grub/ gnu.org/software/grub]}}
GNU GRUB 2 on suositun [[GRUB]]-[[käynnistyslatain|käynnistyslataimen]] toinen versio, jonka käyttöön eri [[jakelu]]t ovat pikkuhiljaa siirtymässä.
 
GNU GRUB 2 on suositun [[GRUB]]-[[käynnistyslatain|käynnistyslataimen]] toinen versio, joka on useimmissa [[jakelu]]issa korvannut alkuperäisen.


== Erot versioon 1 ==
== Erot versioon 1 ==
Grub 2 tuo mukanaan uudistetut asetustiedostot, tuen skriptikielelle ja moduulien dynaamiselle lataamiselle, pelastustilan ja mahdollisuuden käyttää teemoja. Se mahdollistaa myös graafisen alkuvalikon ja [[Live-CD]]-[[levykuva|levykuvien]] käynnistämisen suoraan kiintolevyltä. Suomalaisia käyttäjiä kiinnostanee myös parempi tuki [[kotoistus|kotoistukselle]], esimerkiksi mahdollisuus käyttää ääkkösiä ja muita erikoismerkkejä.
Grub 2 tuo mukanaan uudistetut asetustiedostot, tuen skriptikielelle ja moduulien dynaamiselle lataamiselle, pelastustilan ja mahdollisuuden käyttää teemoja. Se mahdollistaa myös graafisen alkuvalikon ja [[Live-CD]]-[[levykuva|levykuvien]] käynnistämisen suoraan kiintolevyltä. Suomalaisia käyttäjiä kiinnostanee myös parempi tuki [[kotoistus|kotoistukselle]], esimerkiksi mahdollisuus käyttää ääkkösiä ja muita erikoismerkkejä.


Ylläpitäjälle näkyvin ero Grubin eri versioiden välillä on muuttuneet [[asetustiedosto]]t. Esimerkiksi <tt>/boot/grub/menu.lst</tt>-asetustiedoston (josta kerrotaan tarkemmin artikkelissa [[Grub]]) sijaan käytetään tiedostoja <tt>/boot/grub/grub.cfg</tt>, <tt>/etc/default/grub</tt> ja <tt>/etc/grub.d/40_custom</tt>.
Ylläpitäjälle näkyvin ero Grubin eri versioiden välillä on muuttuneet [[asetustiedosto]]t. Esimerkiksi <tt>/boot/grub/menu.lst</tt>-asetustiedoston (josta kerrotaan tarkemmin artikkelissa [[Grub]] sijaan käytetään tiedostoja <tt>/boot/grub/grub.cfg</tt>, <tt>/etc/default/grub</tt> ja <tt>/etc/grub.d/40_custom</tt>.


Toinen näkyvä ero on tavassa saada näkyviin Grubin alkuvalikko. Aiemmin käytössä olleen Esc-näppäimen sijaan valikkoon pääsee painamalla käynnistyksen aikana vaihtonäppäintä (shift).
Toinen näkyvä ero on tavassa saada näkyviin Grubin alkuvalikko. Aiemmin käytössä olleen Esc-näppäimen sijaan valikkoon pääsee painamalla käynnistyksen aikana vaihtonäppäintä (sift).
 
GRUB 2 tuo myös tuen [[UEFI]]-laiteohjelmistolle, jota PC:t käyttävät nykyään enenevissä määrin.


== Asetustiedostot ==
== Asetustiedostot ==
<tt>/boot/grub/grub.cfg</tt> on Grub 2:n pääasiallinen asetustiedosto, joka korvaa vanhan <tt>/boot/grub/menu.lst</tt>-tiedoston. On kuitenkin syytä huomata, että tätä tiedostoa ei ole tarkoitus muokata käsin, ja se onkin yleensä asetettu [[tiedoston oikeudet|vain luku -tilaan]]! Se generoidaan automaattisesti <tt>grupb-mkconfig</tt> -komennolla esimerkiksi uuden [[ydin|ytimen]] asentamisen jälkeen.
<tt>/boot/grub/grub.cfg</tt> on Grub 2:n pääasiallinen asetustiedosto, joka korvaa vanhan <tt>/boot/grub/menu.lst</tt>-tiedoston. On kuitenkin syytä huomata, että tätä tiedostoa ei ole tarkoitus muokata käsin, ja se onkin yleensä asetettu [[tiedoston oikeudet|vain luku -tilaan]]! Se generoidaan automaattisesti <tt>update-grub</tt>-komennolla esimerkiksi uuden [[ydin|ytimen]] asentamisen jälkeen.


Käyttäjän muokattavaksi tarkoitettu asetustiedosto on <tt>/etc/default/grub</tt>, joka koostuu vanhan <tt>menu.lst</tt>-tiedoston alkua muistuttavista avain-arvopareista. Näillä asetuksilla määritellään mm. valikon toimintaa ja ytimelle annettavia parametrejä. Tiedosto voisi näyttää seuraavalta:
Käyttäjän muokattavaksi tarkoitettu asetustiedosto on <tt>/etc/default/grub</tt>, joka koostuu vanhan <tt>menu.lst</tt>-tiedoston alkua muistuttavista avain-arvopareista. Näillä asetuksilla määritellään mm. valikon toimintaa ja ytimelle annettavia parametrejä. Tiedosto voisi näyttää seuraavalta:
Rivi 39: Rivi 35:
#GRUB_DISABLE_LINUX_RECOVERY="true"
#GRUB_DISABLE_LINUX_RECOVERY="true"
</pre>
</pre>
*<tt>GRUB_DEFAULT</tt>: Oletuksena valittuna oleva ydin (alkuvalikon kohdan). Arvo 0 tarkoittaa listan ensimmäistä ydintä/käyttöjärjestelmää, 1 toista jne. Vaihtoehtoisesti tähän voi laittaa haluamansa valikkokohdan nimen. Lisäksi on mahdollista laittaa arvoksi <tt>saved</tt>, jolloin Grub valitsee tallennetun järjestelmän. Tämän arvon on oltava <tt>saved</tt>, mikäli halutaan, että <tt>[http://www.gnu.org/software/grub/manual/legacy/Invoking-grub_002dset_002ddefault.html grub-set-default]</tt> ja <tt>[http://wiki.debian.org/GrubReboot grub-reboot]</tt> -komennot toimivat.
*<tt>GRUB_DEFAULT</tt>: Oletuksena valittuna oleva ydin (alkuvalikon kohdan). Arvo 0 tarkoittaa listan ensimmäistä ydintä/käyttöjärjestelmää, 1 toista jne. Arvo <tt>saved</tt> viittaa edelliseen käynnistettyyn ytimeen.
*<tt>GRUB_SAVEDEFAULT</tt>: Jos tämä on <tt>true</tt>, Grub tallentaa käynnistettävän järjestelmän muistiin, ja käynnistää sen seuraavallakin kerralla, mikäli <tt>GRUB_DEFAULT</tt>-muuttujan arvo on <tt>saved</tt>.
*<tt>GRUB_TIMEOUT</tt>: Aika sekunteina, jonka jälkeen oletuksena valittu ydin käynnistetään.
*<tt>GRUB_TIMEOUT</tt>: Aika sekunteina, jonka jälkeen oletuksena valittu ydin käynnistetään.
*<tt>GRUB_HIDDEN_TIMEOUT</tt>: Sama kuin <tt>GRUB_TIMEOUT</tt>, mutta valikkoa ei näytetä ennen kuin shift-näppäintä on painettu.
*<tt>GRUB_HIDDEN_TIMEOUT</tt>: Sama kuin <tt>GRUB_TIMEOUT</tt>, mutta valikkoa ei näytetä ennen kuin sift-näppäintä on painettu.
*<tt>GRUB_HIDDEN_TIMEOUT_QUIET</tt>: Näytetäänkö laskuri jäljellä olevasta ajasta ennen oletusvalinnan käynnistämistä valikossa. <tt>true</tt> ei näytä laskuria, <tt>false</tt> näyttää.
*<tt>GRUB_HIDDEN_TIMEOUT_QUIET</tt>: Näytetäänkö laskuri jäljellä olevasta ajasta ennen oletusvalinnan käynnistämistä valikossa. <tt>true</tt> ei näytä laskuria, <tt>false</tt> näyttää.
*<tt>GRUB_DISTRIBUTOR</tt>: Käyttöjärjestelmää kuvaileva teksti valikkoon. Yllä oleva asetus muuttuu Ubuntussa muotoon ''Ubuntu'' jne.
*<tt>GRUB_DISTRIBUTOR</tt>: Käyttöjärjestelmää kuvaileva teksti valikkoon. Yllä oleva asetus muuttuu Ubuntussa muotoon ''Ubuntu'' jne.
Rivi 52: Rivi 47:
*<tt>GRUB_DISABLE_LINUX_RECOVERY="true"</tt>: Valikkoon ei luoda mahdollisuutta käynnistää tietokonetta pelastustilaan.
*<tt>GRUB_DISABLE_LINUX_RECOVERY="true"</tt>: Valikkoon ei luoda mahdollisuutta käynnistää tietokonetta pelastustilaan.


Kun tähän tiedostoon on tehty muutoksia, on ajettava pääkäyttäjän oikeuksilla <tt>grub-mkconfig</tt>-komento.
Kun tähän tiedostoon on tehty muutoksia, on ajettava komento <tt>update-grub</tt> tai <tt>update-grub2</tt>.
grub-mkconfig -o /boot/grub2/grub.cfg
Ubuntu-käyttäjillä on oma komentonsa: <tt>update-grub</tt> tai <tt>update-grub2</tt>.
sudo update-grub


== Uuden käyttöjärjestelmän lisääminen ==
== Uuden käyttöjärjestelmän lisääminen ==
Kun päivityskomento ajetaan, käydään läpi hakemistossa <tt>/etc/grub.d</tt> olevia tiedostoja. Tiedostosta <tt>/etc/grub.d/10_linux</tt> haetaan tiedot käytettävistä Linux-ytimistä ja <tt>/etc/grub.d/30_os-prober</tt>-tiedostosta tiedot muista käyttöjärjestelmistä. Yleensä [[paketinhallintajärjestelmä]] huolehtii <tt>10_linux</tt>-tiedostosta ja <tt>30_os-prober</tt> luodaan asennuksen aikana. Samasta kansiosta löytyvä tiedosto <tt>/etc/grub.d/40_custom</tt> on tarkoitettu käyttäjän käsin lisäämiä käynnistysvalintoja varten.
Kun <tt>update-grub</tt> tai <tt>update-grub2</tt>-komento ajetaan, käydään läpi hakemistossa <tt>/etc/grub.d</tt> olevia tiedostoja. Tiedostosta <tt>/etc/grub.d/10_linux</tt> haetaan tiedot käytettävistä Linux-ytimistä ja <tt>/etc/grub.d/30_os-prober</tt>-tiedostosta tiedot muista käyttöjärjestelmistä. Yleensä [[paketinhallintajärjestelmä]] huolehtii <tt>10_linux</tt>-tiedostosta ja <tt>30_os-prober</tt> luodaan asennuksen aikana. Tämän lisäksi tiedosto <tt>/etc/grub.d/40_custom</tt> on tarkoitettu käyttäjän käsin lisäämiä käynnistysvalintoja varten.


Uusi ydin voidaan lisätä käsin lisäämällä tiedostoon <tt>40_custom</tt> seuraavan esimerkin kaltainen kohta: Oletetaan, että [[osio]]lle <tt>sda10</tt> on asennettu [[SystemRescueCD]]-jakelu. Tällöin tiedostoon lisättäisiin rivit
Uusi ydin voidaan lisätä käsin lisäämällä tiedostoon <tt>40_custom</tt> seuraavan esimerkin kaltainen kohta: Oletetaan, että [[osio]]lle <tt>sda10</tt> on asennettu [[SystemRescueCD]]-jakelu. Tällöin tiedostoon lisättäisiin rivit
<pre>
<pre>
echo "Adding SystemRescueCD" >&2
menuentry "System Rescue CD" {
menuentry "System Rescue CD" {
  set root=(hd0,10)
  set root=(hd0,10)
Rivi 68: Rivi 61:
}  
}  
</pre>
</pre>
Käydään esimerkki lyhyesti läpi: <tt>menuentry</tt> määrittelee näkyvän tekstin, ja <tt>root</tt> osion, josta ydin haetaan. Osioihin viitataan eri tavalla kuin vanhassa Grubissa! Laitteiden numerointi alkaa nollasta, esimerkiksi [[laitetiedosto]]a <tt>sda</tt> vastaa laite 0, <tt>sdb</tt>:tä laite 1 jne. Sen sijaan osionumerot menevät kuten Linuxissa, esimerkiksi (hd0,1) vastaa osiota <tt>sda1</tt> ja (hd0,10) osiota <tt>sda10</tt>.
Tässä ensimmäinen <tt>[[echo]]</tt>-rivi ei vaikuta Grubin toimintaan mutta tällä tavoin tehtynä ajettaessa <tt>update-grub2</tt> nähdään, että yllä tehty määrittely käydään läpi. Esimerkki valaisee eri kenttien merkityksen, <tt>menuentry</tt> määrittelee näkyvän tekstin, ja <tt>root</tt> osion, josta ydin haetaan. Osioihin viitataan eri tavalla kuin vanhassa Grubissa! Laitteiden numerointi alkaa nollasta, esimerkiksi [[laitetiedosto]]a <tt>sda</tt> vastaa laite 0, <tt>sdb</tt>:tä laite 1 jne. Sen sijaan osionumerot menevät kuten Linuxissa, esimerkiksi (hd0,1) vastaa osiota <tt>sda1</tt> ja (hd0,10) osiota <tt>sda10</tt>.


<tt>linux</tt>- ja <tt>initrd</tt>-rivit kertovat, mistä hakemistosta suhteessa asetettuun juuriosioon ydin ja [[initrd]]-tiedosto löytyvät.  
<tt>linux</tt>- ja <tt>initrd</tt>-rivit kertovat, mistä hakemistosta suhteessa asetettuun juuriosioon ydin ja [[initrd]]-tiedosto löytyvät.  


Tiedostoon <tt>40_custom</tt> lisätyt ytimet ilmestyvät Grubin valikon loppuun, sillä listan järjestyksen määrää tiedostojen järjestys. Siispä jos listan alkuun halutaan lisätä omia käynnistysvalintoja, on ne laitettava tiedostoon, joka on aakkosjärjestyksessä ennen tiedostoa <tt>10_linux</tt>, esimerkiksi <tt>07_custom</tt>.
Tiedostoon <tt>40_custom</tt> lisätyt ytimet ilmestyvät Grubin valikon loppuun, sillä listan järjestyksen määrää tiedostojen järjestys. Siispä jos listan alkuun halutaan lisätä omia käynnistysvalintoja, on ne laitettava tiedostoon, joka on aakkosjärjestyksessä ennen tiedostoa <tt>10_linux</tt>, esimerkiksi <tt>07_custom</tt>.
== Edistyneemmät muokkaukset ==
Suurin osa käyttäjistä tulee varmasti toimeen ylläolevalla automaattisella skriptillä, mutta monimutkaisemmat muutokset (kuten järjestyksen muuttaminen tai järjestelmien nimien muokkaaminen) kehotetaan toistaiseksi tekemään suoraan konfiguraatiotiedostoon <tt>/boot/grub/grub.conf</tt>. Muista, että tällöin kaikki automaattiset päivitysmekanismit tulee kytkeä pois käytöstä, koska muuten järjestelmä ajaa kernelipäivityksen yhteydessä <tt>grub-mkconfig</tt> -skriptin, ja <tt>grub.conf</tt>-tiedostoon tehdyt muokkaukset katoavat.


== Aiheesta muualla ==
== Aiheesta muualla ==
*[http://www.gnu.org/software/grub/manual/grub.html Gnu-projektin virallinen GRUB2-käyttöohje]
*[http://ubuntuforums.org/showthread.php?t=1195275 Grub 2 Basics] -ohje [[Ubuntu]]n keskustelualueilla
*[http://ubuntuforums.org/showthread.php?t=1195275 Grub 2 Basics] -ohje [[Ubuntu]]n keskustelualueilla
*[http://www.sysresccd.org/Sysresccd-Partitioning-EN-Grub-boot-stages How Grub Boots] -ohje [http://www.sysresccd.org/Main_Page System Rescue CD] -sivuston wikissä


== Katso myös ==
== Katso myös ==
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)

Tällä sivulla käytetty malline:

Tämä sivu kuuluu seuraavaan piilotettuun luokkaan:

Noudettu kohteesta ”https://www.linux.fi/wiki/GNU_GRUB_2