Chapter 7. Il boot ed il boot manager

Table of Contents

7.1. Il processo di boot sul PC
7.2. Boot management
7.3. Stabilire il bootloader
7.4. Boot con GRUB
7.5. La configurazione del bootloader con
7.6. Rimuovere il bootloader Linux
7.7. Creare il CD di avvio
7.8. Difficoltà possibili e la loro risoluzione
7.9. Ulteriori informazioni

Abstract

In questo capitolo, illustreremo per sommi capi il decorso del processo di boot del vostro sistema Linux. Inoltre vi indicheremo come configurare il bootloader attualmente utilizzato in , ovvero . Potete utilizzare un modulo per poter eseguire comodamente tutte le impostazioni necessarie. Se non avete ancora mai sentito parlare del processo di boot sotto Linux, proseguite con la lettura dei seguenti paragrafi per apprendere le nozioni teoretiche di base di questa tematica. Il capitolo si chiude con eventuali diffocoltà che potrebbero verificarsi e delle indicazioni sul modo di risolverle.

7.1. Il processo di boot sul PC

Durante il boot il kernel del sistema operativo assume il controllo del sistema a conclusione un processo che vede come attori il BIOS ed il bootloader. Quando accendete il computer il BIOS ( ingl. Basic Input Output System) inizializza schermo e tastiera ed esegue un test della memoria principale; il computer fino a questo punto non dispone ancora di un supporto di memoria di massa. In seguito verranno lette le informazioni riguardanti la data attuale, l'ora e le periferiche più importanti dai valori CMOS (CMOS setup). Una volta rilevato il disco rigido e la sua geometria, il controllo passa dal BIOS al bootloader.

Durante questo passaggio viene caricato in memoria il primo settore di dati fisico di 512 byte ed il programma situato all'inizio di questo settore ( Bootloader) inizia a svolgere la sua funzione. La sequenza delle istruzioni eseguite tramite il bootloader determina l'ulteriore decorso del processo di boot. I primi 512 byte del primo hard disk vengono perciò anche chiamati Master Boot Record.

Fino a questo punto (caricamento dell'MBR) il processo di boot si svolge in modo identico su ogni PC, indipendentemente dal sistema operativo installato, e il computer dispone fin qui solo delle routine (driver) memorizzate nel BIOS per l'accesso alle periferiche.

La configurazione del bootloader determina infine quale sistema operativo caricare con quali opzioni. Il bootloader trasmette a questo punto il controllo del sistema al sistema operativo. Non appena il controllo passa al sistema operativo, sono a vostra disposizione anche i driver contenuti nel kernel per realizzare il supporto del vostro hardware.

7.1.1. Master Boot Record

La struttura dell'MBR è stabilita da una convenzione estesa a tutti i sistemi operativi. I primi 446 byte sono riservati al codice del programma. I successivi 64 byte offrono lo spazio per la tabella delle partizioni contenente fino a 4 registrazioni; si veda la sezione Section 3.9, “Partizionare per esperti”. Senza la tabella delle partizioni, non esistono neppure i file system, in altre parole il disco rigido è praticamente inutilizzabile. Gli ultimi 2 byte devono contenere un “numero magico” (AA55): un MBR con un numero diverso viene considerato non valido dal BIOS e da tutti i sistemi operativi da PC.

7.1.2. Settori di boot

I settori di boot sono i primi settori delle partizioni del disco rigido, fatta eccezione per le partizioni estese che sono solo un “contenitore” di altre partizioni. I settori di boot hanno un volume di 512 byte e sono atti a contenere un codice in grado di inizializzare un sistema operativo che si trova su questa partizione: questo vale anche per settori di boot di partizioni DOS, Windows o OS/2 formatate (che contengono inoltre dati fondamentali del file system). Al contrario dei suddetti settori di boot, quelli delle partizioni Linux – anche dopo la creazione di un file system – sono in principio vuoti (!). Perciò una partizione Linux non è avviabile da sé, anche se contiene un kernel e un file system root valido. Un settore di boot con un codice valido per l'avvio del sistema deve avere negli ultimi 2 byte lo stesso contrassegno “magico” dell'MBR (AA55).

7.1.3. Eseguire il boot di DOS o Windows

Se nell'MBR vi è un codice di boot (generico) allora con esattamente una partizione primaria indicata come attiva o avviabile è possibile determinare il sistema da caricare. Di solito viene verificata la validità del settore di boot della partizione. Dal sistema caricato al prossimo boot è possibile passare in modo semplice ad un altro sistema ricorrendo a fdisk.

Se è una partizione DOS/Windows ad essere attiva, allora il settore di boot carica i driver .sys necessari per l'avvio del sistema. Sotto DOS potete contrassegnare solamente una partizione come attiva. Quindi un sistema DOS non potrà risiedere su un drive logico di una partizione estesa.

Sussiste la possibilità di installare Windows 2000/XP anche su una partizione logica, anche contemporaneamente diverse installazioni di Windows. I rispettivi file di avvio vengono però scritti sulla partizione primaria. Se a questo punto si installa un ulteriore sistema 2000/XP, esso verrà aggiunto automaticamente al menu di boot. Quindi rimane il fatto limitante che Windows non può fare a meno della partizione primaria.