[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ successivo ]

Installazione di Debian GNU/Linux 3.0 per Intel x86
Capitolo 6 - Partizionare per Debian


La voce di menù ``Partizionamento disco fisso'' vi presenta un elenco dei dischi che potete partizionare e lancia un applicativo per effettuare il partizionamento. Dovrete creare come minimo una partizione Linux nativa (tipo 83), probabilmente avrete bisogno anche di una partizione Linux di swap (tipo 82).


6.1 Decidere le partizioni Debian e le loro dimensioni

Come minimo, GNU/Linux ha bisogno di una partizione per sé. Potete usare una singola partizione per ospitare l'intero sistema operativo, le applicazioni e i vostri file personali. Molti pensano che sia necessaria anche una partizione di swap separata, sebbene ciò non sia propriamente vero. Lo "swap" permette al sistema operativo di usare la memoria a basso costo dei dischi fissi come "memoria virtuale". Collocando lo swap in una partizione separata, Linux può farne un uso molto più efficiente. È possibile, ma non raccomandato, forzare Linux a usare come swap un normale file.

La maggior parte delle volte comunque si sceglie di utilizzare per GNU/Linux un numero di partizioni maggiore di quello minimo necessario. Ci sono due ragioni per cui potreste voler suddividere il file system in un certo numero di partizioni più piccole. La prima è la sicurezza. Usando tale precauzione, in caso succeda qualcosa e il file system si corrompa nella maggior parte dei casi verrà colpita una sola partizione. Sarà quindi necessario rimpiazzare solo una parte del vostro sistema (dai backup che mantenete con cura, si spera). Come minimo dovrete tenere presente di creare quella che viene comunemente chiamata "partizione root". Essa contiene i componenti davvero essenziali del sistema. In caso venga corrotta qualunque altra partizione, grazie ad essa sarete ancora in grado di fare il boot in GNU/Linux per mettere a posto le cose, evitando di dover reinstallare il sistema da zero.

La seconda ragione di solito è rilevante più che altro in ambito aziendale, ma in realtà dipende dall'uso che fate della macchina. Supponete che qualcosa vada fuori controllo e inizi a consumare spazio sul disco. Se il processo all'origine del problema ha privilegi di root (il sistema mantiene una percentuale del disco al di fuori del controllo degli utenti comuni), potreste ritrovarvi con gravi carenze di spazio disco, cosa molto pericolosa, dato che il S.O. usa file reali (oltre allo spazio swap) per un sacco di cose. In alcuni casi potrebbe anche non trattarsi di un problema di origine locale, ad esempio potreste venir bersagliati da una grande quantità di spam che potrebbe andare a riempire una partizione. Utilizzando più di una partizione proteggerete quindi il sistema da molti problemi di questo tipo. Usando ancora una volta l'esempio della posta, mettendo /var/mail in una partizione a sé stante, il grosso del sistema continuerebbe a funzionare anche dopo aver ricevuto un'enorme quantità di spam.

L'unico vero inconveniente nell'usare più partizioni è che spesso è difficile sapere in anticipo quali saranno le proprie necessità. Se fate una partizione troppo piccola, allora dovrete reinstallare il sistema, oppure vi toccherà spostare di continuo dei file per liberarvi spazio. D'altra parte, se fate una partizione troppo grande sprecherete spazio che potrebbe essere usato meglio per altre cose. Lo spazio su disco costa ormai molto poco, ma è sempre un peccato sprecarlo.


6.2 L'albero delle Directory

Linux Debian aderisce al Filesystem Hierarchy Standard per la denominazione di directory e file. Tale standard permette agli utenti e ai programmi di conoscere in anticipo la collocazione di file e directory. La directory a livello radice è rappresentata semplicemente con /. A livello radice, tutti i sistemi Debian includono le seguenti directory:

            bin       comandi binari indispensabili
            boot      file statici per il boot loader
            dev       file di device
            etc       configurazione particolare del sistema
            home      directory personali degli utenti
            lib       librerie condivise essenziali e moduli del kernel
            mnt       mount point per montare temporaneamente un file system
            proc      directory virtuale per informazioni sul sistema
            root      directory personale dell'utente root
            sbin      binari di sistema essenziali
            tmp       file temporanei
            usr       gerarchia secondaria
            var       dati variabili

