This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.

Please visit our production wiki at https://wiki.gentoo.org

Preparare i dischi

From Gentoo Wiki (test)
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:AMD64/Installation/Disks and the translation is 100% complete.
Manuale AMD64
Installazione
Riguardo l'installazione
Il mezzo d'installazione
Configurare la rete
Preparare i dischi
Installare lo stage3
Installare il sistema base
Configurare il kernel
Configurare il sistema
Strumenti di sistema
Configurare l'avviatore
Ultimare l'installazione
Lavorare con Gentoo
Introduzione a Portage
Opzioni USE
Funzionalità di Portage
Sistema script di init
Variabili d'ambiente
Lavorare con Portage
File e cartelle
Variabili
Mixare i rami del software
Strumenti aggiuntivi
Repositorio pacchetti personalizzato
Funzionalità avanzate
Configurare la rete
Come iniziare
Configurazione avanzata
Networking modulare
Wireless
Aggiungere funzionalità
Gestione dinamica


Introduzione ai dispositivi a blocchi

Dispositivi a blocchi

Approfondiamo ora gli aspetti relativi ai dischi di Gentoo Linux e Linux in generale, compresi i filesystem, le partizioni e i dispositivi a blocchi di Linux. Appena tutto sarà chiaro in merito ai filesystem, allora partizioni e filesystem potranno essere scelti per installare Gentoo Linux.

Per iniziare, diamo un'occhiata ai dispositivi a blocchi. Quello più noto è solitamente il primo disco in un sistema Linux, ovvero /dev/sda. I dischi SCSI e Serial ATA sono entrambi chiamati /dev/sd*; persino i dispositivi IDE sono etichettati /dev/sd* quando si usa il framework libata nel kernel. Invece, con il framework (libreria di codici) dei vecchi dispositivi, il primo disco IDE è /dev/hda.

I dispositivi a blocchi di cui sopra rappresentano un'interfaccia astratta del disco. I programmi dell'utente possono usare questi dispositivi a blocchi per interagire col disco senza doversi preoccupare del fatto che i dischi siano IDE, SCSI o altro. Il programma può semplicemente indirizzare lo spazio sul disco come un insieme di blocchi da 512 byte contigui e accessibili in modo casuale.


Tabelle delle partizioni

Benché per ospitare un sistema Linux sia teoricamente possibile usare un disco grezzo e non partizionato (quando si crea un RAID btrfs per esempio), praticamente ciò non viene mai fatto. Piuttosto, i dischi vengono suddivisi in unità a blocchi più piccole e maneggevoli. Su sistemi amd64, esse sono chiamate partizioni. Attualmente sono standardizzate due tecnologie di partizionamento: MBR e GPT.

MBR

La configurazione tramite MBR (Master Boot Record) usa identificatori a 32 bit per il settore di avvio e per stabilire la grandezza delle partizioni. Supporta tre tipi di partizione: primaria, estesa e logica. Le partizioni primarie memorizzano le loro informazioni nel master boot record stesso - uno spazio molto piccolo (solitamente 512 byte) all'inizio del disco. A causa del poco spazio, vengono supportate solo quattro partizioni primarie (per esempio, da /dev/sda1 a /dev/sda4).

