Questa sezione spiega in pratica come partizionare il proprio disco fisso con l'utilità fdisk. Linux consente solo 4 partizioni primarie. Si può avere un numero molto più grande di partizioni logiche dividendo ulteriormente una delle partizioni primarie. Solo una delle partizioni primarie può essere suddivisa.
Esempi:
Quattro partizioni primarie (vedere la la Sezione 5.2)
Partizioni primarie e logiche coesistenti (vedere la la Sezione 5.3)
Per avviare fdisk digitare (come superutente) fdisk device al prompt dei comandi. device potrebbe essere qualcosa del tipo /dev/hda o /dev/sda (vedere la la Sezione 2.1.1). I comandi base di fdisk di cui si ha bisogno sono:
p visualizza la tabella delle partizioni
n crea una nuova partizione
d cancella una partizione
q esce senza salvare i cambiamenti fatti
w scrive la nuova tabella delle partizioni ed esce
I cambiamenti che vengono fatti alla tabella delle partizioni non hanno alcun effetto fino a che non si dà il comando di scrittura (w). Ecco un esempio di tabella delle partizioni:
Disk /dev/hdb: 64 heads, 63 sectors, 621 cylinders Units = cylinders of 4032 * 512 bytes Device Boot Start End Blocks Id System /dev/hdb1 * 1 184 370912+ 83 Linux /dev/hdb2 185 368 370944 83 Linux /dev/hdb3 369 552 370944 83 Linux /dev/hdb4 553 621 139104 82 Linux swapLa prima riga mostra la geometria del disco fisso. Può non essere accurata fisicamente, ma la si può accettare come se lo fosse. Il disco fisso in questo esempio è composto da 32 piatti a doppia faccia con una testina per ogni lato (probabilmente non è vero). Ogni piatto ha 621 tracce concentriche. Una traccia a 3 dimensioni (la stessa traccia su tutti i dischi) viene chiamata un cilindro. Ogni traccia è divisa in 63 settori. Ogni settore contiene 512 byte di dati. Perciò la dimensione dei blocchi nella tabella delle partizioni è di 64 testine * 63 settori * 512 byte ahemmm... diviso per 1024. (Vedere 4 per un esame dei problemi che questo calcolo comporta.) I valori "start" (inizio) e "end" (fine) sono espressi in cilindri.
In breve
Decidere la dimensione dello spazio di swap (vedere la la Sezione 4.4) e dove esso dovrà essere (vedere la la Sezione 4.4.3). Dividere lo spazio restante nelle tre altre partizioni.
Esempio
Avviare fdisk dal prompt della shell:
# fdisk /dev/hdbsi è indicato che si sta usando la seconda unità sul controller IDE. (Vedere la la Sezione 2.1.) Quando si visualizza la tabella delle partizioni (vuota), si ottengono solo le informazioni sulla configurazione.
Command (m for help): p Disk /dev/hdb: 64 heads, 63 sectors, 621 cylinders Units = cylinders of 4032 * 512 bytesSi sapeva di avere un disco di 1.2GB, ma ora lo si sa davvero: 64 * 63 * 512 * 621 = 1281982464 byte. Si decide di riservare 128MB di tale spazio per lo swap, lasciandone 1153982464. Se si usa una delle partizioni primarie per lo swap, significa che ne rimangono ancora tre per le partizioni ext2. Dividendo in maniera uguale lo spazio, ciò significa 384MB per partizione. Al lavoro.
Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-621, default 1):<RETURN> Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-621, default 621): +384MSuccessivamente impostare la partizione che si vuole usare per lo swap:
Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 2 First cylinder (197-621, default 197):<RETURN> Using default value 197 Last cylinder or +size or +sizeM or +sizeK (197-621, default 621): +128MAdesso la tabella delle partizioni ha questo aspetto:
Device Boot Start End Blocks Id System /dev/hdb1 1 196 395104 83 Linux /dev/hdb2 197 262 133056 83 LinuxImpostare le ultime due partizioni restanti come si è fatto per la prima. Infine, rendere avviabile la prima partizione:
Command (m for help): a Partition number (1-4): 1E rendere la seconda partizione una partizione di tipo swap:
Command (m for help): t Partition number (1-4): 2 Hex code (type L to list codes): 82 Changed system type of partition 2 to 82 (Linux swap) Command (m for help): pIl risultato finale:
Disk /dev/hdb: 64 heads, 63 sectors, 621 cylinders Units = cylinders of 4032 * 512 bytes Device Boot Start End Blocks Id System /dev/hdb1 * 1 196 395104+ 83 Linux /dev/hdb2 197 262 133056 82 Linux swap /dev/hdb3 263 458 395136 83 Linux /dev/hdb4 459 621 328608 83 LinuxDa ultimo, dare il comando di scrittura (w) per scrivere la tabella sul disco.
Argomenti correlati:
In breve: creare e usare una delle partizioni primarie per ospitare tutte le partizioni extra. Creare quindi le partizioni logiche al suo interno. Creare le altre partizioni primarie prima o dopo la creazione delle partizioni logiche.
Esempio
Avviare fdisk dal prompt della shell:
# fdisk /dev/sdasi è indicato che si sta usando la prima unità nella catena SCSI. (Vedere la la Sezione 2.1).
Dapprima decidere quante partizioni si vogliono. Si sa che l'unità ha una capacità di 183GB e si vogliono partizioni da 26GB (magari perché si hanno nastri di back-up all'incirca di quelle dimensioni).
183GB / 26GB = ~7
perciò saranno necessarie 7 partizioni. Anche se fdisk accetta dimensioni delle partizioni espresse in MB e KB, si decide di calcolare il numero dei cilindri che verrà contenuto in ciascuna partizione, dato che fdisk mostra le posizioni di inizio e fine in cilindri. Avviando fdisk si vede che si hanno 22800 cilindri.
> The number of cylinders for this disk is set to 22800. There is > nothing wrong with that, but this is larger than 1024, and could in > certain setups cause problems with: 1) software that runs at boot > time (e.g., LILO) 2) booting and partitioning software from other > OSs (e.g., DOS FDISK, OS/2 FDISK)Allora, 22800 cilindri totali divisi per sette partizioni fa 3258 cilindri. Ogni partizione sarà all'incirca grande 3258 cilindri. Ignorare il messaggio di avvertimento poiché non si sta usando l'unità di avvio. (la Sezione 4).
Dato che si hanno 4 partizioni primarie, 3 di esse possono essere grandi 3258 cilindri. La partizione estesa dovrà essere grande (4 * 3258), o 13032, cilindri per poter contenere le 4 partizioni logiche.
Inserire i seguenti comandi per impostare la prima delle 3 partizioni primarie (ciò che viene inserito dall'utente è mostrato in grassetto):
Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-22800, default 1): <RETURN> Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-22800, default 22800): 3258L'ultima partizione è la partizione estesa:
Partition number (1-4): 4 First cylinder (9775-22800, default 9775): <RETURN> Using default value 9775 Last cylinder or +size or +sizeM or +sizeK (9775-22800, default 22800): <RETURN> Using default value 22800Il risultato, quando si usa il comando di visualizzazione è:
/dev/sda1 1 3258 26169853+ 83 Linux /dev/sda2 3259 6516 26169885 83 Linux /dev/sda3 6517 9774 26169885 83 Linux /dev/sda4 9775 22800 104631345 5 ExtendedIn seguito dividere la partizione estesa in 4 partizioni logiche, iniziando dalla prima partizione logica, facendo segmenti di 3258 cilindri. Le partizioni logiche partono automaticamente da /dev/sda5.
Command (m for help): n First cylinder (9775-22800, default 9775): <RETURN> Using default value 9775 Last cylinder or +size or +sizeM or +sizeK (9775-22800, default 22800): 13032Il risultato finale è:
Device Boot Start End Blocks Id System /dev/sda1 1 3258 26169853+ 83 Linux /dev/sda2 3259 6516 26169885 83 Linux /dev/sda3 6517 9774 26169885 83 Linux /dev/sda4 9775 22800 104631345 5 Extended /dev/sda5 9775 13032 26169853+ 83 Linux /dev/sda6 13033 16290 26169853+ 83 Linux /dev/sda7 16291 19584 26459023+ 83 Linux /dev/sda8 19585 22800 25832488+ 83 LinuxDa ultimo, inserire il comando di scrittura (w) per scrivere la tabella sul disco. Per rendere le partizioni utilizzabili, si dovrà formattare (la Sezione 10.1) ciascuna partizione e poi montarla (la Sezione 10.3).
Vorrei presentare l'organizzazione delle mie partizioni, perché funziona bene con qualunque distribuzione Linux (anche quelle grandi basate su RPM). Ho un disco fisso che [...] è 10 giga, esattamente. Windows non può vedere più di 9.3 giga di esso, ma Linux lo vede tutto e lo utilizza tutto. Esso ha anche molto più di 1024 cilindri.
Tabella 7. Esempio di tabella delle partizioni
Partizione | Punto di mount | Dimensione |
---|---|---|
/dev/hda1 | /boot | (15 mega) |
/dev/hda2 | partizione windows 98 | (2 giga) |
/dev/hda3 | estesa | (N/D) |
/dev/hda5 | spazio di swap | (64 mega) |
/dev/hda6 | /tmp | (50 mega) |
/dev/hda7 | / | (150 mega) |
/dev/hda8 | /usr | (1.5 giga) |
/dev/hda9 | /home | (resto del disco) |
Ho anche notato che non ci sono esempi REALI di tabelle di partizioni e per i novizi suggerisco FORTEMENTE di metterne più di uno. Sono appena uscito dalla stadio di novellino e il partizionamento è stato l'aspetto che più mi ha confuso.