Documentation for a newer release is available. View Latest

Introduzione alle partizioni dei dischi

This appendix is not necessarily applicable to architectures other than AMD64, Intel 64, and Arm SystemReady. However, the general concepts mentioned here may apply.

In questa sezione vengono illustrati i concetti di base relativi ai dischi, le strategie di ripartizionamento, lo schema di denominazione delle partizioni utilizzato dai sistemi Linux e altri argomenti correlati.

If you are comfortable with disk partitions, you can skip ahead to Strategies for Disk Repartitioning for more information on the process of freeing up disk space to prepare for a Fedora installation.

Concetti di base sui dischi rigidi

I dischi rigidi svolgono una funzione molto semplice: memorizzano i dati e li recuperano in modo affidabile a richiesta.

Quando si trattano argomenti come il partizionamento dei dischi, è importante avere una comprensione dell’hardware sottostante; tuttavia, poiché la teoria è molto complicata e vasta, qui verranno spiegati solo i concetti di base. Questa appendice utilizza una serie di diagrammi semplificati di un’unità disco per spiegare il processo e la teoria alla base delle partizioni.

An Unused Disk Drive, shows a brand-new, unused disk drive.

Immagine di un’unità disco non utilizzata.
Figure 1. Un’unità disco non utilizzata

File system

To store data on a disk drive, it is necessary to format the disk drive first. Formatting (usually known as “making a file system”) writes information to the drive, creating order out of the empty space in an unformatted drive.

Immagine di un’unità disco formattata.
Figure 2. Unità disco con un file system

As Disk Drive with a File System, implies, the order imposed by a file system involves some trade-offs:

  • Una piccola percentuale dello spazio disponibile dell’unità viene utilizzata per memorizzare i dati relativi al file system e può essere considerata come overhead.

  • A file system splits the remaining space into small, consistently-sized segments. For Linux, these segments are known as blocks [1].

Note that there is no single, universal file system. As Disk Drive with a Different File System, shows, a disk drive may have one of many different file systems written on it. Different file systems tend to be incompatible; that is, an operating system that supports one file system (or a handful of related file system types) may not support another. However, Fedora supports a wide variety of file systems (including many commonly used by other operating systems such as Microsoft Windows), making data interchange between different file systems easy.

Immagine di un’unità disco con un file system differente.
Figure 3. Unità disco con un file system differente

La scrittura di un file system sul disco è solo il primo passo. L’obiettivo di questo processo è effettivamente memorizzare e recuperare i dati. La figura seguente mostra l’unità disco dopo che alcuni dati sono stati scritti su di essa:

Immagine di un’unità disco con dati scritti su di essa.
Figure 4. Unità disco con dati scritti su di essa

As Disk Drive with Data Written to It, shows, some of the previously-empty blocks are now holding data. However, by just looking at this picture, we cannot determine exactly how many files reside on this drive. There may only be one file or many, as all files use at least one block and some files use multiple blocks. Another important point to note is that the used blocks do not have to form a contiguous region; used and unused blocks may be interspersed. This is known as fragmentation. Fragmentation can play a part when attempting to resize an existing partition.

Come per la maggior parte delle tecnologie informatiche, le unità disco si sono evolute nel tempo dopo la loro introduzione. In particolare, sono aumentate di dimensioni. Non in termini di dimensioni fisiche, ma in termini di capacità di memorizzare informazioni. E questa capacità aggiuntiva ha determinato un cambiamento fondamentale nel modo in cui le unità disco venivano utilizzate.

Partizioni: trasformare un’unità in molte

Le unità disco possono essere suddivise in partizioni. Ogni partizione è accessibile come se fosse un disco separato. Questo viene fatto tramite l’aggiunta di una tabella delle partizioni.

Ci sono diverse ragioni per suddividere lo spazio su disco in partizioni separate, ad esempio:

  • Separazione logica dei dati del sistema operativo dai dati utente

  • Possibilità di utilizzare file system diversi

  • Possibilità di eseguire più sistemi operativi su un singolo computer

There are currently two partitioning layout standards for physical hard disks: Master Boot Record (MBR) and GUID Partition Table (GPT). MBR is an older method of disk partitioning used with BIOS-based computers. GPT is a newer partitioning layout that is a part of the Unified Extensible Firmware Interface (UEFI). This section and Partitions Within Partitions - An Overview of Extended Partitions mainly describe the Master Boot Record (MBR) disk partitioning scheme. For information about the GUID Partition Table (GPT) partitioning layout, see GUID Partition Table (GPT).

