[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
4. Preparazione dei dischi
Indice:
4.a. Introduzione ai dispositivi a blocchi
Dispositivi a blocchi
Si dà ora un'occhiata approfondita agli aspetti relativi ai dischi in Gentoo
Linux e in Linux in generale, tra cui i filesystem Linux, le partizioni e i
dispositivi a blocchi. Quindi, una volta acquisita familiarità con i dischi e
i filesystem, si viene guidati attraverso il processo di configurazione delle
partizioni e dei filesystem per l'installazione di Gentoo Linux.
Per cominciare, si introducono i dispositivi a blocchi. Il dispositivo a
blocchi più famoso è molto probabilmente quello che rappresenta il primo hard
disk SCSI in un sistema Linux, /dev/sda.
I dispositivi a blocchi rappresentano un'interfaccia astratta ai dischi. I
programmi utente possono usare questi dispositivi a blocchi per interagire con
i dischi, senza doversi chiedere se si tratta di unità IDE, SCSI o di
qualsiasi altro tipo. Il programma può semplicemente indirizzare la
memorizzazione su disco attraverso dei blocchi contigui, accessibili in
modalità random, e di dimensione pari a 512 byte ciascuno.
I dispositivi a blocchi sono mostrati come voci in /dev/. Il primo
disco SCSI è /dev/sda, il secondo /dev/sdb, e così
via. I dischi IDE sono chiamati in modo simile, ma hanno come prefisso hd-
invece di sd-. Se si usano dischi IDE, il primo è /dev/hda, il
secondo /dev/hdb, e così via.
Partizioni
Nonostante sia possibile usare un intero disco per il sistema Linux, ciò non
è quasi mai messo in pratica. Invece, i dispositivi a blocchi del disco sono
divisi in parti più piccole e più maneggevoli. Queste parti sono conosciute
come partizioni o slices.
La prima partizione sul primo disco SCSI è /dev/sda1, la seconda
/dev/sda2 e così via. In modo simile, le prime due partizioni sul
primo disco IDE sono /dev/hda1 e /dev/hda2.
La terza partizione su sistemi Sun, è una slice speciale: "whole disk". Questa
partizione non deve contenere un filesystem.
Gli utenti che hanno usato lo schema di partizioni DOS, dovrebbero notare che
Sun disklabels non ha partizioni "primarie" e "estese". Invece, sono
disponibili otto partizioni per disco, con la terza che è riservata.
4.b. Impostare uno schema di partizionamento
Schema di partizionamento di default
Se non si è interessati a elaborare uno schema di partizionamento, la tabella
sotto mostra un buon punto di partenza per la maggior parte dei sistemi. Per
sistemi basati su IDE, sostituire sda con hda.
Si noti che una partizione separata /boot, non è
generalmente raccomandata su SPARC, poichè diventa complicata la
configurazione del bootloader.
| Partizione |
Filesystem |
Dimensione |
Punto del mount |
Descrizione |
| /dev/sda1 |
ext3 |
<2 GByte |
/ |
Partizione root. Per tutti i sistemi sparc32, e i sistemi sparc64 con
versioni vecchie OBP, questa deve essere di dimensione minore di 2
GBytes, e la prima partizione sul disco.
|
| /dev/sda2 |
swap |
512 MBytes |
nessuno |
Partizione swap. Per bootstrap e alcune compilazioni più grandi, è
richiesta di almeno 512 MBytes di RAM (inclusa swap).
|
| /dev/sda3 |
nessuno |
Whole disk |
nessuno |
Partizione Whole Disk. Questa è richiesta sui sistemi SPARC. |
| /dev/sda4 |
ext3 |
almeno 2 GBytes |
/usr |
Partizione /usr. Qui sono installate le applicazioni. Di default questa
partizione è usata anche per i dati di Portage (che occupano circa 500 MB
escluso il codice sorgente).
|
| /dev/sda5 |
ext3 |
almeno 1 GByte |
/var |
Partizione /var. Usata per i dati generati dai programmi. Di default
Portage usa questa partizione per lo spazio temporaneo mentre compila.
Alcune applicazioni più grandi come Mozilla e OpenOffice.org, possono
richiedere più di 1 GByte di spazio temporaneo quando si compilano.
|
| /dev/sda6 |
ext3 |
spazio rimanente |
/home |
Partizione /home. Usata per le directory della home degli utenti. |
4.c. Usare fdisk per partizionare il disco
La parte seguente spiega come creare lo schema di partizione di esempio
descritto precedentemente:
| Partizione |
Descrizione |
| /dev/sda1 |
/ |
| /dev/sda2 |
swap |
| /dev/sda3 |
whole disk slice |
| /dev/sda4 |
/usr |
| /dev/sda5 |
/var |
| /dev/sda6 |
/home |
Cambiare le partizioni come richiesto. Ricordarsi di mantenere la partizione
root nei primi 2 GBytes del disco per i sistemi più vecchi. C'è anche un
limite di 15 partizioni per SCSI e SATA.
Eseguire fdisk
Aprire fdisk per il proprio disco:
Codice 3.1: Aprire fdisk |
# fdisk /dev/sda
|
Si visualizzerà un prompt come questo:
Codice 3.2: Prompt di fdisk |
Command (m for help):
|
Digitare p per visualizzare le partizioni disponibili:
Codice 3.3: Elencare le partizioni disponibili |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda1 0 488 499712 83 Linux native
/dev/sda2 488 976 499712 82 Linux swap
/dev/sda3 0 8635 8842240 5 Whole disk
/dev/sda4 976 1953 1000448 83 Linux native
/dev/sda5 1953 2144 195584 83 Linux native
/dev/sda6 2144 8635 6646784 83 Linux native
|
Notare il Sun disk label. Se manca, il disco sta usando il
partizionamento DOS, non quello Sun. In questo caso, usare s per
assicurarsi che il disco abbia una tabella di partizioni sun:
Codice 3.4: Creare un Sun Disklabel |
Command (m for help): s
Building a new sun disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
Drive type
? auto configure
0 custom (with hardware detected defaults)
a Quantum ProDrive 80S
b Quantum ProDrive 105S
c CDC Wren IV 94171-344
d IBM DPES-31080
e IBM DORS-32160
f IBM DNES-318350
g SEAGATE ST34371
h SUN0104
i SUN0207
j SUN0327
k SUN0340
l SUN0424
m SUN0535
n SUN0669
o SUN1.0G
p SUN1.05
q SUN1.3G
r SUN2.1G
s IOMEGA Jaz
Select type (? for auto, 0 for custom): 0
Heads (1-1024, default 64):
Using default value 64
Sectors/track (1-1024, default 32):
Using default value 32
Cylinders (1-65535, default 8635):
Using default value 8635
Alternate cylinders (0-65535, default 2):
Using default value 2
Physical cylinders (0-65535, default 8637):
Using default value 8637
Rotation speed (rpm) (1-100000, default 5400): 10000
Interleave factor (1-32, default 1):
Using default value 1
Extra sectors per cylinder (0-32, default 0):
Using default value 0
|
Si possono trovare i valori corretti nella documentazione del proprio disco.
L'opzione 'auto configure' solitamente non funziona.
Rimuovere tutte le partizioni
Si procede ora alla rimozione di tutte le partizioni esistenti. Per fare
questo, digitare d e premere invio. Si visualizzerà il numero della
partizione che si desidera eliminare. Per rimuovere /dev/sda1 già
presente, digitare:
Codice 3.5: Eliminare una partizione |
Command (m for help): d
Partition number (1-4): 1
|
Non si dovrebbe rimuovere la partizione 3 (whole disk). Questa è
richiesta. Se non esiste, seguire le istruzioni fornite sopra per
"Creare un Sun Disklabel".
Dopo aver rimosso tutte le partizioni tranne la Whole disk, si dovrebbe avere
uno schema come questo:
Codice 3.6: Schema di partizioni vuoto |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda3 0 8635 8842240 5 Whole disk
|
Creare la partizione root
Si procede ora alla creazione della partizione root. Digitare n per
creare una nuova partizione, poi 1 per creare la partizione. Quando si
visualizza il prompt per il primo cilindro, premere invio. Quando si visualizza
il prompt per l'ultimo cilindro, digitare +512M per creare una
partizione di 512MBytes. Assicurarsi che tutta la partizione root sia
contenuta nei primi 2 GBytes del disco. Segue l'output di questi passi:
Codice 3.7: Creare un partizione root |
Command (m for help): n
Partition number (1-8): 1
First cylinder (0-8635): (press Enter)
Last cylinder or +size or +sizeM or +sizeK (0-8635, default 8635): +512M
|
Ora, digitando p si dovrebbe avere una tabella partizionata come questa:
Codice 3.8: Schema di partizioni |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda1 0 488 499712 83 Linux native
/dev/sda3 0 8635 8842240 5 Whole disk
|
Creare una partizione swap
Si procede ora alla creazione della partizione swap. Per farlo, digitare
n per creare una nuova partizione, poi 2 per creare la seconda
partizione, /dev/sda2. Quando si visualizza il prompt per il primo
cilindro, premere invio. Quando si visualizza il prompt per l'ultimo cilindro,
digitare +512M per creare una partizione di 512MB. Dopo aver fatto
questo, digitare t per impostare il tipo di partizione, digitare
82 per impostare il tipo di partizione a "Linux Swap". Finiti questi
passaggi, digitando p si dovrebbe avere una tabella partizionata simile
a questa:
Codice 3.9: Elenco delle partizioni disponibili |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda1 0 488 499712 83 Linux native
/dev/sda2 488 976 499712 82 Linux swap
/dev/sda3 0 8635 8842240 5 Whole disk
|
Creare le partizioni /usr, /var e /home
Infine si creano le partizioni /usr, /var e /home. Digitare n per creare
una nuova partizione, poi digitare 4 per creare la terza partizione,
/dev/sda4. Quando si visualizza il prompt per il primo cilindro,
premere invio. Quando si visualizza il prompt per l'ultimo cilindro, digitare
+2048M per creare una partizione di 2 GBytes. Ripetere il processo per
sda5 e sda6, usando le dimensioni desiderate. Poi, si
dovrebbe vedere qualcosa come questo:
Codice 3.10: Elenco della tabella di partizioni completa |
Command (m for help): p
Disk /dev/sda (Sun disk label): 64 heads, 32 sectors, 8635 cylinders
Units = cylinders of 2048 * 512 bytes
Device Flag Start End Blocks Id System
/dev/sda1 0 488 499712 83 Linux native
/dev/sda2 488 976 499712 82 Linux swap
/dev/sda3 0 8635 8842240 5 Whole disk
/dev/sda4 976 1953 1000448 83 Linux native
/dev/sda5 1953 2144 195584 83 Linux native
/dev/sda6 2144 8635 6646784 83 Linux native
|
Salvare e uscire
Per salvare lo schema delle partizioni e uscire da fdisk, digitare
w:
Codice 3.11: Salvare e uscire da fdisk |
Command (m for help): w
|
Ora che le partizioni sono create, si può continuare con la sezione
riguardante come Creare i filesystem.
4.d. Creare i filesystem
Introduzione
Ora che le partizioni sono state create, è il momento di inserire il
filesystem. Se non si è interessati alla scelta del filesystem e vanno bene
quelli che si usano di default in questo Manuale, continuare con la sezione su
come
Applicare un filesystem a una partizione. Altrimenti ecco una descrizione
dei filesystem disponibili.
Filesystem
Sono disponibili molti filesystem, alcuni sono stabili sull'architettura SPARC.
Ext2 e ext3 per esempio funzionano bene. Altri filesystem potrebbero non
funzionare.
ext2 è il vero e proprio filesystem di Linux ma non possiede il
supporto per il metadata journaling, il che significa che le routine che
effettuano all'avvio i controlli sul filesystem ext2 possono impiegare diverso
tempo. Al momento esiste una scelta abbastanza ampia di filesystem journaled di
nuova generazione che sono in grado di effettuare controlli sulla consistenza
molto velocemente e sono generalmente preferiti alle controparti non-journaled.
I filesystem journaled prevengono i lunghi tempi di attesa che solitamente si
riscontrano quando viene riavviato il sistema e il filesystem si trova in uno
stato inconsistente.
ext3 è la versione journaled del filesystem ext2, fornisce il metadata
journaling per un veloce recupero dei dati in aggiunta ad altre
caratteristiche di journaling avanzate come full data e ordered data
journaling. Ha una opzione di indice hashed b-tree che abilita alte
prestazioni in quasi tutte le situazioni. Ext3 è una eccellente e sicura
alternativa a ext2.
Applicare un filesystem a una partizione
Per creare un filesystem su una partizione o volume, sono disponibili tool per
ogni filesystem possibile:
| Filesystem |
Comando per la creazione |
| ext2 |
mke2fs |
| ext3 |
mke2fs -j |
Per esempio, per creare la partizione root (/dev/sda1) come ext2,
e le partizioni /usr, /var e /home
(/dev/sda4, 5 e 6) come ext3, si usa:
Codice 4.1: Applicare un filesystem su una partizione |
# mke2fs /dev/sda1
# mke2fs -j /dev/sda4
# mke2fs -j /dev/sda5
# mke2fs -j /dev/sda6
|
Attivare la partizione swap
mkswap è il comando usato per inizializzare le partizioni swap:
Codice 4.2: Inizializzare la partizione swap |
# mkswap /dev/sda2
|
Per attivare la partizione swap, usare swapon:
Codice 4.3: Attivare la partizione swap |
# swapon /dev/sda2
|
Creare e attivare swap subito.
4.e. Montare
Ora che le partizioni sono inizializzate e hanno un filesystem, è il momento
di montarle. Usare il comando mount. Non dimenticarsi di creare le
necessarie directory di mount:
Codice 5.1: Montare le partizioni |
# mount /dev/sda1 /mnt/gentoo
# mkdir /mnt/gentoo/usr
# mount /dev/sda4 /mnt/gentoo/usr
# mkdir /mnt/gentoo/var
# mount /dev/sda5 /mnt/gentoo/var
# mkdir /mnt/gentoo/home
# mount /dev/sda6 /mnt/gentoo/home
|
Nota:
Se si vuole che /tmp risieda in una partizione separata,
assicurarsi di cambiare i permessi dopo il mount:
chmod 1777 /mnt/gentoo/tmp. Questo vale anche per /var/tmp.
|
E' necessario inoltre montare il filesystem proc (una interfaccia virtuale con
il kernel) su /proc. Ma prima si devono mettere i file sulle
partizioni.
Continuare con la
Copia dei file di installazione di Gentoo.
[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
I contenuti di questo documento sono rilasciati sotto la licenza Creative
Commons - Attribution / Share Alike.
|