Per supportare più partizioni, una delle partizioni primarie può essere definita come partizione estesa. Questa partizione può in tal caso contenere a sua volta delle partizioni logiche (partizioni all'interno di una partizione).

Important
Although still supported by most motherboard manufacturers partition tables are considered legacy. Unless working with hardware that is pre-2010, it best to partition a disk using a GUID Partition Table. Readers who must proceed with MBR should acknowledge the following information:
  • Most post-2010 motherboards consider MBR a legacy (supported, but not ideal) boot mode.
  • Due to using 32-bit identifiers, master boot record partitioning tables cannot handle disks that are greater than 2 TiBs in size.
  • Unless a extended partition is created, MBR supports a maximum of four partitions.
  • The MBR setup does not provide any backup-MBR, so if an application or user overwrites the MBR, all partition information is lost.

The Handbook authors suggest using GPT whenever possible for Gentoo installations.

GPT

La configurazione tramite GPT (GUID Partition Table) usa identificatori a 64 bit per le partizioni. Lo spazio dove memorizza le informazioni sulle partizioni è molto più grande dei 512 byte dell'MBR, il ché significa che non c'è praticamente alcun limite alla quantità di partizioni definibili su un disco GPT. Inoltre, il limite per la dimensione massima di una partizione è di gran lunga maggiore (quasi 8 ZB - sì, zettabytes).

Quando l'interfaccia software del sistema, che si pone tra il sistema operativo e il firmware, è UEFI (anziché BIOS), GPT è quasi obbligatoria in quanto potrebbero sorgere problemi di compatibilità con MBR.

GPT trae anche vantaggio dalle somme di controllo (checksum) e dalla ridondanza. Porta il controllo CRC32 alla testata delle tabelle di partizione per rilevare errori ed offre un backup del segmento GPT alla fine del disco. Questo backup può essere usato per ripristinare i danni del segmento GPT corrente all'inizio del disco.

GPT o MBR

Dalla descrizione precedente, si potrebbe pensare che usare GPT sia sempre l'approccio migliore da seguire, tuttavia ci sono alcune controindicazioni.

Nel caso si usi GPT su un computer basato su BIOS, non è possibile effettuare il dual boot (avvio doppio o multiplo) con un sistema operativo Microsoft Windows. Il motivo è che Microsoft Windows, quando rivela un'etichetta GPT, si avvia in modalità UEFI.

Firmware difettosi di alcune schede madri configurati per avviarsi in modalità BIOS/CSM/legacy potrebbero avere problemi quando si avviano da dischi etichettati GPT. Se questo è il caso, allora si può risolvere aggiungendo il flag avvio/attivo sulla partizione MBR protettiva, tramite fdisk con l'opzione -t dos per forzare la lettura della tabella delle partizioni con il formato MBR.

In questo caso, eseguire fdisk ed impostare il flag usando il tasto a. Premere 1 per selezionare la prima partizione, premere il tasto w per scrivere i cambiamenti sul disco e uscire dall'applicazione fdisk:

user $fdisk -t dos /dev/sda
Welcome to (Benvenuti su) fdisk (util-linux 2.24.1).
Changes will remain in memory only, until you decide to write them.
(I cambiamenti rimarranno solo nella memoria, finché non deciderai di scriverli)
Be careful before using the write command.
(Presta attenzione prima di usare il comando scrivi)
  
Command (m for help): a
Partition number (1-4): 1
  
Command (m for help): w

Uso di UEFI

Quando si installa Gentoo su un sistema che utilizza UEFI per avviare il sistema operativo (invece di BIOS), allora è importante creare una Partizione di Sistema EFI (ESP). Le istruzioni per parted di seguito contengono i puntatori necessari per gestire questa operazione correttamente.

La partizione ESP deve essere una variante di FAT (talvolta mostrata come vfat sui sistemi Linux). Le specifiche UEFI ufficiali dichiarano che i filesystem FAT12, 16 o 32 vengono riconosciuti dal firmware UEFI, benché sia raccomandato FAT32 per la ESP. Procedere con la formattazione della ESP in FAT32:

root #mkfs.fat -F 32 /dev/sda2
Importante
Se non viene usata una variante FAT per l'ESP, non è garantito che il firmware UEFI di sistema trovi il bootloader (o il kernel Linux) e probabilmente non sarà in grado di avviare il sistema!

Partizionamento avanzato

RAID btrfs

Come notato sopra, btrfs ha la possibilità di creare filesystem su più dispositivi. I filesystem btrfs generati così possono funzionare in vari modi: raid0, raid1, raid10, raid5 e raid6. Le modalità RAID 5 e 6 sono migliorate considerevolmente, ma sono ancora considerate instabili. Una volta creato un filesystem su più dispositivi, possono essere aggiunti nuovi dispositivi e quelli vecchi possono essere rimossi con pochi comandi. Btrfs comunque richiede più coinvolgimento da parte dell'utente rispetto ad altri filesystem, rendendolo non particolarmente adatto ai principianti.

I filesystem ext4 possono essere convertiti in filesystem btrfs, cosa che può essere utile per coloro che vogliono installare Gentoo con un filesystem stabile e ben testato e che desiderano accrescere la loro conoscenza dei filesystem più recenti come btrfs tramite esperimenti diretti.

LVM

I CD di installazione amd64 forniscono supporto per il gestore dei volumi logici (LVM). LVM accresce la flessibilità offerta dalla configurazione di partizionamento. Le istruzioni di installazione riportate di seguito si concentrano su partizioni "regolari", ma è bene sapere che anche LVM è supportato se si desidera proseguire per quella strada. Leggere l'articolo LVM per ulteriori dettagli. I nuovi arrivati stiano attenti: benché LVM sia completamente supportato, va al di là dello scopo di questa guida.

Schema di partizionamento predefinito

Per tutto il resto del manuale, verrà usato il seguento schema di partizionamento come esempio semplice di configurazione:

Partizione Filesystem Dimensione Descrizione
/dev/sda1 (bootloader) 2M Partizione di avvio BIOS
/dev/sda2 ext2 (o fat32 se si utilizza UEFI) 128M Partizione di sistema Boot/EFI
/dev/sda3 (swap) 512M o maggiore Partizione di swap
/dev/sda4 ext4 Spazio rimanente del disco Partizione radice (root)

Se ciò è sufficiente e il lettore ha scelto la configurazione GPT, si può proseguire con la sezione Predefinito: Uso di parted per partizionare il disco. Coloro che sono ancora interessati a MBR (ehi, capita!) e vogliono usare la configurazione d'esempio, possono proseguire con l'Alternativa: Uso di fdisk per partizionare il disco.

Sia fdisk che parted sono utilità di partizionamento. fdisk è ben noto, stabile, e raccomandato per la configurazione di partizionamento MBR, mentre parted è stata una delle prima utilità di gestione dei dispositivi a blocchi Linux a supportare le partizioni GPT. Coloro a cui piace l'interfaccia di fdisk possono usare gdisk (fdisk GPT) come alternativa a parted.

Prima di proseguire con le istruzioni di creazione, il primo insieme di sezioni descriverà con maggiori dettagli come si possono creare schemi di partizionamento e si menzioneranno alcune trappole comuni.

Progettazione di uno schema delle partizioni

Quante partizioni e quanto grandi?

Il numero di partizioni dipende fortemente dal tipo di ambiente. Per esempio, se sono previsti molti utenti, allora è consigliato avere la /home/ separata così da migliorare la sicurezza e rendere più facili i backup. Se Gentoo viene installato per fare da server di posta elettronica, allora /var/ è meglio che stia separata in quanto le email vengono memorizzate all'interno di /var/. Una buona scelta del filesystem massimizzerà le prestazioni. I server da gioco avranno /opt/ separata, in quando la maggior parte dei server da gioco sono installati lì. La ragione è simile al percorso /home/: sicurezza e backup. Nella maggior parte delle situazioni, /usr/ dovrà essere capiente: non solo contiene la maggior parte delle applicazioni, ma in genere ospita anche repository ebuild di Gentoo (solitamente su /usr/portage), che fin dall'inizio occupa già 650 MB. Questa stima dello spazio su disco esclude le cartelle packages/ e distfiles/ che sono generalmente memorizzate all'interno di questo archivio ebuild.

Molto dipende da ciò che desidera l'amministratore. Partizioni o volumi separati hanno i seguenti vantaggi:

  • Scelta del miglior filesystem per ciascuna partizione o volume.
  • L'intero sistema non esaurirà lo spazio, nel caso in cui uno strumento invalido continui a scrivere file su una partizione o un volume.
  • Se necessario, i controlli del filesystem impiegheranno meno tempo, in quanto possono essere fatti in parallelo (benché questo vantaggio sia maggiore con i dischi multipli piuttosto che con le sole partizioni multiple).
  • La sicurezza può essere migliorata montando alcune partizioni o volumi in modalità di sola lettura, nosuid (ignora i bit setuid), noexec (ignora i bit eseguibili), ecc.

Tuttavia, anche avere partizioni multiple presenta degli svantaggi. Se il sistema non viene appropriatamente configurato potrebbe avere molto spazio libero su una partizione e niente più spazio su un'altra. Un altro aspetto noioso è che partizioni separate - specialmente per i punti di montaggio importanti come /usr/ o /var/ - richiedono spesso che l'amministratore avvii il sistema con un initramfs per montare la partizione, prima che altri script all'avvio vengano eseguiti. Non sempre si verifica questo caso, quindi i risultati possono variare.

C'è anche un limite di 15 partizioni per SCSI e SATA a meno che il disco non usi una configurazione GPT.

Riguardo lo spazio di swap?

Non c'è un valore perfetto per la partizione di swap. Lo scopo dello spazio di swap è quello di fornire, tramite disco, memoria al kernel quando la memoria interna (RAM) è sotto pressione. Uno spazio di swap permette al kernel di spostare le pagine di memoria, che non verranno utilizzate entro breve tempo, sul disco (swap o spaginazione), liberando memoria. Ovviamente, se quella memoria torna improvvisamente necessaria, queste pagine vengono rimesse nella memoria (paginazione), ciò richiederà un po' di tempo (dato che i dischi sono molto lenti, se paragonati alla memoria interna).

Quando il sistema non esegue applicazioni che occupano molta memoria oppure se il sistema ha tantissima memoria disponibile, allora è probabile che non serva molto spazio di swap. Comunque, lo spazio di swap è usato anche per scriverci tutta la memoria in caso di ibernazione. Se il sistema deve andare in ibernazione, allora è richiesto uno spazio di swap più grande, spesso pari ad almeno la quantità di memoria installata sul sistema.


Cos'è la partizione di avvio BIOS?

Una partizione di avvio BIOS è una partizione molto piccola (da 1 a 2 MB) in cui i bootloader come GRUB2 possono inserire dati aggiuntivi se non riescono a stare nello spazio allocato (poche centinaia di byte nel caso di MBR) e se non possono stare altrove.

Tale partizione non sempre è necessaria, ma considerando l'esiguo consumo di spazio e le difficoltà che avremmo nel documentare l'ampio insieme delle differenze di partizionamento facendo altre scelte, è raccomandato crearla in ogni caso.

Per completezza, si consideri che la partizione di avvio BIOS è necessaria quando lo schema di partizionamento GPT viene usato con GRUB2, o quando lo schema di partizionamento MBR viene usato con GRUB2 qualora la prima partizione inizi prima della distanza di 1 MB dall'inizio del disco.

Predefinito: Uso di parted per partizionare il disco

In questo capitolo, sarà utilizzato il precedente schema di partizionamento d'esempio:

Partizione Descrizione
/dev/sda1 Partizione di avvio BIOS
/dev/sda2 Partizione di avvio
/dev/sda3 Partizione di swap
/dev/sda4 Partizione radice (root)

Modificare lo schema di partizionamento in base alle proprie personali preferenze.

Visualizzare lo schema delle partizioni correnti con parted

L'applicazione parted offre un'interfaccia semplice per partizionare i dischi e supporta partizioni molto grandi (oltre 2 TB). Lanciare parted per il disco (come da esempio si userà /dev/sda). Si raccomanda di indicare a parted di realizzare un allineamento ottimale:

root #parted -a optimal /dev/sda
GNU Parted 2.3
Using (in utilizzo) /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(Benvenuto su GNU Parted! Digita 'help' per vedere l'elenco dei comandi)

Allineare significa che le partizioni vengono avviate secondo confini ben noti interni al disco, assicurandosi che le operazioni su disco dal livello del sistema operativo (recuperare pagine dati dal disco) si servano della minima quantità di operazioni per il disco interno. Le partizioni disallineate potrebbero richiedere al disco di recuperare due pagine dati invece di una sola, anche se il sistema operativo richiede una sola pagina.

Per conoscere tutte le opzioni supportate da parted, digitare help e premere invio.

Impostare l'etichetta GPT

La maggior parte dei dischi su architetture x86 e amd64 vengono preparati usando l'etichetta msdos. Se si usa parted, il comando per impostare l'etichetta GPT sul disco è mklabel gpt:

Attenzione
Cambiare il tipo di partizionamento rimuoverà tutte le partizioni dal disco. Tutti i dati sul disco saranno eliminati.
(parted)mklabel gpt

Per inizializzare il disco con MBR, usare mklabel msdos.

Rimuovere tutte le partizioni con parted

Se ciò non è ancora stato fatto (per esempio, attraverso il precedente mklabel o nel caso in cui il disco sia stato appena formattato), prima si devono rimuovere tutte le partizioni esistenti dal disco. Digitare print per vedere le partizioni correnti e digitare rm <N> con <N> che indica il numero della partizione da rimuovere.

(parted)rm 2

Proseguire rimuovendo tutte le altre partizioni non desiderate. Ci si assicuri di non commettere alcun errore in questo momento - parted esegue immediatamente le modifiche (diversamente da fdisk che prima le prepara, lasciando la possibilità di annullare i suoi cambiamenti prima di salvarli o di uscire da fdisk).

Creare le partizioni

Adesso parted sarà usato per creare le partizioni con le seguenti impostazioni:

  • Il tipo di partizione da usare. Solitamente è quella primaria. Se si usa la tabella delle partizioni msdos, si tenga presente che non più di 4 partizioni primarie possono essere create. Se servono più di 4 partizioni, allora una di queste dovrà essere una partizione estesa al cui interno si potranno creare partizioni logiche.
  • La posizione di inizio della partizione (la quale può essere espressa in MB, GB, ... )
  • La posizione di fine della partizione (la quale può essere espressa in MB, GB, ... )

Cominciamo dicendo a parted che i megabytes saranno l'unità di dimensionamento con la quale lavoreremo (per l'esattezza useremo i mebibytes, megabyte binari, abbreviati con la sigla MiB che è la notazione "standard", ma lungo tutto il documento scriveremo MB che è molto più comune):

(parted)unit mib

Creare adesso una partizione da 2 MB che verrà usata dal boot loader (selettore di avvio) GRUB2. Usare il comando mkpart per fare questo ed informare parted di collocarla dopo 1 MB dall'inizio del disco e concluderla a 3 MB (così da creare una partizione di 2 MB).

(parted)mkpart primary 1 3
(parted)name 1 grub
(parted)set 1 bios_grub on
(parted)print
Model: Virtio Block Device (virtblk)
Disk /dev/sda: 20480MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
  
Number   Start      End      Size     File system  Name   Flags
 1       1.00MiB    3.00MiB  2.00MiB               grub   bios_grub

Allo stesso modo si definisca la partizione di avvio (128 MB), la partizione di swap (512 MB come da esempio) e la partizione radice (root) che occuperà il rimanente spazio su disco (la posizione di fine disco viene indicata con -1, che significa meno 1 MB dalla fine del disco, tale posizione è quella più lontana a cui una partizione può arrivare).

(parted)mkpart primary 3 131
(parted)name 2 boot
(parted)mkpart primary 131 643
(parted)name 3 swap
(parted)mkpart primary 643 -1
(parted)name 4 rootfs

Quando si usa l'interfaccia UEFI per avviare il sistema (anziché BIOS), si deve marcare la partizione di avvio come Partizione di Sistema EFI (ESP). Parted lo fa automaticamente quando l'opzione boot viene impostata per questa partizione:

(parted)set 2 boot on

Il risultato finale somiglierà a questo:

(parted)print
Model: Virtio Block Device (virtblk)
Disk /dev/sda: 20480MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
  
Number   Start      End      Size     File system  Name   Flags
 1       1.00MiB    3.00MiB  2.00MiB               grub   bios_grub
 2       3.00MiB    131MiB   128MiB                boot   boot
 3       131MiB     643MiB   512MiB                swap
 4       643MiB     20479MiB 19836MiB              rootfs
Nota
Su un'installazione UEFI, i flag boot ed esp saranno mostrati sulla partizione di avvio.

Usare il comando quit per uscire da parted.

Alternativa: Uso di fdisk per partizionare il disco

Nota
Sebbene versioni aggiornate di fdisk dovrebbero supportare GPT, si sono riscontrati ancora dei problemi con esso. Le istruzioni sottostanti considerano che lo schema delle partizioni sia basato su MBR.

La seguente parte spiega come impostare le partizioni secondo l'esempio usando fdisk. Lo schema delle partizioni d'esempio menzionato prima:

Partizione Descrizione
/dev/sda1 Partizione di avvio BIOS
/dev/sda2 Partizione di avvio
/dev/sda3 Partizione di swap
/dev/sda4 Partizione radice (root)

Modificare lo schema di partizionamento in base alle proprie personali preferenze.

Visualizzare lo schema delle partizioni correnti con fdisk

fdisk è un famoso e potente strumento per dividere un disco in partizioni. Lanciare fdisk per il disco (nel nostro esempio usiamo /dev/sda):

root #fdisk /dev/sda
Nota
Per usare GPT, aggiungere -t gpt. È strettamente raccomandato leggere attentamente l'output di fdisk nel caso in cui recenti sviluppi per fdisk abbiamo modificato i suoi comportamenti predefiniti che prediligono MBR. Le rimanenti istruzioni considerano che si usi l'impostazione MBR.

Usare il tasto p per visualizzare l'attuale configurazione delle partizioni sul disco:

Command (m for help):p
Disk /dev/sda: 240 heads, 63 sectors, 2184 cylinders
Units = cylinders of 15120 * 512 bytes
  
   Device Boot    Start       End    Blocks   Id  System
/dev/sda1   *         1        14    105808+  83  Linux
/dev/sda2            15        49    264600   82  Linux swap
/dev/sda3            50        70    158760   83  Linux
/dev/sda4            71      2184  15981840    5  Extended
/dev/sda5            71       209   1050808+  83  Linux
/dev/sda6           210       348   1050808+  83  Linux
/dev/sda7           349       626   2101648+  83  Linux
/dev/sda8           627       904   2101648+  83  Linux
/dev/sda9           905      2184   9676768+  83  Linux

Questo particolare disco è stato configurato per ospitare 7 filesystem Linux (ciascuno con una corrispondente partizione elencata come "Linux") e una partizione di swap (indicata con "Linux swap").

Rimuovere tutte le partizioni con fdisk

Prima rimuovere tutte le partizioni esistenti dal disco. Digitare d per eliminare una partizione. Per esempio, per eliminare un'esistente /dev/sda1:

Command (m for help):d
Partition number (1-4): 1

La partizione è ora programmata per l'eliminazione. Non sarà più mostrata quando si richiede l'elenco delle partizioni (p), comunque non sarà effettivamente eliminata finché i cambiamenti non saranno salvati. Ciò permette agli utenti di annullare l'operazione se è stato commesso qualche errore - in tal caso, digitare subito q e premere Enter così la partizione non sarà eliminata.

Digitare nuovamente p per visualizzare un elenco delle partizioni e premere d seguito dal numero della partizione da eliminare. Alla fine, la tabella delle partizioni sarà vuota:

Command (m for help):p
Disk /dev/sda: 30.0 GB, 30005821440 bytes
240 heads, 63 sectors/track, 3876 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes
  
Device Boot    Start       End    Blocks   Id  System

Ora che la tabella delle partizioni risulta vuota, anche se solo nella memoria, siamo pronti per creare le nuove partizioni.

Creare la partizione di avvio BIOS

Per prima cosa si crei una piccola partizione di avvio per il BIOS. Digitare n per creare una nuova partizione, quindi p per selezionare una partizione primaria, seguito da 1 per selezionare la prima partizione primaria. Quando viene richiesto il settore di inizio, assicurarsi che inizi dal 2048 (necessario per il boot loader) e premere Enter. Quando viene richiesto il settore finale, digitare +2M per creare una partizione grande 2 MByte:

Nota
L'avvio dal settore 2048 è una misura di sicurezza nel caso il selettore di avvio non rilevi questa partizione come disponibile all'uso.
Command (m for help):n
Command action
  e   extended
  p   primary partition (1-4)
p
Partition number (1-4): 1
First sector (64-10486533532, default 64): 2048
Last sector, +sectors +size{M,K,G} (4096-10486533532, default 10486533532): +2M

Segnare la partizione per gli scopi di UEFI:

Command (m for help):t
Selected partition 1
Hex code (type L to list codes): 4
Changed system type of partition 1 to 4 (BIOS boot)
Nota
L'uso di UEFI con lo schema di partizioni MBR è scoraggiato. Se si usa un sistema che supporta UEFI, per favore si usi il partizionamento GPT.

Creare la partizione di avvio

Creare ora una piccola partizione di avvio. Digitare n per creare una nuova partizione, poi p per selezionare una partizione primaria, seguito da 2 per selezionare una seconda partizione primaria. Quando viene richiesto il settore di inizio, accettare quello predefinito premendo Enter. Quando viene richiesto il settore finale, digitare +128M per creare una partizione grande 128 MByte:

Command (m for help):n
Command action
  e   extended
  p   primary partition (1-4)
p
Partition number (1-4): 2
First sector (5198-10486533532, default 5198): (Hit enter)
Last sector, +sectors +size{M,K,G} (4096-10486533532, default 10486533532): +128M

Ora, quando si preme p, viene mostrato il seguente risultato di partizionamento:

Command (m for help):p
Disk /dev/sda: 30.0 GB, 30005821440 bytes
240 heads, 63 sectors/track, 3876 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes
  
   Device Boot    Start       End    Blocks   Id  System
/dev/sda1             1         3      5198+  ef  EFI (FAT-12/16/32)
/dev/sda2             3        14    105808+  83  Linux

Premere a per impostare il flag di avvio ad una partizione e scegliere 2. Dopo, premere ancora p, notare che un asterisco * verrà posto sulla colonna "Boot" (Avvio).

Creare la partizione di swap

Per creare una partizione di swap: digitare n per creare una nuova partizione, poi p per dire a fdisk di creare una partizione primaria. Digitare 3 per creare una terza partizione primaria, /dev/sda3. Quando viene richiesto il settore di inizio, premere Enter. Quando viene richiesto il settore finale, digitare +512M (o qualsiasi altra grandezza sia necessaria per lo spazio di swap) così da creare una partizione grande 512 MB.

Fatto tutto questo, digitare t per impostare il tipo di partizione, 3 per selezionare la partizione appena creata e poi digitare 82 per impostare il tipo di partizione "Linux Swap".

Creare la partizione radice

Infine, per creare la partizione radice (root), digitare n per creare una nuova partizione, quindi p per indicare a fdisk di creare una partizione primaria. Poi digitare 4 per creare la quarta partizione primaria, /dev/sda4. Quando viene richiesto il settore di inizio, premere Enter. Quando viene richiesto il settore finale, premere Enter per creare una partizione che occupi il rimanente spazio su disco. Dopo aver completato questi passaggi, digitando p si dovrebbe vedere una tabella delle partizioni simile a questa:

Command (m for help):p
Disk /dev/sda: 30.0 GB, 30005821440 bytes
240 heads, 63 sectors/track, 3876 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes
  
   Device Boot    Start       End    Blocks   Id  System
/dev/sda1             1         3      5198+  ef  EFI (FAT-12/16/32)
/dev/sda2   *         3        14    105808+  83  Linux
/dev/sda3            15        81    506520   82  Linux swap
/dev/sda4            82      3876  28690200   83  Linux

Salvare lo schema delle partizioni

Per salvare la configurazione delle partizioni e uscire da fdisk, premere w.

Command (m for help):w

Ora che le partizioni sono state create, si deve procedere alla creazione di un filesystem su ciascuna di esse.


Creazione dei file system

Introduzione

Una volta create le partizioni, è ora di inserirci un filesystem. Nella sezione successiva vengono descritti i file system supportati da Linux. I lettori che sanno già quale filesystem usare possono continuare con la sezione Applicare un filesystem ad una partizione. Gli altri lettori dovrebbero continuare a leggere per comprendere meglio i filesystem disponibili...

Filesystem

Sono disponibili numerosi filesystem. Alcuni di essi sono ritenuti stabili sull'architettura amd64 - è consigliabile informarsi sui filesystem e sul loro supporto, prima di selezionarne uno più sperimentale da usare su partizioni importanti.

btrfs
È un filesystem di nuova generazione che fornisce molte caratteristiche avanzate, come la possibilità di creare istantanee, l'auto-riparazione tramite checksum, la compressione trasparente, i sottovolumi e il RAID integrato. Alcune distribuzioni hanno iniziato ad offrirlo come opzione standard, ma non è pronto per la produzione. Sono frequenti i rapporti di corruzione del filesystem. I suoi sviluppatori spingono la gente ad utilizzare la versione più recente del kernel, perché quelle più vecchie è noto che causino problemi. Così è stato per anni ed è troppo presto per dire se le cose sono cambiate. Le correzioni dei problemi di corruzione raramente vengono trasferite sui kernel più vecchi. Si proceda con cautela quando si utilizza questo filesystem!
ext2
È l'effettivo e collaudato filesystem di Linux, ma non ha il journaling dei metadati, il ché significa che i controlli di routine del filesystem ext2 effettuati all'avvio possono richiedere molto tempo. Ormai esiste una scelta piuttosto ampia di filesystem con journaling, la cui consistenza può essere controllata molto velocemente e sono infatti generalmente preferiti rispetto alle controparti senza journaling. I filesystem con journaling prevengono lunghi ritardi qualora il sistema si avvii con il filesystem in uno stato inconsistente (errori di coerenza).
ext3
È la versione con journaling del filesystem ext2, che fornisce il journaling dei metadati per un ripristino veloce in aggiunta ad altre modalità migliorate di journaling come quello a dati completi e a dati ordinati. Usa un indice HTree che permette alte prestazioni in quasi tutte le situazioni. In breve, ext3 è un filesystem molto buono e affidabile.
ext4
Inizialmente creato come un derivato di ext3, ext4 porta nuove caratteristiche, miglioramenti delle prestazioni e rimozione dei limiti delle dimensioni con lievi modifiche al formato su disco. Può ospitare volumi fino a 1 EB e con una dimensione massima dei file di 16 TB. Invece della classica allocazione a blocchi bitmap di ext2-3, ext4 utilizza le estensioni, che migliorano le prestazioni con file grandi e riducono la frammentazione. Ext4 fornisce anche algoritmi di allocazione dei blocchi più sofisticati (allocazione ritardata e multiblocco) dando ai driver del filesystem più modi per ottimizzare la distribuzione dei dati su disco. Ext4 è il filesystem raccomandato per tutti gli utilizzi e per tutte le piattaforme.
f2fs
Il Flash-Friendly File System fu originariamente creato da Samsung per essere usato con la memoria flash NAND. Nel secondo quadrimestre del 2016, questo filesystem era considerato ancora immaturo, ma è una scelta decente quando si installa Gentoo su microSD, dischi USB, o altri dispositivi di memoria basati su flash.
JFS
È il filesystem ad alte prestazioni di IBM. JFS è un filesystem leggero, veloce e affidabile basato su B+tree con buone prestazioni in varie condizioni.
ReiserFS
È un filesystem con journaling basato su B+tree che ha delle buone prestazioni complessive, specialmente quando si ha a che fare con molti piccoli file al costo di più cicli di CPU. ReiserFS sembra essere meno mantenuto rispetto ad altri filesystem.
XFS
È un filesystem con journaling dei metadati che fornisce un robusto insieme di caratteristiche ed è ottimizzato per la scalabilità. XFS sembra essere meno indulgente in caso di vari problemi hardware.
vfat
Anche conosciuto come FAT32, è supportato da Linux ma non supporta alcuna configurazione dei permessi. È principalmente usato per interoperabilità con altri sistemi operativi (principalmente Microsoft Windows) ma è anche una necessità per alcuni firmware di sistema (come UEFI).
NTFS
Il filesystem "New Technology" è quello principale su Microsoft Windows. Analogamente a vfat, non memorizza le impostazioni dei permessi o gli attributi estesi necessari ai sistemi BSD o Linux affinché funzionino correttamente, di conseguenza non può essere usato come filesystem radice (root). Dovrebbe essere usato solamente per l'interoperabilità con i sistemi Microsoft Windows (si noti l'enfasi su solamente).

