Come partizionare l' hard disk per Linux (parte 3)

Finalmente arriva la parte pratica in cui vedremo come utilizzare il tool a riga di comando fdisk. Ho deciso di impostare l' articolo proprio su fdsik e non su un' altro programma perchè fdisk è lo strumento a riga di comando più diffuso per partizionare l' hard disk e potrebbe capitarci di doverlo usare per completare la fase di installazione di qualche distribuzione che non prevede tool grafici.
Prima di tutto dobbiamo sapere che in Linux possiamo riferirici al nostro hard disk tramite l' interfaccia astratta /dev/hda se il nostro sistema utilizza drive IDE oppure tramite l' interfaccia /dev/sda se invece il nostro sistema utilizza drive SATA o SCSI. Ogni hard disk ha un' interfaccia diversa, quidi se noi abbiamo 3 hard disk con drive IDE, noi potremo riferirci ad essi tramite le seguenti interfacce: /dev/hda, /dev/hdb e /dev/hdc.
Ogni hard disk come ormai dovremmo aver capito, può avere varie partizioni ed ogni partizione può essere riferita aggiungendo il suo numero al nome dell' interfaccia. Per esempio /dev/hda1 indicherà la prima partizione sul primo hard disk. Mentre /dev/hdc3 indicherà la terza partizione del terzo hard disk. Vi ricordate che nello scorso articolo vi ho detto che il limite di partizioni primarie è 4? Questo vuol dire che se noi vediamo un numero maggiore di 4 nel nome dell' interfaccia del nostro hard disk, questa indicherà una partizione logica e non primaria. Per esempio /dev/hda5 indicherà la prima partizione logica del primo hard disk.
Per chiarire ulteriormente le idee a chi non avesse ancora capito, ecco come è partizionato il mio hard disk dopo aver eseguito un' installazione default di Ubuntu:



Come si può vedere, il mio hard disk presenta una partizione primaria /dev/hda1 ed una partizione estesa /dev/hda2 che contiene completamente una partizione logica /dev/hda5 (che è la partizione di swap). Alcuni di voi forse si staranno meravigliando del fatto che non ci sono le partizioni /dev/hda3 e /dev/hda4. Ma è perfettamente normale, perchè come abbiamo detto le partizioni primarie hanno numeri che vanno da 1 a 4 mentre le partizioni logiche vanno da 5 in su.
Il comando che ci permette di vedere le partizioni dei nostri hard disk è fdisk -l e dobbiamo avere privilegi di amministratore per poter eseguirlo.

Se vogliamo partizionare un hard disk (per esempio /dev/hda) dobbiamo digitare il seguente comando in un terminale: fdisk /dev/hda. Ripeto ancora una volta che fdisk può essere utilizzato solo se abbiamo privilegi da amministratore. A questo punto comparirà il prompt dei comandi:


Come potete vedere è possibile che compaia anche un messaggio di warning che ci avvisa che il numero di cilindri del nostro hard disk è maggiore di 1024. Il problema dei 1024 cilindri è molto conosciuto tra gli utenti Linux. I BIOS meno recenti riescono ad accedere solo ai primi 1024 cilindri dell' hard disk e quindi è consigliabile che il boot loader (esempio LILO o GRUB) ed anche l' immagine del kernel siano contenuti completamente nei primi 1024 cilindri.
Per vedere la tabella delle partizioni basta digitare p e premere invio. Per cancellare una partizione dobbiamo digitare il tasto d, premere invio e poi digitare il numero della partizione da cancellare. Da questo momento la partizione che abbiamo deciso di cancellare non sarà più presente nella tabella delle partizioni ma non è stata ancora cancellata. In realtà con il comando d noi scheduliamo le partizioni che devono essere cancellate. Tali partizioni verranno cancellate definitivamente solo quando confermeremo il tutto digitando il tasto w. Quindi anche dopo aver dato il comando d, se vogliamo uscire senza salvare le modifiche basterà digitare il tasto q e nessuna partizione verrà cancellata. Per cancellare tutte le partizioni dovremo digitare il comando d per ogni singola partizione.
Dopo aver cancellato tutte le partizioni del nostro hard disk, dovremo crearne delle nuove. Per creare una partizione digitiamo il tasto n e potremo scegliere il tipo di partizione:



Digitiamo p per creare una partizione primaria oppure l per creare una partizione logica. Dopo aver scelto il tipo di partizione, il programma ci chiederà il numero di partizione: se prima abbiamo cancellato tutte le partizioni ed abbiamo deciso di crearne una primaria, la nuova partizione avrà numero 1. Dopo aver scelto il numero della partizione, dobbiamo scegliere il primo cilindro della partizione. Possiamo premere invio per confermare automaticamente il cilindro di partenza di default (consigliato se non si è sicuri) oppure possiamo digitare il numero del cilindro scelto da noi. Poi dobbiamo decidere quanto deve essere grande la partizione: possiamo scegliere la grandezza in megabyte, kilobyte oppure se siamo sicuri possiamo anche scrivere il numero esatto di cilindri. Se per esempio vogliamo una partizione che sia grande 80 megabyte basterà scrivere +80M e premere invio. Se al momento della scelta della grandezza voi premete solo invio, la partizione occuperà tutto lo spazio libero sull' hard disk.
Ricordiamoci di rendere avviabile la partizione che contiene l' immagine del kernel. Per fare ciò basta digitare il tasto a e poi digitare il numero della partizione che contiene l' immagine del kernel. Per verificare che non abbiamo fatto errori, osserviamo la tabella delle partizioni (premendo il tasto p) e se tutto sarà andato bene dovremo vedere un asterisco vicino al nome della partizione avviabile. Ci sono due cose da dire sulle partizioni avviabili: la prima è che solitamente la partizione avviabile in Linux è quella che contiene la directory /boot. La seconda cosa da dire è che cercando in rete ho letto che rendere avviabile una partizione non è necessario con Linux ma ho letto anche che a volte ci sono dei BIOS recenti che richiedono per forza almeno una partizione avviabile. Quindi, per essere sicuri io vi consiglio sempre di rendere avviabile la partizione che contiene l' immagine del kernel anche perchè questo è il procedimento consigliato nel manuale di Gentoo.

Per creare una partizione di swap, digitiamo sempre il tasto n per creare una nuova partizione, poi scegliamo il tipo di partizione, digitiamo il numero della partizione, scegliamo il primo cilindro ed impostiamo la dimensione della partizione. Dopo aver fatto questo dobbiamo digitare il tasto t per cambiare il tipo di partizione. Dopo aver digitato il tasto t, scriviamo il numero della partizione di swap che abbiamo appena creato e poi scriviamo 82. Questo numero serve ad identificare una partizione di swap. Per verificare che non abbiamo fatto errori possiamo sempre osservare la tabella delle partizioni digitando il tasto p.

Adesso sappiamo creare partizioni primarie (avviabili e non) e sappiamo creare partizioni di swap. Vediamo adesso come creare partizioni estese che contengono partizioni logiche.
Prima di tutto digitiamo il tasto n per creare una nuova partizione, poi digitiamo il tasto p perchè una partizione estesa è pur sempre una partizione primaria, digitiamo il numero della partizione, scegliamo il cilindro di partenza ed infine scegliamo la dimensione della partizione. A questo punto abbiamo creato una partizione primaria! Per farla diventare una partizione estesa dobbiamo digitare il tasto t, scrivere il numero della partizione e poi digitare 5. Il valore 5 identifica una partizione estesa (così come avevamo il valore 82 per le partizioni swap).
Ora che abbiamo la nostra partizione estesa, osserviamo un attimo la tabella delle partizioni con il tasto p e vediamo qual'è il primo cilindro e l' ultimo cilindro della partizione estesa. Quando creiamo le partizioni logiche (che dovranno essere contenute nella partizone estesa), dobbiamo ricordarci che devono riempire tutto lo spazio della partizione estesa. Quindi, la prima partizione logica inizierà dallo stesso cilindro iniziale della partizione estesa mentre l' ultima partizione logica che creeremo terminerà sull' ultimo cilindro della partizione estesa.
Ecco un semplice esempio:




