GRUB (Italiano)

From ArchWiki
Revision as of 16:38, 5 July 2009 by K.a.o.s. (Talk | contribs) (Traduzione e creazione pagina)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Summary help replacing me
Copre vari aspetti del GRand Unified Bootloader (GRUB2) di prossima generazione.
Lingue disponibili

Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n entry

Introduzione

Warning: Il GRand Unified Bootloader (GRUB2) di prossima generazione è ancora in fase di sviluppo. Sei stato avvertito! Per la maggior parte delle persone, ad eccezione di quelle con le configurazioni più esotiche, GRUB2 dovrebbe funzionare.

I comandi cambiano da GRUB a GRUB2. Probabilmente si preferisce prendere confidenza con questi prima di procedere. Ad esempio: "find" è stato sostituito con "search"

http://grub.enbug.org/CommandList

Installare il pacchetto di GRUB2

Per prima cosa installare grub2 con pacman:

# pacman -Sy grub2

Modificare il file di configurazione di grub2 con i propri settaggi. Il "vecchio" Template:Filename è stato sostituito da un nuovo file chiamato Template:Filename:

# nano /boot/grub/grub.cfg
Note: Usare Template:Filename per gli IDE e Template:Filename per gli SCSI e SATA.

Ecco un esempio di un semplice file di configurazione:

# File di configurazione per GRUB2 - The GNU GRand Unified Bootloader
# /boot/grub/grub.cfg

# TABELLA CONVERSIONE DISPOSITIVI
#
#  Linux           Grub
# -------------------------
#  /dev/fd0        (fd0)
#  /dev/sda        (hd0)
#  /dev/sdb2       (hd1,2)
#  /dev/sda3       (hd0,3)
#

# Timeout per il menu
set timeout=5

# Imposta la voce 0 come voce predefinita
set default=0

# (0) Arch Linux
menuentry "Arch Linux" {
set root=(hd0,1)
linux /vmlinuz26 root=/dev/sda1 ro
initrd /kernel26.img
}

## (1) Windows
#menuentry "Windows" {
#set root=(hd0,3)
#chainloader +1
#}

Se non avete una partizione boot separata, Template:Codeline deve essere aggiunta a Template:Filename. Esempio:

# (0) Arch Linux
menuentry "Arch Linux" {
set root=(hd0,1)
linux /boot/vmlinuz26 root=/dev/sda1 ro
initrd /boot/kernel26.img
}

Installare o ripristinare GRUB nel Master Boot Record

GRUB può essere installato da un ambiente live, oppure direttamente da una installazione di Arch avviata.

Nella maggior parte dei casi, installare grub2 dovrebbe essere facile come eseguire il comando grub-install da root:

# grub-install /dev/sda

dove Template:Filename è la destinazione dell'installazione (in questo caso l'MBR del primo disco SATA)

Se questo fallisce con l'errore:

grub-probe: error: Cannot get the real path of `/dev/fd0'
Auto-detection of a filesystem module failed.
Please specify the module with the option `--modules' explicitly.

Provare aggiungendo Template:Codeline agli argomenti:

# grub-install --recheck /dev/sda

Oppure, dovreste essere in grado di installare grub2 avviando il sistema ed eseguendo il comando grub da root:

# grub
{questa sezione è ancora incompleta, dei passi devono essere aggiunti!!!}

(grub2 non ha un prompt interattivo)

Configurazione del boot loader

La configurazione di GRUB è fatta in questo file:

/boot/grub/grub.cfg

Attenzione, questa sezione è incompleta, sentitevi liberi di aggiungere tutte le opzioni di configurazioni mancanti qui!

Per le voci UUID:

# blkid

Dual boot

Queste sono le due vie più comuni di configurare il file Template:Filename. Per usi più complessi, sentitevi liberi di aggiungere descrizioni.

Con altre distribuzioni GNU/Linux

Questo è fatto esattamente nello stesso modo con cui Arch Linux è caricata. Qui assumiamo che l'altra distribuzione è nella partizione Template:Filename

menuentry "Altri Linux" {
set root=(hd0,2)
linux /boot/vmlinuz (aggiungere altre opzioni qui se richiesto)
initrd /boot/initrd.img (se l'altro kernel lo usa/necessita)
}

Con Windows

Si aggiunga questo alla fine del vostro Template:Filename. Questo assume che la partizione di Windows sia Template:Filename.

# (2) Windows XP
menuentry "Windows XP" {
set root=(hd0,3)
chainloader +1
}

Si noti che, anche se comunemente si crede sia il caso, Windows 2000 e versioni successive non hanno bisogno di essere sulla prima partizione per avviarsi. Se la partizione di Windows cambia numero (ovvero se dopo l'installazione, si aggiunge una partizione prima di quella di Windows), avrete bisono di modificare il file di Windows boot.ini per riflettere i cambiamenti (vedere questo articolo per dettagli su come fare).

Con Windows Vista, tramite EasyBCD e NeoGRUB

Poichè attualmente NeoGRUB di EasyBCD non capisce il formato del menu di GRUB v2, è necessario fare un chain-load sostituendo il contenuto del vostro file "C:\NST\menu.lst" con linee simili alle seguenti:

default 0
timeout 1
title       Chainload into GRUB v2
root        (hd0,7)
kernel      /boot/grub/core.img

Trucchi e consigli

Immagine di sfondo & fonts Bitmap

GRUB2 supporta le immagini di sfondo e i fonts bitmap nel formato pf2. Il font unifont è incluso nel pacchetto di grub2 in un file chiamato Template:Filename, oppure, come solamente caratteri ascii con il nome di Template:Filename. I formati delle immagini supportati includono tga, png e jpeg, se i corretti moduli sono caricati. La massima risoluzione supportata dipende dal vostro hardware. Una configurazione d'esempio che imposta un file tga come sfondo è la seguente:

if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode="1024x768x32"
  insmod gfxterm
  insmod vbe
  terminal_output gfxterm
  if terminal_output gfxterm; then true ; else
     terminal gfxterm
  fi
fi
insmod tga
background_image /boot/grub/archlinux.tga

Menu colorati

Per cambiare i colori in GRUB2 si deve specificare un opzione in Template:Filename:

color light-blue/black light-cyan/blue

Questi sono i colori di default per la release di Arch di GRUB-legacy. I colori disponibili per GRUB2 sono http://www.gnu.org/software/grub/manual/html_node/color.html.

Troubleshooting

Any troubleshooting should be added here.

I couldn't figure out how to uninstall grub1, and install grub2 to the MBR, as it isn't being booted by default. It is still booting grub1. So, an easy work-around, is rename Template:Filename or whatever, to Template:Filename (in /boot/grub/) and for each menu entry that you would like to use grub2, at the end type Template:Codeline. This will tell grub1 to forward control to grub2. This is an ugly hack though, so I advise setting the Template:Filename's timout as 0, otherwise the total timeout would be grub1's time out + grub2's which, for me would equal more than 18 seconds, which is quite a bit.

P.S. hopefully someone figures out how to pry grub1's dead fingers off of my MBR, and place grub2 on it :) .

In my case it had to do with my boot partition. Say boot-partition is Template:Codeline and your root is Template:Codeline (grub2 naming). grub-setup searches for Template:Filename. Just because it's on Template:Filename, it is unable to find it. So I copied the grub-folder to my root partition and everything worked fine:

E.g. (as root:)

# mount /boot
# cp -a /boot/grub /
# umount /boot
# mv /grub /boot/
# grub-install /dev/sda

Altre risorse