AREA RISERVATA
MENU'
Un singolo hard disk può essere diviso in diverse partizioni. Ciascuna partizione funziona come se fosse un disco separato; l'idea è che se avete un hard disk, e ad esempio volete avere due sistemi operativi, potete suddividere il disco in due partizioni. Ciascun sistema operativo usa la sua partizione come vuole e non tocca quella dell'altro. In questo modo i due sistemi operativi possono coesistere in pace sullo stesso hard disk; senza le partizioni se ne sarebbe dovuto comprare uno per ciascun sistema operativo.
I floppy non vengono partizionati, non per motivi tecnici, ma perché sono molto piccoli, e creare al loro interno delle partizioni non sarebbe utile se non in casi molto rari. I CD-ROM di solito non vengono partizionati, dato che è molto più semplice usarli come un grande disco, e in genere non è necessario avere diversi sistemi operativi sullo stesso CD-ROM.
Le informazioni sul partizionamento di un hard disk si trovano nel suo primo settore (cioè, il primo settore della prima traccia della prima superficie del disco). Il primo settore si chiama master boot record (MBR) del disco: è il settore che il BIOS legge ed avvia quando la macchina viene accesa. Il master boot record contiene un piccolo programma che legge la tabella delle partizioni, controlla quale partizione è attiva (cioè quale è contrassegnata avviabile) e legge il primo settore di quella partizione, il boot sector (settore di avvio) della partizione (anche l'MBR è un settore di avvio, ma ha uno status speciale e quindi un nome speciale). Il boot sector contiene un altro programmino che legge la prima parte del sistema operativo contenuto in quella partizione (sempre che sia avviabile) e lo avvia.
Lo schema di partizionamento non è costruito all'interno dell'hardware, e nemmeno nel BIOS. È solo una convenzione che viene seguita da molti sistemi operativi: non tutti, ma quelli che non lo fanno sono le eccezioni. Alcuni sistemi operativi permettono l'uso di partizioni, ma occupano una partizione sull'hard disk, ed usano il loro metodo di partizionamento interno lì dentro. Quest'ultimo tipo coesiste pacificamente con gli altri sistemi operativi (incluso Linux), e non richiede misure speciali, ma un sistema operativo che non supporta le partizioni non può coesistere sullo stesso disco con un altro sistema.
Come precauzione è una buona idea scrivere su carta la tabella delle partizioni, in modo che se si corrompesse ci sarebbe una speranza di non perdere tutti i file (una tabella delle partizioni corrotta si può recuperare con fdisk ). Le informazioni rilevanti si ricavano dal comando fdisk -l :
$ fdisk -l /dev/hda Disk /dev/hda: 15 heads, 57 sectors, 790 cylinders Units = cylinders of 855 * 512 bytes Device Boot Begin Start End Blocks Id System /dev/hda1 1 1 24 10231+ 82 Linux swap /dev/hda2 25 25 48 10260 83 Linux native /dev/hda3 49 49 408 153900 83 Linux native /dev/hda4 409 409 790 163305 5 Extended /dev/hda5 409 409 744 143611+ 83 Linux native /dev/hda6 745 745 790 19636+ 83 Linux native $
$
Disk /dev/hda: 15 heads, 57 sectors, 790 cylinders
Units = cylinders of 855 * 512 bytes
Device Boot Begin Start End Blocks Id System
/dev/hda1 1 1 24 10231+ 82 Linux swap
/dev/hda2 25 25 48 10260 83 Linux native
/dev/hda3 49 49 408 153900 83 Linux native
/dev/hda4 409 409 790 163305 5 Extended
/dev/hda5 409 409 744 143611+ 83 Linux native
/dev/hda6 745 745 790 19636+ 83 Linux native
Per superare questo problema di progettazione, furono create le partizioni estese. Questo trucco permette di partizionare una partizione primaria in sotto-partizioni. La partizione primaria così suddivisa è la partizione estesa, e le sottopartizioni sono partizioni logiche: si comportano come partizioni primarie4.6, ma vengono create in maniera diversa. Non comportano una differenza di velocità.
La struttura delle partizioni di un hard disk può apparire come in figura 4.2. Il disco viene diviso in tre partizioni primarie, la seconda delle quali è divisa in due partizioni logiche. Parte del disco non viene partizionato. Il disco intero e ciascuna partizione primaria hanno un settore di boot.
Figure 4.2: Un esempio di partizionamento di hard disk.
Ci sono molti programmi per creare e rimuovere partizioni. La maggior parte dei sistemi operativi ne ha uno proprio, ed è una buona idea usare quello del sistema che si usa, in caso faccia qualcosa di insolito che gli altri non fanno. La maggior parte di questi programmi, compreso quello per Linux, si chiamano fdisk , o variazioni sul tema. I dettagli sull'uso dell'fdisk di Linux sono riportati nella sua pagina man. Il comando cfdisk è simile a fdisk , ma ha un'interfaccia utente più carina (a tutto schermo).
Quando si usano dei dischi IDE, la partizione di boot (quella con i file di immagine del kernel che si avvia) deve essere completamente all'interno dei primi 1024 cilindri, perché il disco viene usato dal BIOS durante l'avviamento del sistema (prima che i sistema vada in modalità protetta), e il BIOS non può gestire più di 1024 cilindri. Talvolta è possibile usare una partizione di boot che è solo parzialmente entro i primi 1024 cilindri: questo trucco funziona solo se tutti i file che vengono letti dal BIOS sono entro il cilindro 1024. Dato che una cosa del genere è difficile da imporre, è una pessima idea provarci: non saprete mai quando un aggiornamento del kernel o la deframmentazione del disco vi renderà non avviabile il sistema; quindi, assicuratevi che la partizione di boot sia completamente all'interno dei primi 1024 cilindri.
Alcune versioni più recenti del BIOS e dei dischi IDE possono, in effetti, gestire dischi con più di 1024 cilindri. Se avete un sistema di questo genere, potete dimenticarvi del problema; se non ne siete sicuri, mettetela comunque entro i primi 1024 cilindri.
:
Ciascuna partizione dovrebbe avere un numero pari di settori, dato che i filesystem di Linux usano blocchi di 1 kb, cioè due settori. Un numero dispari di settori comporterà il mancato utilizzo dell'ultimo settore; una cosa del genere non crea problemi, ma è brutto, e alcune versioni di fdisk vi daranno un avvertimento. Modificare la dimensione di una partizione di solito richiede di fare il backup di tutto (preferibilmente di tutto il disco, non si sa mai), cancellare la partizione, crearne una nuova, e rimettere tutti i dati. Se la partizione deve aumentare, dovrete anche modificare la dimensione (e fare il backup e il restore) anche delle partizioni confinanti.
Dato che modificare la dimensione di una partizione è una cosa complicata, è preferibile dimensionarle bene la prima volta, o avere un mezzo di backup efficace e facile da usare. Se state installando da un mezzo che non richiede molto intervento umano (ad esempio un CD-ROM, e non un floppy), spesso è più facile giocare con diverse configurazioni all'inizio: dato che non avete dati di cui fare backup, non è poi così doloroso modificare le dimensioni delle partizioni diverse volte.
Esiste un programma per l'MS-DOS, chiamato fips , che ridimensiona le partizioni MS-DOS senza dover fare backup e recuperare tutti i dati, ma per gli altri filesystem è ancora necessario.
[ Home ] [ Su ]