Segue una lista di considerazioni importanti su directory e partizioni.


6.3 Limitazioni dei dischi per PC

I BIOS dei PC pongono in genere delle limitazioni aggiuntive sul partizionamento dei dischi: c'è un limite alle partizioni primarie e logiche che un disco può contenere. Inoltre coi BIOS precedenti al 1994-98 ci sono dei limiti alle posizioni del disco da cui si può fare il boot. Potete trovare ulteriori informazioni nel Linux Partition HOWTO e nelle Phoenix BIOS FAQ, questa sezione includerà una breve panoramica per aiutarvi ad affrontare la maggior parte delle situazioni.

Le partizioni primarie costituiscono lo schema di partizionamento originale per i dischi dei PC, ma ce ne possono essere solo quattro per disco. Per superare questa limitazione sono state inventate le partizioni estese e logiche. Impostando una delle partizioni primarie come estesa potrete suddividere lo spazio allocato per questa partizione in partizioni logiche. In questo modo potrete creare fino a 60 partizioni logiche in una partizione estesa, che dev'essere una sola per disco.

Linux limita il numero di partizioni per disco a 15 per i dischi SCSI (3 partizioni primarie e 12 logiche), 63 pei dischi IDE (3 partizioni primarie utilizzabili e 60 logiche).

Se avete un disco IDE di grandi dimensioni e non state usando né LBA né driver aggiuntivi (che a volte vengono forniti dal produttore), allora la partizione di boot, quella contenente l'immagine del vostro kernel, deve trovarsi entro i primi 1024 cilindri del vostro disco. Di solito corrispondono circa ai primi 524 MB senza la traduzione del BIOS.

Questa restrizione non si applica se avete un BIOS posteriore al 1995-98 (a seconda del produttore) che supporta le estensioni di accesso ai dischi di grandi dimensioni ("Enhanced Disk Drive Support Specification"). Sia lilo, il boot loader di Linux, che l'alternativa Debian, mbr, sono costretti a usare il BIOS per caricare il kernel dal disco fisso nella RAM. Il boot loader utilizzerà, ove presenti sul sistema, le estensioni di accesso ai dischi di grandi dimensioni (che usano l'interrupt BIOS 0x13). Altrimenti ripiegherà sulla vecchia interfaccia di accesso al disco e non potrà quindi accedere a qualsiasi locazione che si trovi oltre il 1023esimo cilindro del disco. Una volta avviato Linux, non importa quale BIOS abbia il vostro elaboratore, queste restrizioni non si applicano più, dato che Linux non usa i servizi del BIOS per accedere al disco.

Se avete un disco di grandi dimensioni, potreste dover usare le tecniche di traduzione dei cilindri, che potete impostare dal programma di configurazione del BIOS, come ad esempio LBA (Logical Block Addressing) o la modalità di traduzione CHS ("Large"). Altre informazioni sui problemi che si possono avere con i dischi di grandi dimensioni sono riportate nel Large Disk HOWTO (in italiano Large Disk HOWTO NdT). Se state usando uno schema di traduzione dei cilindri e il BIOS non supporta le estensioni di accesso, dovrete creare una partizione di boot che stia tutta entro la rappresentazione tradotta del 1024esimo cilindro.

Il modo consigliato di farlo è creare una piccola partizione (5-10 MB dovrebbero essere sufficienti) all'inizio del disco da usare come partizione di boot e poi creare qualsiasi altra partizione nello spazio restante. Tale partizione di boot dovrà essere montata sotto /boot, che è la directory dove vengono conservati il, oppure i, kernel Linux. Questa configurazione funzionerà su qualunque sistema, indipendentemente dall'uso di LBA o della traduzione CHS e dal supporto per le estensioni di accesso ai dischi di grandi dimensioni fornito dal BIOS.