Sebbene i diagrammi in questo capitolo mostrino la tabella delle partizioni come separata dall’unità disco fisica, questo non è del tutto preciso. In realtà, la tabella delle partizioni è memorizzata proprio all’inizio del disco, prima di qualsiasi file system o dato utente. Tuttavia, per chiarezza, sono rappresentati separatamente nei nostri diagrammi.

Immagine di un’unità disco non utilizzata con una tabella delle partizioni.
Figure 5. Unità disco con tabella delle partizioni

As Disk Drive with Partition Table shows, the partition table is divided into four sections or four primary partitions. A primary partition is a partition on a hard drive that can contain only one logical drive (or section). Each section can hold the information necessary to define a single partition, meaning that the partition table can define no more than four partitions.

Ogni voce della tabella delle partizioni contiene diverse caratteristiche importanti della partizione:

  • I punti sul disco in cui la partizione inizia e finisce

  • Whether the partition is “active”

  • Il tipo della partizione

The starting and ending points define the partition’s size and location on the disk. The “active” flag is used by some operating systems’ boot loaders. In other words, the operating system in the partition that is marked “active” is booted.

Il tipo è un numero che identifica l’utilizzo previsto della partizione. Alcuni sistemi operativi utilizzano il tipo di partizione per indicare un tipo specifico di file system, per contrassegnare la partizione come associata a un particolare sistema operativo, per indicare che la partizione contiene un sistema operativo avviabile o una combinazione di questi tre elementi.

See Disk Drive With Single Partition for an example of a disk drive with single partition.

Immagine di un’unità disco con una singola partizione.
Figure 6. Unità disco con singola partizione

La singola partizione in questo esempio è identificata come DOS. Questa etichetta mostra il tipo di partizione, essendo DOS uno dei più comuni. La tabella seguente mostra un elenco di alcuni dei tipi di partizione comunemente utilizzati e i numeri esadecimali usati per rappresentarli.

Table 1. Tipi di partizione
Tipo di partizione Valore Tipo di partizione Valore

Vuota

00

Novell Netware 386

65

DOS 12-bit FAT

01

PIC/IX

75

XENIX root

02

Old MINIX

80

XENIX usr

03

Linux/MINUX

81

DOS 16-bit ⇐32M

04

Swap Linux

82

Estesa

05

Nativa Linux

83

DOS 16-bit >=32

06

Estesa Linux

85

OS/2 HPFS

07

Amoeba

93

AIX

08

Amoeba BBT

94

AIX bootable

09

BSD/386

a5

OS/2 Boot Manager

0a

OpenBSD

a6

Win95 FAT32

0b

NEXTSTEP

a7

Win95 FAT32 (LBA)

0c

BSDI fs

b7

Win95 FAT16 (LBA)

0e

BSDI swap

b8

Win95 Extended (LBA)

0f

Syrinx

c7

Venix 80286

40

CP/M

db

Novell

51

DOS access

e1

PReP Boot

41

DOS R/O

e3

GNU HURD

63

DOS secondary

f2

Novell Netware 286

64

BBT

ff

Partizioni all’interno di partizioni - Una panoramica delle partizioni estese

In case four partitions are insufficient for your needs, you can use extended partitions to create up additional partitions. You do this by setting the type of a partition to “Extended”.

An extended partition is like a disk drive in its own right - it has its own partition table which points to one or more partitions (now called logical partitions, as opposed to the four primary partitions) contained entirely within the extended partition itself. Disk Drive With Extended Partition, shows a disk drive with one primary partition and one extended partition containing two logical partitions (along with some unpartitioned free space).

Immagine di un’unità disco con una partizione estesa.
Figure 7. Unità disco con partizione estesa

Come suggerisce questa figura, c’è una differenza tra partizioni primarie e logiche: possono esserci solo quattro partizioni primarie, ma non esiste un limite fisso al numero di partizioni logiche che possono esistere. Tuttavia, a causa del modo in cui si accede alle partizioni in Linux, non si dovrebbero definire più di 12 partizioni logiche su una singola unità disco.

GUID Partition Table (GPT)

