Gentoo Logo

[ << ] [ < ] [ Home ] [ > ] [ >> ]


10. Configurazione del Bootloader

Indice:

10.a. La scelta

Introduzione

Dopo aver configurato e compilato il kernel e inserito i necessari file di configurazione, è venuto il momento di installare il programma che esegue il kernel nel momento in cui si avvia il sistema. Tale programma è chiamato bootloader.

Opzionale: Framebuffer

Se si è configurato il kernel con il supporto framebuffer (o si è usata la configurazione di default di genkernel) si può attivarlo aggiungendo una istruzione vga e/o video al file di configurazione del kernel.

I sistemi 64-bit devono usare il driver vesafb, e così dovranno impostare l'istruzione vga. L'istruzione vga controlla la risoluzione e la profondità del colore del schermo framebuffer per vesafb. Come previsto nel /usr/src/linux/Documentation/fb/vesafb.txt (installato insieme al kernel) si deve fornire il corrispondente numero VESA alla risoluzione e profondità di colore richieste.

La seguente tabella elenca le risoluzioni e le profondità di colore disponibili, e è necessario far combinare il valore che si deve fornire alla istruzione vga.

640x480 800x600 1024x768 1280x1024
256 0x301 0x303 0x305 0x307
32k 0x310 0x313 0x316 0x319
64k 0x311 0x314 0x317 0x31A
16M 0x312 0x315 0x318 0x31B

L'istruzione video controlla le opzione del display framebuffer. E' necessario che siano dati i driver framebuffer (vesafb per kernel 2.6, o vesa per kernel 2.4) seguiti dalle istruzioni di controllo che si vogliono abilitare. Tutte le variabili sono elencate in /usr/src/linux/Documentation/fb/vesafb.txt, ma qui saranno trattate le tre ozioni più usate:

Controllo Descrizione
ywrap Si assume che la scheda grafica può riavvolgere la sua memoria (per esempio continuare dall'inizio quando si è vicini alla fine)
mtrr Impostare i registri MTRR

Il risultato di queste due istruzioni potrebbe essere simile a vga=0x318 video=vesafb:mtrr,ywrap o video=vesafb:mtrr,ywrap,1024x768-32@85. Ricordarsi (o annotarsi) queste impostazioni, torneranno utili tra poco.

Gentoo supporta solo l'uso di GRUB, ma LILO funziona con AMD64. Continuare con l'istallazione di GRUB.

10.b. Usare GRUB

Comprendere la terminologia di GRUB

La parte più critica da capire di GRUB, è quella nella quale si deve prendere confidenza con il modo in cui GRUB si riferisce ai dischi e alle partizioni. La partizione di Linux /dev/hda1 è chiamata da GRUB (hd0,0). Prestare attenzione alle parentesi tra hd0,0, sono necessarie.

I dischi vengono contati da zero invece che da "a", e le partizioni partono da zero invece che da uno. Prestare ancora attenzione al fatto che tra le periferiche hd vengono inclusi solo gli hard disk e non le periferiche atapi-ide come i lettori cdrom e i masterizzatori. Lo stesso vale per i dischi SCSI. (Normalmente questi prendono numeri più alti rispetto a quelli IDE, eccetto quando il BIOS è configurato per fare il boot dai dischi SCSI.) Quando si imposta il BIOS per avviare da un hard disk differente, questo hard disk è visto come hd0.

Avendo quindi un hard disk in /dev/hda, un lettore cdrom in /dev/hdb, un masterizzatore in /dev/hdc, un secondo hard disk in /dev/hdd e nessun disco SCSI, /dev/hdd7 viene trasformato in (hd1,6). Potrebbe suonare complicato e lo è in effetti, ma come si vedrà, GRUB offre un meccanismo di completamento con il tasto TAB che si dimostra comodo per coloro che hanno un numero elevato di hard disk e partizioni, e per coloro che sono a disagio con lo schema numerico di GRUB.

Dopo essere entrati nello spirito è il momento di installare GRUB.

Installare GRUB

Per installare GRUB, si deve prima emergerlo:

Codice 2.1: Installare GRUB

# emerge grub

Nonostante GRUB sia installato, si deve ancora modificare un file di configurazione per GRUB, ed installare GRUB nel MBR così che GRUB avvii automaticamente il kernel. Creare /boot/grub/grub.conf con nano (o con un altro editor):

Codice 2.2: Creare /boot/grub/grub.conf

# nano -w /boot/grub/grub.conf

Ora è necessario modificare grub.conf. Seguono due possibili grub.conf per l'esempio di partizione usato in questa guida che utilizza l'immagine del kernel kernel-2.6.12-gentoo-r10. Viene però analizzato a fondo solo il primo grub.conf.

  • Il primo grub.conf è per chi non ha usato genkernel per compilare il kernel
  • Il secondo grub.conf è per chi ha usato genkernel per compilare il kernel

Nota: Se la partizione root usa il filesystem JFS, si deve mettere "ro" alla riga del kernel così può ripetere il log prima che venga montata in lettura e scrittura.

Codice 2.3: grub.conf per utenti che non hanno usato genkernel

# Quale opzione viene avviata di default. 0 è la prima, 1 la seconda etc.
default 0
# Quanti secondi attendere prima di avviare l'opzione di default.
timeout 30
# Un'immagine gradevole
# Da commentare se non si dispone di scheda grafica
splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Gentoo Linux 2.6.12
# La partizione dove si trova l'immagine del kernel (o il sistema operativo)
root (hd0,0)
kernel /boot/kernel-2.6.12-gentoo-r10 root=/dev/hda3

# Le prossime quattro righe vanno messe solo se si ha un dualboot con Windows.
# In questo caso, Windows è in /dev/hda6.
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1

Codice 2.4: grub.conf per utenti che hanno usato il genkernel

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

title=Gentoo Linux 2.6.12
root (hd0,0)
kernel /boot/kernel-2.6.12-gentoo-r10 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda3 udev
initrd /boot/initramfs-genkernel-amd64-2.6.12-gentoo-r10

# Solo nel caso si desideri il dual-boot
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1

Se si usa uno schema di partizioni e/o un'immagine del kernel differenti da quelli dell'esempio, cambiare le impostazioni di conseguenza. Assicurarsi che qualsiasi cosa che segue un GRUB-device (come (hd0,0)), sia relativa al mountpoint, e non a root. In altre parole, (hd0,0)/grub/splash.xpm.gz è /boot/grub/splash.xpm.gz poichè (hd0,0) è /boot.

Se si sceglie di usare uno schema di partizioni differente e non si è messo /boot in una partizione separata, il prefisso /boot usato nell'esempio sopra è richiesta. Se si segue lo schema di partizioni usato in questo manuale, il prefisso /boot non è richiesto, ma va bene un link simbolico a boot. In poche parole, gli esempi sopra dovrebbero funzionare sia se si è definita una partizione separata di /boot sia se non lo si è fatto.

Se si ha bisogno di inserire opzioni ulteriori al kernel, si deve aggiungerle alla fine dei comandi del kernel. Si è già inserita una opzione (root=/dev/hda3 o real_root=/dev/hda3), ma se ne possono inserire altre, ad esempio l'istruzione video per il framebuffer, di cui si è parlato precedentemente:

Coloro che usano genkernel devono sapere che i loro kernel hanno le stesse opzioni di boot del CD di installazione. Per esempio, se si dispone di un disco SCSI, si dovrebbe aggiungere doscsi come opzione del kernel.

Salvare il file grub.conf e uscire. Si deve installare GRUB nel MBR (Master Boot Record).

Gli sviluppatori di GRUB raccomandano l'uso di grub-install. Se per qualche ragione grub-install non funziona correttamente, si può installare GRUB manualmente.

Continuare con Default: Installare GRUB con grub-install o Alternativa: Installare GRUB con le istruzioni manuali.

Default: Installare GRUB con grub-install

Per installare GRUB ci sarà bisogno del comando grub-install. Però, grub-install non funziona subito dato che si è dentro un ambiente in cui si è effettuato il chroot. Si deve prima creare /etc/mtab che elenca tutti i filesystem montati. Fortunatamente c'è un modo facile per farlo, basta copiare /proc/mounts in /etc/mtab, esclusa la riga rootfs se non si è creata una partizione di boot separata. Il seguente comando funziona in entrambi i casi:

Codice 2.5: Creare /etc/mtab

# grep -v rootfs /proc/mounts > /etc/mtab

Ora si può installare GRUB con grub-install:

Codice 2.6: Eseguire grub-install

# grub-install /dev/hda

Se si hanno altre domande su GRUB, consultare le GRUB FAQ o il GRUB Manual.

Continuare con Riavviare il sistema.

Alternativa: Installare GRUB con le istruzioni manuali

Per iniziare la configurazione di GRUB, digitare grub. Viene visualizzato il prompt della linea di comando di grub, grub>. Ora si può procedere a digitare i comandi corretti per installare il boot record di GRUB sull'hard disk.

Codice 2.7: Avviare la shell di GRUB

# grub

Nota: Se il sistema non dispone di un lettore floppy, aggiungere l'opzione --no-floppy al comando precedente per evitare che grub lo cerchi.

Nella configurazione di esempio, si desidera installare GRUB in modo che legga le proprie informazioni dalla partizione di boot /dev/hda1 e installare il boot record di GRUB nel MBR (master boot record) dell'hard disk, in modo che la prima cosa che si veda, quando si accende il computer, è il promptdi GRUB. Se non si è seguita la configurazione di esempio durante l'installazione, è necessario cambiare i comandi di conseguenza.

Il meccanismo di completamento con il tasto TAB, può essere usato da dentro GRUB. Per esempio, se si digita "root (" seguito da TAB, viene elencata una lista degli hard disk disponibili (come hd0). Se si digita "root (hd0," seguito da TAB, viene invece elencata una lista delle partizioni disponibili nel disco (come hd0,0).

Con il tasto TAB non dovrebbe essere difficile impostare GRUB . Ecco ora la vera e propria configurazione di GRUB.

Codice 2.8: Installare GRUB nel MBR

grub> root (hd0,0)          (Specifica dove è la partizione /boot)
grub> setup (hd0)           (Installa GRUB nel MBR)
grub> quit                  (Esce dalla shell di GRUB)

Nota: Se si desidera installare GRUB in un'altra partizione, invece che nel MBR, è necessario cambiare il comando setup, in modo che esso punti alla partizione corretta. Per esempio, se si vuole installare GRUB in /dev/hda3, allora il comando diventa setup (hd0,2). Ma questo non è un caso molto comune.

Se si hanno altre domande su GRUB, consultare le GRUB FAQ o il GRUB Manual.

Ora continuare con Riavviare il sistema

10.c. Riavviare il sistema

Uscire dall'ambiente in cui si è fatto il chroot e smontare tutte le partizioni montate. Poi digitare il comando reboot.

Codice 3.1: Smontare tutte le partizioni e riavviare

# exit
# cd
# umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo
# reboot

Naturalmente non dimenticarsi di rimuovere il CD avviabile, altrimenti il CD ripartirà di nuovo invece del nuovo sistema Gentoo.

Dopo aver riavviato, finire con Termine dell'installazione Gentoo.


[ << ] [ < ] [ Home ] [ > ] [ >> ]


Stampa

Visualizza tutto

Aggiornato il 2 febbraio 2006

Questa traduzione non è più mantenuta

Oggetto: In questo capitolo sarà descritto il Bootloader GRUB, e si vedrà la sua configurazione in base alle proprie necessità.

Sven Vermeulen
Autore

Roy Marples
Autore

Daniel Robbins
Autore

Chris Houser
Autore

Jerry Alexandratos
Autore

Seemant Kulleen
Sviluppo x86

Tavis Ormandy
Sviluppo Alpha

Jason Huebel
Sviluppo AMD64

Guy Martin
Sviluppo HPPA

Pieter Van den Abeele
Sviluppo PPC

Joe Kallar
Sviluppo SPARC

John P. Davis
Redazione

Pierre-Henri Jondot
Redazione

Eric Stockbridge
Redazione

Rajiv Manglani
Redazione

Jungmin Seo
Redazione

Stoyan Zhekov
Redazione

Jared Hudson
Redazione

Colin Morey
Redazione

Jorge Paulo
Redazione

Carl Anderson
Redazione

Jon Portnoy
Redazione

Zack Gilburd
Redazione

Jack Morgan
Redazione

Benny Chuang
Redazione

Erwin
Redazione

Joshua Kinard
Redazione

Tobias Scherbaum
Redazione

Xavier Neys
Redazione

Grant Goodyear
Revisione

Gerald J. Normandin Jr.
Revisione

Donnie Berkholz
Revisione

Ken Nowack
Revisione

Lars Weiler
Contributi

Marco Mascherpa
Traduzione

Stefano Rossi
Traduzione

Enrico Morelli
Traduzione

Donate to support our development efforts.

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