6.4 Schema di partizionamento raccomandato

Per nuovi utenti di Debian, macchine personali, sistemi domestici e altre configurazioni monoutente, una singola partizione / (più quella di swap) è probabilmente la cosa migliore e più semplice. Nondimeno in tal modo potreste avere dei problemi con dischi molto grandi (da 20 GB in su). Sulla base di limitazioni nel funzionamento di ext2, farete meglio ad evitare partizioni singole più grandi di 6 GB.

Per sistemi multiutente, la cosa migliore è porre /usr, /var, /tmp e /home in partizioni separate tra di loro, a loro volta separandole dalla partizione /.

Se pensate di installare molti programmi che non fanno parte della distribuzione Debian, potreste aver bisogno di una partizione /usr/local separata. Se la vostra macchina farà da server di posta, potreste aver bisogno di tenere /var/mail su una partizione autonoma. È spesso una buona idea porre /tmp in una partizione riservata, di 20-50 MB per dire. Se state configurando un server con un sacco di account utenti, sarebbe auspicabile avere una partizione /home autonoma e di dimensioni generose. In generale, lo schema di partizionamento ottimale varia a seconda della destinazione d'uso della macchina.

Per sistemi molto complessi, fareste bene a consultare il Multi Disk HOWTO (in italiano Multi Disk HOWTO NdT). Contiene informazioni approfondite, che potrebbero risultare interessanti per provider e amministratori di server.

Riguardo la questione della dimensione appropriata per la partizione di swap, ci sono molti punti di vista. Una regola empirica di successo è usare uno spazio di swap pari alla memoria del sistema. Nella maggior parte dei casi non dovrebbe essere comunque minore di 16 MB. Naturalmente vi sono delle eccezioni. Se state tentando di risolvere un sistema di 10000 equazioni su una macchina con 256 MB di memoria, potreste aver bisogno di 1 GB (o più) di swap.

Sulle architetture a 32 bit (i386, m68k, SPARC 32 bit e PowerPC), la dimensione massima di una partizione di swap è 2 GB. Per Alpha e SPARC64 il limite è talmente grande da essere virtualmente inesistente. Dovrebbe essere sufficiente per quasi tutte le installazioni. In ogni caso, se vi dovesse servire così tanto swap dovreste probabilmente tentare di suddividerlo su dischi diversi (chiamati anche "spindle") e, ove possibile, su canali SCSI o IDE distinti. Il kernel bilancerà l'utilizzo dello swap tra le partizioni di swap multiple, garantendo prestazioni migliori.

Come esempio concreto, la macchina che uno degli autori utilizza a casa ha 32 MB di RAM e un disco IDE di 1,7 GB su /dev/hda. C'è inoltre una partizione da 500 MB riservata ad un altro sistema operativo su /dev/hda1 (dovrebbe venir ridotta a 200 MB, dato che non viene mai usata). Su /dev/hda3 c'è una partizione di swap di 32 MB, mentre il resto (circa 1,2 GB su /dev/hda2) è la partizione Linux.

Per ulteriori esempi, leggete Partitioning Strategies.


6.5 Nomi di device in Linux

I nomi dati da Linux a dischi e partizioni possono essere diversi da quelli usati da altri sistemi operativi. Avete bisogno di conoscere i nomi usati da Linux quando create e montate partizioni. Ecco lo schema di denominazione di base:

Le partizioni presenti su ciascun disco vengono indicate aggiungendo un numero decimale al nome del disco: "sda1" e "sda2" rappresentano le prime due partizioni del primo disco SCSI del sistema.