GUID Partition Table (GPT) è uno schema di partizionamento più recente basato sull’uso di Identificatori Univoci Globali (GUID). GPT è stato sviluppato per superare le limitazioni della tabella delle partizioni MBR, specialmente riguardo al limitato spazio massimo di archiviazione indirizzabile di un disco. A differenza di MBR, che non è in grado di indirizzare spazio di archiviazione superiore a 2,2 terabyte, GPT può essere utilizzato con dischi rigidi di dimensioni maggiori; la dimensione massima del disco indirizzabile è di 2,2 zettabyte. Inoltre, GPT per impostazione predefinita supporta la creazione fino a 128 partizioni primarie. Questo numero può essere esteso allocando più spazio alla tabella delle partizioni.

I dischi GPT utilizzano l’indirizzamento logico a blocchi (LBA) e il layout delle partizioni è il seguente:

  • To preserve backward compatibility with MBR disks, the first sector (LBA 0) of GPT is reserved for MBR data and it is called “protective MBR”.

  • L'intestazione GPT primaria inizia sul secondo blocco logico (LBA 1) del dispositivo. L’intestazione contiene il GUID del disco, la posizione della tabella delle partizioni primaria, la posizione dell’intestazione GPT secondaria e i checksum CRC32 di sé stessa e della tabella delle partizioni primaria. Specifica inoltre il numero di elementi della tabella delle partizioni.

  • La tabella GPT primaria include, per impostazione predefinita, 128 elementi di partizione, ciascuno con una dimensione di 128 byte, il GUID del tipo di partizione e il GUID univoco della partizione.

  • La tabella GPT secondaria è identica alla tabella GPT primaria. Viene utilizzata principalmente come tabella di backup per il ripristino nel caso in cui la tabella delle partizioni primaria sia danneggiata.

  • L'intestazione GPT secondaria si trova sull’ultimo settore logico del disco e può essere utilizzata per ripristinare le informazioni GPT nel caso in cui l’intestazione primaria sia danneggiata. Contiene il GUID del disco, la posizione della tabella delle partizioni secondaria e dell’intestazione GPT primaria, i checksum CRC32 di sé stessa e della tabella delle partizioni secondaria, e il numero di possibili elementi di partizione.

Deve essere presente una partizione di avvio BIOS per installare correttamente il boot loader su un disco che utilizza GPT (GUID Partition Table). Ciò include i dischi inizializzati da Anaconda. Se il disco contiene già una partizione di avvio BIOS, questa può essere riutilizzata.

Strategie per il ripartizionamento del disco

Esistono diversi modi in cui un disco può essere ripartizionato. Questa sezione illustra i seguenti possibili approcci:

  • È disponibile spazio libero non partizionato

  • È disponibile una partizione non utilizzata

  • È disponibile spazio libero in una partizione in uso attivo

Si noti che questa sezione tratta i concetti precedentemente menzionati solo a livello teorico e non include procedure dettagliate che mostrino come eseguire il ripartizionamento del disco passo dopo passo. Informazioni così dettagliate esulano dallo scopo di questo documento.

Si tenga presente che le seguenti illustrazioni sono semplificate per motivi di chiarezza e non rispecchiano l’esatto layout delle partizioni che si incontra durante l’installazione effettiva di Fedora.

Utilizzo dello spazio libero non partizionato

In this situation, the partitions already defined do not span the entire hard disk, leaving unallocated space that is not part of any defined partition. Disk Drive with Unpartitioned Free Space, shows what this might look like.

Immagine di un’unità disco con spazio libero non partizionato
Figure 8. Unità disco con spazio libero non partizionato

Nell’esempio precedente, 1 rappresenta lo spazio non partizionato (non allocato) e 2 rappresenta una partizione definita (spazio allocato).

Anche un disco rigido non utilizzato rientra in questa categoria. L’unica differenza è che tutto lo spazio non fa parte di alcuna partizione definita.

In any case, you can create the necessary partitions from the unused space. Unfortunately, this scenario, although very simple, is not very likely (unless you have just purchased a new disk just for Fedora). Most pre-installed operating systems are configured to take up all available space on a disk drive (see Using Free Space from an Active Partition).

Utilizzo dello spazio da una partizione non utilizzata

In this case, maybe you have one or more partitions that you do not use any longer. Disk Drive with an Unused Partition, illustrates such a situation.

Immagine di un’unità disco con una partizione non utilizzata
Figure 9. Unità disco con una partizione non utilizzata

Nell’esempio precedente, 1 rappresenta una partizione non utilizzata e 2 rappresenta la riallocazione della partizione non utilizzata per Linux.

