Durante l'installazione di una distribuzione Linux viene richiesto come partizionare gli hard disk, definendo dimensioni e tipo di file system.
Non è necessario avere una partizione già predisposta prima i iniziare, la fase di definizione delle varie partizioni necessarie per Linux viene gestita dal tool di installazione, ma si deve avere dello spazio libero (hard disk libero, spazio non partizionato o una partizione esistente che si puà cancellare (e dividere nelle partizioni che servono a Linux))
Il minimo partizionamento richiesto prevede:
- una partizione generale ("/" , la root directory) in cui vengono copiati tutti i file.
- una partizione di swap (non contiente file e viene usata solo come Virtual Memory, quando si esaurisce la RAM)
E' comunque consigliabile, almeno su un server, utilizzare partizioni indipendenti per diverse directory.
La decisione su come suddividerle e quali dimensioni assegnargli dipende dalle specifiche necessità del sistema.
Considerare che un eccessivo partizionamento aumenta la possibilità di sfruttare male la capacità dell'hard disk e rischiare che alcune partizioni si riempano al 100%.
Queste sono alcune directory che ha senso tenere su partizioni indipendenti da quella dalla root ( / ).
- /boot (partizione di boot, dove risiedono kernel e file di boot. Con BIOS vecchi deve stare nei primi 1023 settori dell'hard disk. 100 Mb di spazio possono bastare)
- /var (partizione in cui vengono messi file che cambiano di dimensione, tipicamente i log. E' utile averla su partizione indipendente per evitare che un aumento dei log inattesi riempa tutto il filesystem. Farla almeno di 100 Mb)
- /home (dove risiedono i file di tutti gli utenti. Può essere piccola e praticamente inutilizzata (mail, dns server) o molto grossa e piena di documenti (web, file server). Dimensionarla a seconda dell'uso della macchina)
- /tmp dove risiedono file temporanei.
In fase di partizionamento, oltre a decidere come partizionare gli hard disk bisogna assegnare ad ogni partizione un mount point.
Per esempio se abbiamo un hard disk da 10 Gb come primary master e lo vogliamo dividere in 6 partizioni, potremo ottenere:
PARTIZIONE MOUNT POINT
/dev/hda1 /
/dev/hda2 /boot
/dev/hda3 /var
/dev/hda4 /home
/dev/hda5 /tmp
/dev/hda6 /SWAP
Notare che la partizione di SWAP non necessita di un mount point.
Per /dev/hda si intende l'hard disk Primary Master IDE. I numeri successivi indicano le partizioni all'interno dell'hard disk.
Gli hard disk IDE hanno i seguenti nomi:
Primary Master: /dev/hda
Primary Slave: /dev/hdb
Secondary Master: /dev/hdc
Secondary Slave: /dev/hdd
Le singole partizioni di un hard disk hanno nomi tipo:
- /dev/hda1 (prima partizione del primary master)
- /dev/hdc4 (quarta partizione del secondary master)
Considerare inoltre che si possono formattare le partizioni con un file system diverso.
Possiamo per esempio avere, nell'esempio sopra indicato, tutte le partizioni in ext3 (uno dei File System più usati su Linux) e la partizione /dev/hda4 ( dove viene montala la /home ) formattata in FAT 32 (File System di Windows 98, supportato anche da Linux).
Su una directory del filesystem Unix è possibile montare anche Network File System come SMB (Reti Windows) o NFS.
Esistono vari programmi sia su Linux che su Windows per gestire le partizioni degli hard disk. Alcuni di questi si limitano a preparare le partizioni in modo da poterle formattare con il file system che verrà usato dal proprio sistema operativo, altri, dal compito più delicato ed evoluto, permettono di cambiare le dimensioni di partizioni esistenti (senza danneggiarne i dati), in modo da creare spazio per nuove partizioni.
Durante l'installazione di Linux viene richiesto come partizionare i(l) propri(o) hard disk, in modo da definire cosa formattare e dove installare il sistema operativo, se preservare le eventuali partizioni esistenti (contenenti altri OS) o ripulire completamente gli hard disk.
Va considerato che se non si intende cancellare nulla e se non esistono hard disk o partizioni liberi, l'installazione non può essere eseguita, a meno che non si scelga la strada (non sempre disponibile) di installare Linux su una partizione Windows esistente.
Linux - Gli strumenti più usati per gestire il partizionamento su Linux sono:
- Fdisk - Diffuso tool testuale, simile all'analogo su Windows, che offre opzioni avanzate per il partizionamento.
- Diskdruid - Tool grafico fornito da RedHat, semplice ed intuitivo, è una alternativa funzionale a fdisk se non si ha bisogno di funzionalità avanzate. E' accessibile solamente durante la fase di installazione di RedHat.
- Parted - Oltre alle normali operazione di creazione e visualizzazione della partition table, questo programma permette di modificare le dimensioni di partizioni esistenti, anche formattate con file system non nativi Linux. E' fondamentale per liberare spazio su un hard disk completamente partizionato.
Windows offre una vasta scelta di soluzioni commerciali e alcuni strumenti free:
- Partition Magic - E' il software, commerciale, di gestione di partizioni più conosciuto e probabilmente più evoluto. Permette di ridimensionare, senza cancellare dati, partizioni formattati con tutti i più diffusi file system.
Alternativamente, esistono analoghi prodotti commerciali come: 7tools Partition Manager, Paragon Hard Disk Manager (assai simile). Hanno il vantaggio di funzionare sotto Windows ma la loro versione demo, generalmente, NON permette la modifica delle partizioni.
- Fips - Software free che permette il ridimensionamento di partizioni esistenti. Ha funzionalità essenziali e spesso è fornito con le distribuzioni Linux per creare spazio per una installazione. Basato su DOS.
- Ranish Partition Manager - Alternativa valida a Fips. E' anch'esso OpenSource e basato su DOS, pur avendo un'interfaccia testuale a finestre.
Tool testuale con la possibilità di operazioni avanzate per il partizionamento e la manipolazione della partition table degli hard disk.
Presenta un'interfaccia a menu con la quale è possibile creare, visualizzare, modificare le partizioni del device specificato.
fdisk [ -l ] [ -v ] [ -s partition] [ device ]
device
Specificando solo il nome di un device (es: /dev/hda ) entra nella modalità menu per modificare la partition table del device
-l
Mostra la partition table degli harddisk del sistema. Per ogni device indica le partizioni, la dimensione in blocchi, il filesystem e i cilindri utilizzati
Su sistemi Windows lo swapping viene fatto su un file dedicato ("pagefile.sys"), presente nel normale file system mentre su Unix e Linux si dedica una partizione autonoma, che viene formattata indipendentemente.
Anche su Windows FDISK è il nome del più comune strumento per partizionare gli hard disk.
La versione per Windows è diversa e meno flessibile ma prevede le stesse funzioni di base.