Ecco un esempio realistico: supponiamo che abbiate un sistema con due dischi SCSI, uno all'indirizzo 2 e l'altro al 4. Il primo disco (quello all'indirizzo 2) si chiamerà "sda", il secondo "sdb". Se il disco "sda" ospita tre partizioni, si chiameranno "sda1", "sda2" e "sda3". Lo stesso vale per il disco "sdb" e le sue partizioni.

Tenete presente che se nel sistema ci sono due host bus adapter SCSI (cioè due controller) l'ordine dei dischi può diventare confuso. La soluzione migliore in tal caso è controllare i messaggi di boot, supposto che conosciate il modello o le capacità dei dischi.

Linux rappresenta le partizioni primarie con il nome del disco seguito da un numero da 1 a 4. Per esempio, la prima partizione primaria sul primo disco IDE è /dev/hda1. Le partizioni logiche sono numerate a partire da 5, quindi la prima partizione logica sullo stesso disco è /dev/hda5. Ricordatevi che la partizione estesa, cioè la partizione primaria che contiene quelle logiche, non è utilizzabile di per sé, né sui dischi SCSI né sugli IDE.


6.6 Programmi Debian di partizionamento

Gli sviluppatori Debian hanno adattato una moltitudine di programmi di partizionamento diversi affinché funzionino sui vari tipi di dischi fissi ed architetture. Segue un'elenco dei programmi utilizzabili sulla vostra architettura.

fdisk
Il programma di partizionamento originale di Linux, ottimo per i guru; consultate la pagina di manuale di fdisk.

Se sulla vostra macchina ci sono già partizioni FreeBSD, fate molta attenzione. I kernel dell'installazione le supportano, ma il modo in cui fdisk (non) le rappresenta può causare differenze nei nomi di device. Consultate il Linux+FreeBSD HOWTO.

cfdisk
Un programma semplice da usare, a pieno schermo, adatto a chi guru non è; consultate la pagina di manuale di cfdisk.

Tenete presente che cfdisk è del tutto incapace di lavorare con le partizioni FreeBSD e quindi, ancora una volta, cio potrebbe causare delle differenze nei nomi di device.

Uno di questi programmi verrà lanciato per default quando selezionerete ``Partizionamento disco fisso''. Se non è quello che volete voi, chiudete il programma di partizionamento, passate alla shell sulla seconda console virtuale (tty2) e lanciate manualmente il nome del programma che preferite usare (con eventuali argomenti, ove necessari). Poi saltate il passo ``Partizionamento disco fisso'' in dbootstrap e continuate dal passo successivo.

Ricordatevi di marcare la vostra partizione di boot come avviabile ("Bootable").


6.7 ``Inizializzazione ed attivazione partizione di swap''

Sarà questo il passo successivo alla creazione delle partizioni. Potrete scegliere di inizializzare ed attivare una nuova partizione di swap, attivarne una già inizializzata o fare a meno di una partizione di swap. È sempre possibile reinizializzare una partizione di swap, quindi selezionate ``Inizializzazione ed attivazione partizione di swap'', a meno che non siate sicuri di quello che state facendo.

Scegliendo questa voce di menù vi verrà presentata innanzitutto una finestra di dialogo ``Selezionare la partizione da attivare come swap.''. Per default vi dovrebbe venir proposta la partizione di swap che avete già impostato; in tal caso basterà premere Invio.

Vi sarà richiesta una conferma, dato che l'inizializzazione distruggerà eventuali dati contenuti nella partizione. Se è tutto a posto, scegliete ``Sì''. Lo schermo lampeggerà mentre il programma di inizializzazione lavora.

Vi raccomandiamo caldamente di predisporre una partizione di swap, ma se insistete potete farne a meno, basta che abbiate più di 12MB di RAM. Se volete farne a meno, selezionate la voce ``Continuare senza partizione di swap?'' dal menù.


6.8 ``Inizializzazione di una partizione Linux''

A questo punto la prossima voce del menù dovrebbe essere ``Inizializzazione di una partizione Linux''. Se non è così, è perché non avete completato il processo di partizionamento del disco o non avete scelto una delle voci di menù relative alla partizione di swap.

Potete inizializzare una partizione Linux o, in alternativa, montare una già inizializzata in precedenza. Tenete presente che dbootstrap non può aggiornare un vecchio sistema senza distruggerlo. Se state facendo un aggiornamento, non avete bisogno di usare dbootstrap, dato che Debian può farlo da sé con altri mezzi. Per informazioni su come aggiornare il sistema a Debian 3.0, leggete le Istruzioni per l'aggiornamento.

Quindi, se state usando delle vecchie partizioni che non sono vuote e volete sbarazzarvi del loro contenuto, vi conviene inizializzarle, cancellando in tal modo tutti i file. Inoltre dovrete inizializzare tutte le partizioni che avete creato durante il partizionamento. La sola ragione per montare una partizione senza inizializzarla a questo punto è che si tratti di una partizione sulla quale avete già svolto alcune parti del processo di installazione usando la stessa serie di dischetti.

Scegliete ``Inizializzazione di una partizione Linux'' per inizializzare e montare la partizione /. La prima partizione che monterete o inizializzerete sarà quella montata come / (si pronuncia "slash", è la partizione root, o "radice").

Vi verrà chiesto se preservare la ``Compatibilità con i kernel precedenti al 2.2?''. Se rispondete ``No'' non potrete usare i kernel 2.0 o precedenti, dato che il file system abiliterà alcune caratteristiche non supportate da tali kernel. Se siete sicuri che non avrete mai bisogno di utilizzare un kernel 2.0 o precedente, rispondete ``No'', in modo da godere di qualche beneficio, seppur minimo.

Vi verrà chiesto inoltre se ricercare i blocchi danneggiati. Per default viene proposto di saltare la ricerca, perché prende molto tempo e i controller moderni sono comunque in grado di rilevare internamente i blocchi danneggiati e fronteggiare eventuali problemi con essi. Se non siete sicuri della qualità dei vostri dischi o se avete un sistema vecchio, potrebbe essere il caso di avviare la ricerca.

I prompt successivi sono solo richieste di conferma delle vostre azioni, doverose, dato che l'inizializzazione distruggerà tutti i dati della partizione. Vi s'informerà inoltre che la partizione verrà montata come /, la partizione root. [4]

Una volta montata la partizione /, se desiderate inizializzare e montare altri file system potete usare la voce ``Altro'', che tornerà utile a chi ha creato partizioni separate per /boot, /var, /usr o altre, che dovrebbero essere inizializzate e montate a questo stadio dell'installazione.


6.9 ``Mount di una partizione già inizializzata''

Un'alternativa a ``Inizializzazione di una partizione Linux'', Sezione 6.8 è il passo ``Mount di una partizione già inizializzata'', da usare se state riprendendo un'installazione lasciata a metà o se volete montare delle partizioni già inizializzate o che contengono dati che volete salvaguardare.

Se state installando una workstation senza disco, giunti a questo punto dovreste montare via NFS la partizione root dal server NFS remoto. Specificate il percorso per il server con la normale sintassi NFS, cioè nome-o-IP-del-server:percorso-della-share-sul-server. Se dovete inoltre montare altri file system, potete farlo adesso.

Se non avete ancora configurato la rete come indicato in ``Configurazione della rete'', Sezione 7.7, scegliendo l'installazione via NFS vi verrà chiesto di farlo.


6.10 Montare partizioni non supportate da dbootstrap

In alcune situazioni particolari, dbootstrap potrebbe non essere in grado di montare i file system che volete (la partizione root o altre). Se siete utenti Linux esperti potrete semplicemente passare a tty2 e lanciare manualmente i comandi necessari a montare le partizioni in questione.

Se state montando una partizione root per il vostro nuovo sistema, fatelo su /target, poi tornate a dbootstrap e continuate, magari usando ``Visualizzazione stato delle partizioni'' per far sì che dbootstrap ricalcoli il punto dell'installazione in cui vi trovate.

Se si tratta di partizioni diverse da quelle di root, dovrete ricordarvi di modificare a mano il vostro nuovo file fstab, in modo che vengano montate al riavvio del sistema. Aspettate ovviamente che dbootstrap scriva tale file (/target/etc/fstab) prima di ritoccarlo.


[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ successivo ]

Installazione di Debian GNU/Linux 3.0 per Intel x86

versione 3.0.22, 14 March, 2002
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo
Eugenia Franzoni eugenia@linuxcare.com
Riccardo Fabris frick@linux.it