Traduzioni: English - Français - Italiano


GRUB (v.1)

Configurazione

In modo predefinito il file di configurazione di GRUB in Debian è /boot/grub/menu.lst. In altre configurazioni si possono vedere riferimenti a /etc/grub.conf.

Deve contenere almeno queste righe:

 default=0
 timeout=30
 # Per avviare il kernel predefinito
 title Debian Linux
 root (hd0,1)
 kernel /boot/vmlinuz root=LABEL=/
 initrd /boot/initrd.img

Rapida panoramica dei comandi

Si noti che il comando root non è correlato al parametro root del kernel linux, root specifica la partizione in cui cercare i percorsi relativi. Se si ha una partizione /boot in (hd0,0) allora:

 root (hd0,0)
 kernel ''vmlinuz root=LABEL=''

è equivalente a:

 kernel (hd0,0)/vmlinuz

Denominazione dei device e delle partizioni

Grub utilizza i numeri per nominare gli hard disk e le partizioni iniziando da 0; questo tende a confondere l'utente linux abituato a leggere hda1 come primo disco e prima partizione. Ecco una semplice tabella che lo illustra:

linux

grub

Primo bus IDE, master

hda

hd0

Primo bus IDE, master, prima partizione primaria

hda1

hd0,0

Primo bus IDE, slave, prima partizione estesa

hdb5

hd1,4

Installazione

Per installare grub come sistema di avvio principale eseguire semplicemente:

 # grub-install /dev/hda

Ora bisogna solo modificare il file /boot/grub/menu.lst.

Esempi

Linux

Se non si sa dove risieda /boot eseguire il comando grub e cercare il file:

 grub> kernel (hd0,1)/bo

Premere il tasto tab, se /boot è in quella partizione il comando verrà completato; funziona anche per il menu d'avvio. Supponendo di avere windows in hda1, la partizione /boot su hda2 e / su hda3:

 grub> kernel (hd0,0)/vm (<- premere TAB qui)
 Error 15: File not found

 grub> kernel (hd0,1)/vm (<- premere nuovamente TAB che completerà vmlinuz)
  I file possibili sono: vmlinuz-2.6.10-1-k7 vmlinuz

Con /boot in (hd0,1) le righe saranno:

 title Linux
 root (hd0,1)
 kernel /vmlinuz root=/dev/hda3 vga=792
 initrd /initrd.img

Windows su hda1

Queste sono le righe per avviare windows situato su hda1:

 title ["WindowsXP"]
 rootnoverify (hd0,0)
 makeactive
 chainloader  +1

Windows in partizione diversa da hda1

Se l'ordine dei dischi è cambiato, il sistema d'avvio di Microsoft sarà confuso e si rifiuterà di partire. Ipotizzando che sia in hdb1 questo risolve il problema:

 title Windows
  map (hd0) (hd1)
  map (hd1) (hd0)
  rootnoverify (hd1,0)
  makeactive
  chainloader +1

Si possono nascondere partizioni con il comando hide. Ad esempio se è in hda2 sarà:

 title Windows
  hide (hd0,0)
  rootnoverify (hd0,1)
  makeactive
  chainloader +1

Nota: il sistema d'avvio di microsoft ha varie falle critiche e il suo comportamento cambia a seconda della versione e delle patch

Si veda anche


CategoryBootProcess