Avanti Indietro Indice

12. Implementazione

Avendo fatto la struttura, dovreste avere una descrizione dettagliata di cosa va dove. Probabilmente questo sarà su carta ma si spera che qualcuno farà un sistema più automatizzato che può gestire qualsiasi cosa dal progetto, attraverso il partizionamento alla formattazione fino all'installazione. Questa è la strada che uno dovrà avere per realizzare il progetto.

Le distribuzioni moderne hanno mezzi di installazione che vi guideranno attraverso il partizionamento e la formattazione e anche ad organizzare per voi il file /etc/fstab automaticamente. Per modifiche posteriori, dovrete capire il meccanismo che sta dietro.

12.1 Dischi e Partizioni

Quando fate partire il DOS o qualcosa del genere troverete che tutte le partizioni sono nominate da C: in avanti, con nessuna differenza tra IDE, SCSI, rete o qualsiasi tipo di supporto che avete. Nel mondo di Linux, questo è abbastanza differente. Durante l'avvio, vedrete le partizioni descritte in questo modo:


Dec  6 23:45:18 demos kernel: Partition check:
Dec  6 23:45:18 demos kernel:  sda: sda1
Dec  6 23:45:18 demos kernel:  hda: hda1 hda2

I dischi SCSI sono etichettati sda, sdb, sdc ecc., e i dischi (E)IDE sono etichettati hda, hdb, hdc ecc. Ci sono inoltre nomi standard per tutti i dispositivi, tutte le informazioni possono essere trovate in /dev/MAKEDEV e in /usr/src/linux/Documentation/devices.txt.

Le partizioni sono etichettate numericamente per ciascun disco hda1, hda2 e così via. Sui dischi SCSI ci possono essere 15 partizioni per disco, sui dischi EIDE ce ne possono essere 63. Tutti e due questi limiti eccedono ciò che è attualmente utile per molti dischi.

Questi sono poi montati attenendosi al file /etc/fstab prima di cominciare a far parte del sistema.

12.2 Partizionamento

Prima di tutto, voi dovete partizionare ogni disco in un bel numero di partizioni separate. Sotto Linux ci sono due metodi principali, fdisk e quello più grafico cfdisk. Questi sono programmi complessi, leggetene il manuale molto attentamente.

Le partizioni sono di 3 tipi, primarie, estese e logiche. Dovete utilizzare le partizioni primarie per avviare il sistema, ma c'è un massimo di 4 partizioni primarie. Se volete di più, dovete definire una partizione estesa nell'ambito della quale voi definite le vostre partizioni logiche.

Ogni partizione ha un numero identificativo che dice al sistema operativo che cosa è, per Linux i tipi swap(82) e ext2fs(83) sono quelli che dovete sapere.

C'è un file readme che accompagna fdisk che fornisce maggiori informazioni sul partizionamento.

Qualcuno ha appena fatto un Partitioning HOWTO che contiene informazioni eccellenti ed approfondite sui grattacapi del partizionamento. Piuttosto che ripeterlo qui e occupare oltre questo documento, farò riferimento ad esso per voi invece.

La Redhat ha scritto un'utility visuale chiamata Disk Druid che si suppone sia un'alternativa di facile utilizzo di fdisk e cfdisk ed inoltre automatizza un po' di altre cose. Sfortunatamente questo prodotto non è ancora sufficientemente maturo quindi se lo utilizzate e non riuscite a farlo funzionare, siete ben avvisati di provare fdisk o cfdisk.

Il Ranish Partition Manager è un'altra alternativa libera, mentre Partition Magic è un'alternativa commerciale che inoltre offre qualche supporto per ridimensionare le partizioni ext2fs.

Notate che Windows si lamenterà se trova più di una partizione primaria su un disco. Inoltre sembra assegnare le lettere del disco alle partizioni primarie mentre trova i dischi prima di reiniziare dal primo per assegnare nomi di dischi consecutivi alle partizioni logiche.

Se volete DOS/Windows sul vostro sistema dovreste fare quella partizione prima di tutto, una primaria su cui avviare il boot, fatta con l'fdisk del DOS. Poi, se volete NT, mettete quello. Alla fine, per Linux, create quelle partizioni con l'fdisk di Linux o con programmi equivalenti. Linux è sufficientemente flessibile da avviarsi sia dalle partizioni primarie che dalle logiche.

12.3 Ripartizionamento

Alcune volte è necessario cambiare le dimensioni delle partizioni esistenti mantenendo il contenuto intatto. Un modo è ovviamente quello di fare il backup di tutto, ricreare le nuove partizioni e poi ripristinare i vecchi contenuti, e sebbene questo vi fornisce un ottimo modo di testare il vostro sistema di back up, vi porta via un bel po' di tempo.

Ridimensionare le partizioni è una semplice alternativa dove un file system è dapprima contratto nel volume desiderato e poi la tavola di partizione è aggiornata per riflettere la nuova fine della posizione della partizione. Questo processo è comunque molto sensibile al file system.

Ripartizionare necessita che ci sia spazio libero alla fine dello spazio file quindi per assicurare di essere in grado di contrarre la dimensione dovreste innanzitutto deframmentare il vostro disco e svuotare qualsiasi cestino.

Utilizzando fips potete ridimensionare una partizione fat, e l'ultima versione 1.6 di fips o di fips 2.0 sono in grado anche di ridimensionare le partizioni fat32. Notate che questi programmi attualmente girano sotto DOS.

Ridimensionare altri file system è molto più complesso ma un sistema commerciale abbastanza popolare è Partition Magic che è in grado di ridimensionare più tipi di file system, inclusi ext2fs mediante il programma resize2fs.