In questa situazione, è possibile utilizzare lo spazio allocato alla partizione non utilizzata. È necessario prima eliminare la partizione e poi creare le partizioni Linux appropriate al suo posto. È possibile eliminare la partizione non utilizzata e creare manualmente nuove partizioni durante il processo di installazione.

Utilizzo dello spazio libero da una partizione attiva

Questa è la situazione più comune. È anche, purtroppo, la più difficile da gestire. Il problema principale è che, anche se si ha abbastanza spazio libero, questo è attualmente allocato a una partizione già in uso. Se si è acquistato un computer con software preinstallato, il disco rigido molto probabilmente ha un’unica grande partizione che contiene il sistema operativo e i dati.

Oltre ad aggiungere un nuovo disco rigido al proprio sistema, si hanno due opzioni:

Ripartizionamento distruttivo

In questo caso, l’unica grande partizione viene eliminata e al suo posto vengono create diverse partizioni più piccole. Tutti i dati contenuti nella partizione originale vengono distrutti. Ciò significa che è necessario eseguire un backup completo. Si raccomanda vivamente di eseguire due backup, utilizzare la verifica (se disponibile nel proprio software di backup) e tentare di leggere i dati dal backup prima di eliminare la partizione.

Se un sistema operativo era installato su quella partizione, deve essere reinstallato se si desidera utilizzare anche quel sistema. Si tenga presente che alcuni computer venduti con sistemi operativi preinstallati potrebbero non includere i supporti di installazione per reinstallare il sistema operativo originale. È opportuno verificare se ciò si applica al proprio sistema prima di distruggere la propria partizione originale e la relativa installazione del sistema operativo.

After creating a smaller partition for your existing operating system, you can reinstall software, restore your data, and start the installation. Disk Drive Being Destructively Repartitioned shows this being done.

Immagine di un’unità disco in fase di ripartizionamento distruttivo
Figure 10. Unità disco in fase di ripartizionamento distruttivo

Nell’esempio precedente, 1 rappresenta 'prima' e 2 rappresenta 'dopo'.

Tutti i dati precedentemente presenti nella partizione originale vengono persi.

Ripartizionamento non distruttivo

Con il ripartizionamento non distruttivo si esegue un programma che riduce le dimensioni di una grande partizione senza perdere i file memorizzati in essa. Questo metodo è generalmente affidabile, ma può richiedere molto tempo su unità di grandi dimensioni.

Sebbene il processo di ripartizionamento non distruttivo sia piuttosto semplice, comprende tre fasi:

  1. Comprimere ed eseguire il backup dei dati esistenti

  2. Ridimensionare la partizione esistente

  3. Creare la/le nuova/e partizione/i

Ogni fase è descritta più in dettaglio di seguito.

Compress Existing Data

As the following figure shows, the first step is to compress the data in your existing partition. The reason for doing this is to rearrange the data such that it maximizes the available free space at the “end” of the partition.

Immagine di un’unità disco in fase di compressione
Figure 11. Unità disco in fase di compressione

Nell’esempio precedente, 1 rappresenta 'prima' e 2 rappresenta 'dopo'.

Questa fase è cruciale. Senza di essa, la posizione dei dati potrebbe impedire il ridimensionamento della partizione nella misura desiderata. Si noti inoltre che, per un motivo o per l’altro, alcuni dati non possono essere spostati. Se questo fosse il caso (e ciò limitasse gravemente la dimensione della/e nuova/e partizione/i), si potrebbe essere costretti a eseguire un ripartizionamento distruttivo del disco.

Resize the Existing Partition

Disk Drive with Partition Resized shows the actual resizing process. While the actual result of the resizing operation varies depending on the software used, in most cases the newly freed space is used to create an unformatted partition of the same type as the original partition.

Immagine di un’unità disco con una partizione ridimensionata
Figure 12. Unità disco con partizione ridimensionata

Nell’esempio precedente, 1 rappresenta 'prima' e 2 rappresenta 'dopo'.

È importante capire cosa fa il software di ridimensionamento utilizzato dello spazio appena liberato, in modo da poter intraprendere le azioni appropriate. Nel caso illustrato qui, sarebbe preferibile eliminare la nuova partizione DOS e creare le partizioni Linux appropriate.

Creare la/le nuova/e partizione/i