Quando si usa ext2, ext3 o ext4 su una piccola partizione (minore di 8GB), allora il filesystem deve essere creato con le opzioni appropriate per riservare abbastanza inode. L'applicazione mke2fs mkfs.ext2 usa l'impostazione "bytes-per-inode" per calcolare quanti inode dovrebbe avere un filesystem. Su partizioni più piccole, è consigliato aumentare il numero di inode calcolati.

Su ext2, ciò può essere fatto usando il seguente comando:

root #mkfs.ext2 -T small /dev/<dispositivo>

Su ext3 ed ext4, aggiungere l'opzione -j per abilitare il journaling:

root #mkfs.ext2 -j -T small /dev/<dispositivo>

Questa scelta generalmente quadruplica il numero di inode per un certo filesystem poiché i suoi "bytes-per-inode" anziché uno ogni 16kB diventano uno ogni 4kB. Ciò può essere ulteriormente modificato specificando la proporzione:

root #mkfs.ext2 -i <proporzione> /dev/<dispositivo>

Applicare un filesystem ad una partizione

Per creare un filesystem su una partizione o su un volume, ci sono strumenti avviabili dallo spazio utente per ogni possibile filesystem. Cliccare sul nome del filesystem nella tabella sottostante per informazioni aggiuntive su ciascun filesystem:

Filesystem Comando di creazione Sul CD minimale? Pacchetto
btrfs mkfs.btrfs sys-fs/btrfs-progs
ext2 mkfs.ext2 sys-fs/e2fsprogs
ext3 mkfs.ext3 sys-fs/e2fsprogs
ext4 mkfs.ext4 sys-fs/e2fsprogs
f2fs mkfs.f2fs sys-fs/f2fs-tools
jfs mkfs.jfs sys-fs/jfsutils
reiserfs mkfs.reiserfs sys-fs/reiserfsprogs
xfs mkfs.xfs sys-fs/xfsprogs
vfat mkfs.vfat sys-fs/dosfstools
NTFS mkfs.ntfs sys-fs/ntfs3g

Per esempio, per avere la partizione boot (/dev/sda2) in ext2 e la partizione root (/dev/sda4) in ext4 come nello schema delle partizioni d'esempio, si devono usare i seguenti comandi:

root #mkfs.ext2 /dev/sda2
root #mkfs.ext4 /dev/sda4

Ora si devono creare i filesystem sulle partizioni o i volumi logici appena creati.

Attivazione della partizione di swap

mkswap è il comando che viene usato per inizializzare la partizione di swap:

root #mkswap /dev/sda3

Per attivare la partizione di swap, usare swapon:

root #swapon /dev/sda3

Creare ed attivare lo swap con i comandi sopra menzionati.

Montaggio della partizione di root

Ora che le partizioni sono inizializzate ed ospitano un filesystem, è tempo di montare quelle partizioni. Usare il comando mount, ma non dimenticarsi di creare le directory (cartelle) di montaggio necessarie su cui montare ogni partizione creata. Nell'esempio è riportato come montare la partizione di root:

root #mount /dev/sda4 /mnt/gentoo
Nota
Se è necessario che /tmp/ risieda su una partizione separata, assicurarsi di cambiare i suoi permessi dopo averla montata:
root #chmod 1777 /mnt/gentoo/tmp
Ciò è valido anche per /var/tmp.

Più avanti nel manuale, il filesystem proc (un'interfaccia virtuale fornita dal kernel) ed altri pseudo-filesystem del kernel verranno montati. Però prima è necessario Installare i file di installazione di Gentoo.