Al fine di ottenere il massimo da fips dovreste innanzitutto cancellare i file non necessari, svuotare i cestini ecc. prima di deframmentare il vostro disco. In questo modo potete allocare più spazio per altre partizioni. Se il programma si lamenta che ci sono ancora file alla fine del disco, ciò forse è dovuto a file nascosti generati da Microsoft Mirror o da Norton Image. Questi sono probabilmente chiamati image.idx e image.dat e contengono backups di qualche file di sistema.

Ci sono prove che in alcuni programmi di deframmentazione di Windows è necessario che la casella "permetti a Windows di spostare i file" non sia contrassegnata, altrimenti finirete con l'avere qualche file nell'ultimo cilindro della partizione il che eviterà a FIPS di richiedere spazio.

Se voi avete ancora file non spostabili alla fine della vostra partizione DOS, dovreste ottenere il programma DOS "showfat" versione 3.0 o superiore. Questo vi mostra quali file sono dove così potete avere a che fare con loro direttamente.

Ripartizionare è un processo pericoloso come qualsiasi altro partizionamento quindi siete avvisati di avere a portata di mano un backup fresco.

12.4 Il Bug della Partizione Microsoft

Nei prodotti Microsoft fino a Win 98 c'è un bug che vi può causare un po' di problemi: se avete diverse partizioni fat primarie e l'ultima partizione estesa non è una partizione fat, il system Microsoft cercherà di montare l'ultima partizione al posto dell'ultima partizione FAT primaria.

Ci sono più informationi su questo disponibili sulla rete.

Per evitare ciò, potete sistemare una piccola parizione logica fat proprio alla fine del disco.

Visto che qualche componente hardware è accompagnato da setup software che è disponibile sotto DOS, questo potrebbe essere a portata di mano in ogni caso. Esempi degni di nota sono i controller RAID da DPT ed un bel numero di schede di rete.

12.5 Dispositivi multipli (md)

Essendo in uno stato di sviluppo dovreste assicurarvi di leggere la documentazione più recente su questa caratteristica del kernel.

Spiegata brevemente, funziona aggiungendo partizioni insieme in nuovi dispositivi md0, md1 ecc. utilizzando mdadd prima che voi li attiviate mediante mdrun. Questo processo può essere automatizzato mediante il file /etc/mdtab.

Il sistema md più recente utilizza /etc/raidtab ed una sintassi differente. Assicuratevi che il pacchetto di strumenti RAID combaci con la versione md dal momento che il protocollo interno è cambiato.

Quindi poi voi li trattate come qualsiasi altra partizione su disco. Procedete con la formattazione ecc. come descritto qui sotto utilizzando questi nuovi dispositivi.

C'è ora anche un HOWTO in sviluppo per RAID che utilizza md che dovreste leggere.

12.6 Formattazione

Dopo viene la formattazione della partizione, in cui viene predisposta la struttura dei dati che descriverà i file e dove saranno posti. Se questa è la prima volta si raccomanda la formattazione con verifica. Parlando stringatamente, non dovrebbe essere necessario ma questo stimola l'I/O così tanto da scoprire problemi potenziali come incorretta terminazione, prima che voi archiviate i vostri dati preziosi. Guardate il comando mkfs per maggiori dettagli.

Linux è in grado di gestire un gran numero di file system, piuttosto che ripetere i dettagli, potete leggere le pagine man per fs che li descrive in qualche dettaglio. Notate che il kernel deve avere i driver compilati o resi come moduli al fine di essere in grado di utilizzare queste funzioni. Quando è ora di compilare il kernel, dovreste leggere attentamente la lista delle caratteristiche del file system. Se utilizzate make menuconfig potete avere un aiuto in linea per ogni tipo di file system.

Notate che qualche sistema di disco di recupero ha bisogno che minix, msdos e ext2fs vengano compilati nel kernel.

Anche le partizioni di swap devono essere preparate e per far questo utilizzate mkswap.

12.7 Montaggio

I dati presenti su una partizione non sono disponibili in un file system fino a che essa è montata su un punto di montaggio. Questo può essere fatto manualmente utilizzando mount o automaticamente durante l'avvio, aggiungendo linee appropriate all'/etc/fstab. Leggete il manuale di mount e prestate molta attenzione alle tabulazioni.

12.8 fstab

Durante il processo di boot il sistema monta tutte le partizioni come elencate nel file fstab che può apparire così:


# <file system>   <punto mont.>   <tipo>  <opzioni>   <dump>  <pass>
/dev/hda2          /               ext2    defaults    0       1
None               none            swap    sw          0       0
proc               /proc           proc    defaults    0       0
/dev/hda1          /dosc           vfat    defaults    0       1

Questo file è in qualche modo sensibile alla formattazione utilizzata quindi è meglio e più conveniente modificarlo utilizzando uno degli strumenti di modifica creati per questo scopo.

Brevemente i campi sono nome della partizione, dove montare la partizione, tipo di file system, quando montarla, quando effettuare il dump per il backup, e quando fare fsck.

Linux offre la possibilità di fare un controllo di file parallelo (fsck) ma per essere efficiente è importante non fare fsck più di una partizione di un disco per volta.

Per maggiori informazioni fate riferimento alle pagine man per mount e fstab.

12.9 Raccomandazioni

Avendo costruito ed implementato il vostro schema intelligente, siete ben avvisati di annotarvelo tutto, su carta. Avere le informazioni necessarie su disco se la macchina è andata è inutile.

Le tavole di partizioni possono essere danneggiate o perse, caso in cui è estremamente importante che voi mettiate gli stessi numeri esatti in fdisk così da recuperare il vostro sistema. Potete utilizzare il programma printpar per fare una chiara annotazione delle tabelle. Scrivetevi anche i numeri SCSI o i nomi IDE per ogni disco così potete mettere il sistema ancora insieme nell'ordine giusto.


Avanti Indietro Indice