Come potete vedere l' hard disk qui sopra presenta una partizione primaria /dev/hda1 ed una partizione estesa /dev/hda2. Quest' ultima partizione inizia al cilindro 9408 e termina al cilindro 9726. Inoltre la partizione estesa contiene due partizioni logiche che sono /dev/hda5 e /dev/hda6. Come si può facilmente notare, le due partizioni logiche occupano completamente tutto lo spazio della partizione estesa. Ciò vuol dire che la prima partizione logica deve iniziare al cilindro 9408 che è il primo cilindro della partizione estesa e l' ultima partizione logica deve finire sul cilindro 9726 che è l' ultimo cilindro della partizione estesa.
Spero sia stato sufficientemente chiaro.

Dopo aver creato tutte le partizioni, ricordiamoci sempre di dare uno sguardo alla tabella delle partizioni. Se tutto va bene, possiamo salvare le modifiche e scrivere la nuova tabella delle partizioni digitando il tasto w e premendo invio.


Se avete letto tutte le 3 parti della guida "Come partizionare l' hard disk per Linux" non avrete perso tempo. Sicuramente ne saprete molto di più rispetto a coloro che sanno solo utilizzare tool grafici senza però capire cosa stanno realmente facendo.


NOTA: l' amico Paso ha pubblicato oggi 5 dicembre un interessante articolo che spiega come installare, partizionare, formattare e montare all' avvio un nuovo hard disk interno su Linux. Sebbene gli argomenti trattati possano sembrare simili alla mia guida, posso assicurarvi che nell' articolo di Paso troverete molte informazioni interessanti che io non ho trattato. Il suo articolo è ottimo e vi consiglio caldamente di dargli uno sguardo anche perchè oggi è sempre più difficile trovare una guida scritta bene, chiara ed allo stesso tempo molto istruttiva.

8 commenti:

    Piccola nota: Paso mi ha avvisato che anche lui ha intenzione di pubblicare un articolo su fdisk nei prossimi giorni. A scanso di equivoci, dico con certezza che è solo una coincidenza e può essere sempre utile avere 2 articoli simili perchè può capitare che io abbia dimenticato qualche cosa che Paso può aver scritto e viceversa.

    On 4 dicembre 2007 alle ore 19:46 Anonimo ha detto...

    Un po' di chiarezza non guasta mai. Grazie Phoenix

    On 4 dicembre 2007 alle ore 22:42 Anonimo ha detto...

    La mia guida arriva domani! le sovrapposizioni sono minime, diciamo che sono uno il complemento dell'altra.
    ciao

    PS: ma che cavolata i commenti senza possibilità di linkare il proprio blog. Tanto mi linko lo stesso :P
    tiè: http://paso.wordpress.com/

    capisco un decimo di quello che scrivi, ma sapere che continui a postare mi tranquillizza.

    ciao vecchio

    @ emanuele: capisci un decimo di quello che scrivo? Cavolo, allora state capendo troppo! La prossima volta cercherò di scrivere l' articolo in arabo così voglio vedere chi capisce! :)

    Quasi in simbiosi mi unisco a em,
    l'importante è esserci. :-)

    navigando fra la rete alla ricerca di una guida sul come partizionare un'HD, mi sono imbatutto sul tuo blog, la quale ne approfitto per farti i miei complimenti.. non solo sul modo in cui scrivi, ma provo una certa invidia anche per la scelta del layout, visto che pure io uso blogger, ma non son riuscito a trovare "cose" che tu hai.. ma torniamo al riferimento di questo post; sono io orbo, o mkanca la parte 2 della guida? io vedo solo la parte uno e la parte 3

    On 20 luglio 2009 alle ore 11:42 Anonimo ha detto...

    All' indirizzo http://vitedigitali.blogspot.com/search?q=partizionare puoi trovare tutte le 3 parti dell' articolo.