As the previous step implied, it may or may not be necessary to create new partitions. However, unless your resizing software is Linux-aware, it is likely that you must delete the partition that was created during the resizing process. Disk Drive with Final Partition Configuration, shows this being done.

Immagine di un’unità disco con la configurazione finale delle partizioni
Figure 13. Unità disco con la configurazione finale delle partizioni

Nell’esempio precedente, 1 rappresenta 'prima' e 2 rappresenta 'dopo'.

Schemi di denominazione delle partizioni e punti di mount

A common source of confusion for users unfamiliar with Linux is the matter of how partitions are used and accessed by the Linux operating system. In DOS/Windows, it is relatively simple: Each partition gets a “drive letter.” You then use the correct drive letter to refer to files and directories on its corresponding partition. This is entirely different from how Linux deals with partitions and, for that matter, with disk storage in general. This section describes the main principles of partition naming scheme and the way how partitions are accessed in Fedora.

Schema di denominazione delle partizioni

Linux utilizza uno schema di denominazione basato su file, con nomi file nel formato /dev/xxyN.

I nomi dei dispositivi e delle partizioni sono composti da quanto segue:

/dev/

Questo è il nome della directory in cui si trovano tutti i file di dispositivo. Poiché le partizioni si trovano sui dischi rigidi e i dischi rigidi sono dispositivi, i file che rappresentano tutte le possibili partizioni si trovano in /dev/.

xx

Le prime due lettere del nome della partizione indicano il tipo di dispositivo su cui si trova la partizione, generalmente sd.

y

Questa lettera indica su quale dispositivo si trova la partizione. Ad esempio, /dev/sda per il primo disco rigido, /dev/sdb per il secondo e così via.

N

Il numero finale indica la partizione. Le prime quattro partizioni (primarie o estese) sono numerate da 1 a 4. Le partizioni logiche iniziano da 5. Così, ad esempio, /dev/sda3 è la terza partizione primaria o estesa sul primo disco rigido e /dev/sdb6 è la seconda partizione logica sul secondo disco rigido.

Anche se il sistema è in grado di identificare e fare riferimento a tutti i tipi di partizioni del disco, potrebbe non essere in grado di leggere il file system e quindi accedere ai dati memorizzati su ogni tipo di partizione. Tuttavia, in molti casi, è possibile accedere correttamente ai dati su una partizione dedicata a un altro sistema operativo.

Partizioni del disco e punti di mount

Ogni partizione viene utilizzata per costituire parte dello spazio di archiviazione necessario per supportare un unico insieme di file e directory. Questo viene fatto associando una partizione a una directory tramite un processo noto come montaggio (mounting). Il montaggio di una partizione rende disponibile il suo spazio di archiviazione a partire dalla directory specificata (nota come punto di mount).

Ad esempio, se la partizione /dev/sda5 viene montata su /usr/, ciò significa che tutti i file e le directory sotto /usr/ risiedono fisicamente su /dev/sda5. Quindi il file /usr/share/doc/FAQ/txt/Linux-FAQ verrebbe memorizzato su /dev/sda5, mentre il file /etc/gdm/custom.conf no.

Continuando l’esempio, è anche possibile che una o più directory sotto /usr/ siano punti di mount per altre partizioni. Ad esempio, una partizione (diciamo, /dev/sda7) potrebbe essere montata su /usr/local/, il che significa che /usr/local/man/whatis si troverebbe quindi su /dev/sda7 invece che su /dev/sda5.

Quante partizioni?

A questo punto del processo di preparazione all’installazione di Fedora, si dovrebbe considerare il numero e la dimensione delle partizioni da utilizzare per il nuovo sistema operativo. Tuttavia, non esiste un’unica risposta corretta a questa domanda. Dipende dalle proprie esigenze e requisiti.

Unless you have a reason for doing otherwise, you should at least create a /boot partition and a / (root) partition. Depending on your system’s hardware specifications, additional partitions may be necessary, such as /boot/efi for 64-bit AMD, Intel and Arm systems with UEFI firmware, a biosboot partition for AMD and Intel systems with a GUID Partition Table (GPT) label on the system disk, or a PReP Boot partition on IBM Power Systems servers.

See Recommended Partitioning Scheme for more information about the recommended partitioning scheme.


1. Blocks really are consistently sized, unlike our illustrations. Keep in mind, also, that an average disk drive contains thousands of blocks. The picture is simplified for the purposes of this discussion.