2. Informazioni tecniche

2.1. Dischi

Un hard disk è costituito di settori, numerati da 0 al massimo.

dmesg dice, ad esempio:

hdb: ST34321A, 4103MB w/128kB Cache, CHS=523/255/63
   

CHS significa Cilindri, Testine, Settori (Cylinders, Heads, Sectors).

523*255*63=8401995 settori di 512 byte, da cui i 4103 Mbyte. Questa è solo una mappatura logica, non coincide necessariamente con quanto riportato sulla copertura del disco (tranne che per la dimensione totale).

La vera dimensione dei settori non ci interessa, dato che non vogliamo modificare nulla ma ripristinare uno stato passato. Per noi la dimensione predefinita data da fdisk andrà benissimo.

La dimensione vista dal sistema è direttamente dipendente dal BIOS (Basic Input/Output System - la ROM dei PC). Il modo (mode) dell'hard disk indicato nel BIOS è essenziale. Su un disco nuovo, è meglio usare il riconoscimento automatico e scegliere “yes”. Comunque, qualsiasi modifica a questo livello può distruggere tutti i dati del disco, quindi non giocherellare con queste impostazioni senza alcuna ragione grave.

Comunque, questa impostazione è probabilmente quella che utilizza il tuo disco, quindi non preoccuparti.

2.2. Partizioni

I dischi oggigiorno sono grandissimi, non è raro che arrivino a 40 Gb, perciò non è molto comodo avere tutta questa roba impacchettata da una sola parte. Solo Windows lo fa, e se usi Linux probabilmente è perché sei conscio di quanto inefficiente sia l'altro.

Un hard disk è perciò di solito diviso in alcuni pezzi chiamati “partizioni” (per maggiori dettagli vedi il “partition HOWTO”, e leggi anche /usr/share/doc/package/util/README.fdisk)

Diamo un'occhiata a(una parte de)l mio listato di fdisk -l:

Disk /dev/hdb: 255 heads, 63 sectors, 523 cylinders
Units = cylinders of 16065 * 512 bytes 
Device Boot Start End Blocks Id System 
/dev/hdb1 1 153 1228941 83 Linux 
/dev/hdb2 154 166 104422+ 82 Linux swap 
/dev/hdb3 * 167 291 1004062+ 83 Linux 
/dev/hdb4 295 523 1839442+ 5 Extended 
/dev/hdb5 295 422 1028128+ 83 Linux 
/dev/hdb6 423 523 811251 6 FAT16 
   

Questo è il mio secondo hard disk, e riflette tutte le prove che ho fatto (il primo è troppo semplice per essere interessante).

/dev/hdb è il mio secondo disco IDE (slave sull'interfaccia primary, primaria),

/dev/hdb1 è la prima partizione primaria (primary), che va dal primo (1) blocco al blocco 153.

Ci possono essere quattro di queste partizioni primarie. Se uno ne vuole più di 4, una di esse dev'essere una “estesa” (extended) (non necessariamente la quarta); tutte le successive partizioni sono chiamate “logiche” (logical), e sono poste dentro quella estesa. Nota che la partizione numero 5 e la numero 4 hanno lo stesso inizio. La numero cinque è logica, la numero 4 estesa. Le partizioni logiche cominciano sempre da 5, anche se non ce ne sono 4 primarie.

Questo è il listato di fdisk -u -l per un altro disco:

Disque /dev/hda : 240 têtes, 63 secteurs, 2584
cylindres Unités = secteurs sur 1 * 512 octets
Périphérique Amorce Début Fin Blocs Id Système 
/dev/hda1 * 63 10357199 5178568+ c Win95 FAT32 (LBA)
/dev/hda2 15452640 39070079 11808720 83 Linux
/dev/hda3 10357200 15150239 2396520 f Win95 Etdue (LBA) 
/dev/hda4 15150240 15452639 151200 84 Lecteur C: caché OS/2 
/dev/hda5 10357263 10463039 52888+ 83 Linux 
/dev/hda6 10463103 10780559 158728+ 82 Echange Linux
/dev/hda7 10780623 15150239 2184808+ 6 FAT16 
Les entrées de la table de partitions ne suivent pas l'ordre du disque.
   

Non preoccuparti per le parti in francese, sono francese... guarda il tuo listato. Naturalmente i numeri sono più grandi.

2.3. Perché ci sono problemi?

Il problema è che tutti i sistemi operativi installati devono condividere i dischi, e poiché all'avvio il BIOS può analizzare solo il primo, ci dev'essere una cosiddetta “tabella delle partizioni” (partition table) proprio all'inizio di tale disco. Questa tabella delle partizioni è posta nel Master Boot Record (MBR) proprio a fianco del boot loader.

Ogni utilizzo sbagliato dell'MBR da parte di uno degli OS porta a un problema. Quando si prova ad installare un qualche sistema operativo, è probabile che rispondere sì a domande tipo “automatic partitioning?” dia problemi... Questo è particolarmente vero per Windows, specialmente con installazioni personalizzate allegate a PC su misura (quando non è incluso un vero CD di Windows, ad esempio in molti portatili). Ma è anche il caso di alcuni nuovi programmi di installazione “intelligenti” (che intelligenti non sono) di Linux, forniti con alcune distribuzioni recenti.