[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
4. Preparazione dei dischi
Indice:
4.a. Introduzione ai dispositivi a blocchi
Dispositivi a blocchi
Si da 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 la prima
unità IDE in un sistema Linux, /dev/hda. Se il sistema usa
dischi SCSI, allora il primo disco fisso dovrebbe essere /dev/sda.
I dischi serial ATA hanno /dev/sda anche se sono dischi IDE.
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.
Partizioni e slices
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. Sulla maggior
parte dei sistemi, queste sono chiamate partizioni.
Altre architetture, usano una tecnica simile, chiamandole slices.
4.b. Impostare uno schema di partizionamento
Schema di partizionamento di default
Se non si è interessati a elaborare uno schema di partizionamento per
il sistema, si può usare quello di questo Manuale:
| Partizione |
Filesystem |
Grandezza |
Descrizione |
| /dev/sda1 |
Partition map |
31.5k |
Partition map |
| /dev/sda2 |
(bootstrap) |
800k |
Apple_Bootstrap |
| /dev/sda3 |
(swap) |
512M |
Partizione swap |
| /dev/sda4 |
ext3 |
Resto dello spazio su disco |
Partizione root |
Nota:
Ci sono partizioni come: Apple_Driver43, Apple_Driver_ATA,
Apple_FWDriver, Apple_Driver_IOKit, Apple_Patches,
che si possono cancellare se non si desidera utilizzare MacOS 9, perchè MacOS
e Linux non ne hanno bisogno. Si deve usare parted per eliminarle,
poichè mac-fdisk ancora non può farlo.
|
Se si è interessati ad avere informazioni su quanto dovrebbe essere grande
una partizione, o anche su quante partizioni si ha bisogno, seguono alcuni
suggerimenti. Altrimenti continuare con Apple G5:
Usare mac-fdisk per partizionare il disco o
IBM pSeries: Usare fdisk per partizionare il disco
Numero e dimensione delle partizioni
Il numero delle partizioni è altamente dipendente sull'ambiente. Per esempio,
se si hanno molti utenti su una stessa macchina, molto probabilmente si
desidera tenere separate le directory /home, aumentando così
la sicurezza e rendendo più facile il backup. Se si sta installando Gentoo
per utilizzarlo da mailserver, /var dovrebbe essere separata
poichè tutta la posta viene memorizzata in essa. Una buona scelta del
filesystem è quella che massimizza le prestazioni. I gameserver è bene che
abbiano una partizione separata per /opt, visto che la maggior
parte dei server di gioco sono installati li. La stessa cosa vale per
/home: sicurezza e backup. Si dovrebbe tenere una grande
/usr: questa contiene non solo la maggior parte
delle applicazioni, il solo Portage tree occupa 500 MB di spazio,
esclusi i sorgenti che sono in esso.
Come si è visto, molto dipende da cosa si desidera realizzare.
Partizioni o volumi separati hanno i seguenti vantaggi:
-
Si può scegliere il filesystem con maggiori prestazioni per ogni partizione
o volume
-
L'intero sistema non può esaurire lo spazio libero se un tool
malfunzionante scrive all'infinito su una partizione od un volume
-
Nel caso si rendano necessari, i controlli sul filesystem sono ridotti,
poichè possono essere condotti in parallelo diverse analisi
(questo vantaggio è più per i dischi multipli che per le
partizioni multiple)
-
La sicurezza può essere aumentata montando alcune partizioni
o volumi in sola lettura, nosuid (i bit setuid vengono ignorati),
noexec (i bit executable sono ignorati) etc.
Le partizioni multiple hanno però un grosso svantaggio: se non
sono configurate correttamente, si potrebbe avere un sistema con molto spazio
libero su una partizione e poco su un'altra.
C'è anche un limite di 15 partizioni per SCSI e SATA.
4.c. Default: Usare mac-fdisk (Apple G5) per partizionare il disco
Si creano le partizioni con mac-fdisk:
Codice 3.1: Eseguire mac-fdisk |
# mac-fdisk /dev/sda
|
Per prima cosa si cancellino le partizioni precedentemente eliminate per poter
inserire le partizioni Linux. Usare d in mac-fdisk per eliminare
queste partizioni. Verrà chiesto il numero della partizione da eliminare.
Si crei una partizione Apple_Bootstrap con b. Verrà chiesto da
quale blocco si vuole partire. Dare il numero della prima partizione libera,
seguito da p. Per esempio 2p.
Nota:
Questa partizione non è quella "boot". Non è usata da Linux, non si
deve mettere nessun filesystem su essa e non si dovrebbe neanche montare.
Gli utenti PPC non hanno bisogno di una partizione /boot.
|
Si crei una partizione swap digitando c. Verrà chiesto da quale blocco
si vuole far partire questa partizione, e si digiti 3p.
Quando verrà chiesta la grandezza, si digiti 512M (o qualsiasi altra
grandezza si desidera), e quando verrà chiesto il nome scrivere swap
(obbligatorio).
Per creare la partizione root, premere c seguito da 4p,
4 è il blocco di inizio della partizione. Quando verrà chiesta la grandezza
premere di nuovo 4p, mac-fdisk lo interpreterà come "Usare tutto
lo spazio disponibile". Quando verrà chiesto il nome digitare root
(obbligatorio).
Per finire si devono memorizzare le partizioni sul disco con w
e uscire da mac-fdisk premendo q.
Nota:
Per assicurarsi che tutto è andato bene, si dovrebbe rieseguire mac-fdisk e
controllare se ci sono le partizioni. Se non ci sono o se non si vedono
i cambiamenti, si dovrebbe reinizializzare le partizioni premendo "i" in
mac-fdisk. Questo ricreerà la mappa delle partizioni
e rimuoverà quelle precedenti.
|
Ora che le partizioni sono create, si può continuare con la sezione
riguardante come Creare i filesystem.
4.d. IBM pSeries, iSeries e OpenPower: Usare fdisk per partizionare il disco
Nota:
Se si vuole usare un disk array RAID per la installazione di Gentoo e si sta
usando un hardware POWER5, si dovrebbe eseguire iprconfig per disporre
i dischi al formato Advanced Function e creare disk array. Si dovrebbe
emergere iprutils dopo che la installazione è
completata.
|
Se si ha un adattatore SCSI ipr, si dovrebbe avviare le utility ipr ora.
Codice 4.1: Avviare le utility ipr |
# /etc/init.d/iprinit start
|
La parte seguente spiega come creare lo schema di partizione di esempio
descritto precedentemente:
| Partizione |
Descrizione |
| /dev/sda1 |
Partizione PPC PReP Boot |
| /dev/sda2 |
Partizione swap |
| /dev/sda3 |
Partizione root |
Cambiare le partizioni in base alle proprie impostazioni.
Vedere la disposizione delle partizioni
fdisk è un tool popolare e potente per dividere il disco in partizioni.
Eseguire fdisk per il disco (nell'esempio si usa /dev/sda):
Codice 4.2: Eseguire fdisk |
# fdisk /dev/sda
|
Si visualizzerà un prompt come questo:
Codice 4.3: Prompt di fdisk |
Command (m for help):
|
Digitare p per visualizzare le attuali partizioni presenti sul disco:
Codice 4.4: Un esempio di partizionamento |
Command (m for help): p
Disk /dev/sda: 30.7 GB, 30750031872 bytes
141 heads, 63 sectors/track, 6761 cylinders
Units = cylinders of 8883 * 512 = 4548096 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 12 53266+ 83 Linux
/dev/sda2 13 233 981571+ 82 Linux swap
/dev/sda3 234 674 1958701+ 83 Linux
/dev/sda4 675 6761 27035410+ 5 Extended
/dev/sda5 675 2874 9771268+ 83 Linux
/dev/sda6 2875 2919 199836 83 Linux
/dev/sda7 2920 3008 395262 83 Linux
/dev/sda8 3009 6761 16668918 83 Linux
Command (m for help):
|
Questo disco è configurato per avere sei filesystem Linux (chiamati "Linux"
nelle corrispondenti partizioni) e una partizione swap (chiamata "Linux swap").
Rimuovere tutte le partizioni
Si procede ora alla rimozione dal disco di tutte le partizioni esistenti.
Digitare d per eliminare una partizione. Per esempio,
per eliminare /dev/sda1:
Nota:
Se non si desidera eliminare tutte le partizioni, eliminare solo alcune
di esse. E' raccomandato fare un backup dei dati per evitare la loro perdita.
|
Codice 4.5: Eliminare una partizione |
Command (m for help): d
Partition number (1-4): 1
|
E' stata memorizzata l'eliminazione della partizione. Non si rivedrà più se
si digiterà p, ma non sarà eliminata fino a quando non si
salveranno i cambiamenti. Se si è commesso un errore e si vuole uscire senza
salvare, digitare q e invio e la partizione non sarà tolta.
Ora, se si desidera effettivamente eliminare tutte le partizioni sul sistema,
digitare p per visualizzare l'elenco delle partizioni, e poi digitare
d seguito dal numero della partizione, per eliminarle. Il risultato
è una tabella con nessuna partizione:
Codice 4.6: Tabella con nessuna partizione |
Disk /dev/sda: 30.7 GB, 30750031872 bytes
141 heads, 63 sectors/track, 6761 cylinders
Units = cylinders of 8883 * 512 = 4548096 bytes
Device Boot Start End Blocks Id System
Command (m for help):
|
Ora che la tabella è vuota, si è pronti a creare le partizioni. Come esempio,
si fa riferimento allo schema di partizionamento visto precedentemente:
non si deve seguire queste istruzioni alla lettera se non si
desidera implementare lo stesso schema.
Creare la partizione boot PPC PReP
Si crea una piccola partizione boot PReP. Digitare n per creare una
nuova partizione, poi p per selezionare una partizione primaria,
seguito da 1 per selezionare la prima partizione primaria.
Quando si visualizza il prompt per il primo cilindro, premere enter.
Quando si visualizza il prompt per l'ultimo cilindro, digitare +7M
per creare una partizione di 7 Mbyte. Digitare t per impostare
il tipo di partizione, 1 per selezionare la partizione creata e
41 per impostare la partizione a "PPC PReP Boot". Si dovrà mettere la
partizione PReP come bootable.
Nota:
La partizione PReP deve essere più piccola di 8 MByte.
|
Codice 4.7: Creare la partizione boot PReP |
Command (m for help): p
Disk /dev/sda: 30.7 GB, 30750031872 bytes
141 heads, 63 sectors/track, 6761 cylinders
Units = cylinders of 8883 * 512 = 4548096 bytes
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-6761, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-6761, default
6761): +8M
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 41
Changed system type of partition 1 to 41 (PPC PReP Boot)
Command (m for help): a
Partition number (1-4): 1
Command (m for help):
|
Quando si digita p, si dovrebbe vedere la seguente partizione:
Codice 4.8: Partizione di boot creata |
Command (m for help): p
Disk /dev/sda: 30.7 GB, 30750031872 bytes
141 heads, 63 sectors/track, 6761 cylinders
Units = cylinders of 8883 * 512 = 4548096 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 3 13293 41 PPC PReP Boot
Command (m for help):
|
Creare la partizione swap
Si procede ora alla creazione della partizione swap. Per farlo, digitare
n per creare una nuova partizione, poi p per dire a fdisk
che si desidera creare una partizione primaria. Digitare 2 per creare
la seconda partizione primaria, /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, 2 per selezionare la partizione che si è creata e infine
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 4.9: Elenco delle partizioni dopo aver creato la partizione swap |
Command (m for help): p
Disk /dev/sda: 30.7 GB, 30750031872 bytes
141 heads, 63 sectors/track, 6761 cylinders
Units = cylinders of 8883 * 512 = 4548096 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 3 13293 41 PPC PReP Boot
/dev/sda2 4 117 506331 82 Linux swap
Command (m for help):
|
Creare la partizione root
Si procede ora alla creazione della partizione root. Digitare n per
creare una nuova partizione, poi p per dire a fdisk che si vuole una
partizione primaria. Digitare 3 per creare la terza partizione primaria,
/dev/sda3. Quando si visualizza il prompt per il primo cilindro,
premere invio. Quando si visualizza il prompt per l'ultimo cilindro,
premere invio per creare una partizione che occupi il resto dello spazio
su disco. Infine, digitando p si dovrebbe avere una tabella
partizionata simile a questa:
Codice 4.10: Elenco delle partizioni dopo aver creato la partizione root |
Command (m for help): p
Disk /dev/sda: 30.7 GB, 30750031872 bytes
141 heads, 63 sectors/track, 6761 cylinders
Units = cylinders of 8883 * 512 = 4548096 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 3 13293 41 PPC PReP Boot
/dev/sda2 4 117 506331 82 Linux swap
/dev/sda3 118 6761 29509326 83 Linux
Command (m for help):
|
Salvare lo schema delle partizioni
Per salvare lo schema delle partizioni e uscire da fdisk,
digitare w.
Codice 4.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.e. 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
Nota:
Sono disponibili molti filesystem. Il supporto per ext2, ext3 e ReiserFS è
compilato nei kernel del CD di installazione. Il supporto per JFS e XFS è
disponibile tra i moduli del kernel.
|
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. ext3 è un filesystem davvero molto valido e affidabile.
Ha una ulteriore opzione di indice hashed b-tree che abilita alte prestazioni
in quasi tutte le situazioni. Si può abilitare questo indice aggiungendo
-O dir_index al comando mke2fs.
In poche parole, ext3 è un filesystem eccellente.
ReiserFS è un filesystem basato su B*-tree che offre ottime
performance generali e si dimostra notevolmente superiore a ext2 e
ext3 con file di piccole dimensioni (file minori di 4k), spesso di un
fattore 10-15. ReiserFS scala inoltre molto bene e supporta il
metadata journaling. Dal kernel 2.4.18 in poi, ReiserFS ha raggiunto la
solidità che lo porta a essere caldamente raccomandato sia per un uso generico
che per casi estremi come la creazione di grandi filesystem, l'uso su molti
file piccoli, file molto grandi e directory contenenti decine di migliaia
di file.
XFS è un filesystem con metadata journaling che si presenta con un
robusto insieme di caratteristiche ed è ottimizzato per la scalabilità.
Se ne raccomanda l'uso su sistemi Linux dotati di unità di memorizzazione
con canali in fibra o high-en SCSI e alimentazione continua.
Data l'aggressività con la quale XFS si serve della cache in RAM per i dati
in transito, programmi progettati in modo non adeguato (quelli che non prendono
precauzioni quando scrivono file su disco, e ce ne sono diversi)
possono perdere una discreta quantità di dati se il sistema si arresta in
modo inaspettato.
JFS è il filesystem con journaling ad alte prestazioni di IBM.
E' stato recentemente giudicato pronto per il mercato.
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 |
| reiserfs |
mkreiserfs |
| xfs |
mkfs.xfs |
| jfs |
mkfs.jfs |
Per esempio, per avere la partizione root (/dev/sda4) ext3 si usa:
Codice 5.1: Applicare un filesystem su una partizione |
# mke2fs -j /dev/sda4
|
Ora si procede alla creazione dei filesystem
sulle partizioni (o volumi logici) create precedentemente.
Attivare la partizione swap
mkswap è il comando usato per inizializzare le partizioni swap:
Codice 5.2: Creare una signature swap |
# mkswap /dev/sda3
|
Per attivare la partizione swap, usare swapon:
Codice 5.3: Attivare la partizione swap |
# swapon /dev/sda3
|
Creare e attivare swap con il comando menzionato sopra.
4.f. 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 per ogni partizione creata.
Come esempio si crea un mount point e si monta la partizione root e boot:
Codice 6.1: Montare le partizioni |
# mkdir /mnt/gentoo
# mount /dev/sda4 /mnt/gentoo
|
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.
|
Continuare con
Copia dei file di installazione di Gentoo.
[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
I contenuti di questo documento sono rilasciati sotto la licenza Creative
Commons - Attribution / Share Alike.
|