In Linux, le unità di archiviazione e le rispettive partizioni sono denominate seguendo una convenzione standard che prevede alcune difformità a seconda del tipo di supporto e dell’interfaccia (ad esempio IDE, SCSI, SATA, NVMe). L’utilità Gestione disco di Windows (accessibile premendo Windows+X
quindi scegliendo Gestione disco) offre uno strumento grafico semplice e accessibile per la gestione delle unità di memorizzazione. Tuttavia, rispetto alle principali utilità Linux, ha un numero inferiore di possibilità di gestione delle unità. Per dirne una, il ridimensionamento può coinvolgere soltanto unità che si succedono l’una dopo l’altra nella struttura del supporto. Chi avesse esigenze un po’ più articolate, ha di fatto le mani legate.
Linux segue una filosofia di progettazione che enfatizza la flessibilità e il controllo, con un approccio adatto agli utenti avanzati e agli amministratori di sistema che necessitano di opzioni più granulari e potenti.
L’utilità Gestione disco di Windows fornisce funzioni di base come la creazione e l’eliminazione di partizioni, l’assegnazione delle lettere di unità, la formattazione e l’espansione/riduzione delle partizioni consequenziali. Strumenti più avanzati come diskpart (basato sulla riga di comando) offrono alcune possibilità aggiuntive, ma rimangono comunque limitati rispetto all’offerta disponibile su Linux. Abbiamo visto ad esempio come usare diskpart per formattare una chiavetta USB e cancellare i dati definitivamente.
La diversa denominazione assegnata alle unità e alle partizioni in Linux
Gli utenti Windows sono abituati a vedere assegnata una lettera identificativa a ciascuna unità formattata con un file system direttamente supportato dal sistema operativo Microsoft (o tramite l’aggiunta di appositi driver per l’accesso al contenuto delle partizioni Linux e macOS).
Le unità di memorizzazione connesse tramite interfacce IDE, SATA o SCSI sono generalmente identificate con prefissi come sd
seguiti da una lettera. Ad esempio:
sda
(prima unità)sdb
(seconda unità)sdc
(terza unità)
L’assegnazione degli identificativi letterali dipende dall’ordine di rilevamento dei dischi da parte del sistema.
I nomi delle partizioni su Linux
Le partizioni sono a loro volta identificate aggiungendo un numero alla denominazione del disco. Ad esempio:
sda1
(prima partizione nella prima unità)sda2
(seconda partizione nella prima unità)sdb1
(prima partizione nella seconda unità)
Le partizioni primarie e quelle estese sono numerate da 1 a 4; le partizioni logiche iniziano dalla numero 5 in avanti (ad esempio, sda5
). Le partizioni principali, direttamente create sulla tabella delle partizioni del disco, si chiamano partizioni primarie e sono essenziali per l’installazione e l’avvio di qualunque sistema operativo.
Una partizione estesa è una speciale partizione primaria che funge da contenitore per ulteriori partizioni, chiamate partizioni logiche. Queste ultime sono sfruttate per memorizzare dati, applicazioni e anche sistemi operativi, ma non possono essere contrassegnate come direttamente avviabili. Va detto, comunque, che alcuni bootloader sono in grado di avviare un sistema operativo da una partizione logica.
L’assegnazione dei nomi con le unità NVMe
I supporti di memorizzazione di tipo NVMe, utilizzati nel caso degli SSD PCIe ad alte prestazioni, hanno un prefisso nvme
seguito da un numero che rappresenta l’unità corrispondente. Ad esempio:
nvme0n1
(prima unità NVMe)nvme1n1
(seconda unità NVMe)
Le partizioni sulle unità NVMe sono identificate aggiungendo p
seguito dal numero della partizione. Ad esempio:
nvme0n1p1
(prima partizione della prima unità NVMe)nvme0n1p2
(seconda partizione della prima unità NVMe)
Le unità esterne di tipo USB e altri dispositivi di archiviazione rimovibili sono denominati usando lo stesso criterio scelto per le unità SATA/SCSI, utilizzando il prefisso sd
. I dispositivi RAID sono generalmente riconoscibili per la presenza del prefisso md
seguito da un numero, ad esempio md0
.
Come visualizzare unità e partizioni in Linux
Le distribuzioni GNU/Linux abbondano di strumenti basati su riga di comando che permettono di verificare le unità e le partizioni presenti nel sistema. Qualche esempio:
sudo fdisk -l
: elenca tutte le partizioni di tutti i dischi.lsblk
: mostra una panoramica gerarchica dei dispositivi.blkid
: elenca UUID e etichette dei file system sui dispositivi.
Questi strumenti aiutano a identificare le unità e le partizioni presenti nel sistema. Tuttavia, ad esempio, sia fdisk -l
che lsblk
, generalmente mostrano una sfilza di riferimenti loop0, loop1, loop2, e così via. Si riferiscono ai cosiddetti dispositivi di loopback ovvero pseudo-dispositivi che rendono accessibili delle risorse disponibili a livello di file system così come se fossero dispositivi di memorizzazione tradizionali.
I dispositivi di loopback sono comunemente utilizzati per montare immagini di file system (ad esempio file ISO, immagini di dischi virtuali e così via) senza doverle scrivere su un supporto fisico, per creare file system da usare per finalità di testing o per altre operazioni, senza richiedere l’uso di una partizione fisica. Ancora, sono utili a montare file system crittografati contenuti in un file.
Per ottenere una serie di informazioni aggiuntive, è possibile usare il comando lsblk -f
: elenca le informazioni sui dispositivi a blocchi e sui loro file system in un formato dettagliato. L’output include le seguenti colonne:
- NAME: Nome del dispositivo a blocchi, ad esempio sda, sda1, sdb, ecc.
- FSTYPE: Tipo di file system presente sulla partizione, ad esempio ext4, vfat, ntfs, e via dicendo.
- LABEL: Etichetta del file system, se presente. La descrizione leggibile assegnata alla partizione.
- UUID: Universally Unique Identifier, un identificatore univoco per il file system.
- FSAVAIL: Spazio disponibile sulla singola partizione.
- FSUSE%: Percentuale di spazio utilizzato.
- MOUNTPOINT: Punto di mont dove il file system è attualmente montato.
In cosa differisce blkid rispetto agli altri comandi
Il comando blkid
è uno strumento specifico utilizzato in Linux per identificare dispositivi a blocchi e ottenere informazioni dettagliate su di essi. A differenza di altri comandi come lsblk
o fdisk
, visti in precedenza, blkid
si concentra principalmente sulla visualizzazione degli identificativi univoci e degli attributi dei file system.
Una breve disamina delle informazioni restituite dal comando blkid
:
- UUID (Universally Unique Identifier)
- LABEL (Etichetta del file system)
- TYPE (Tipo di file system)
- PARTUUID (Partition UUID)
- PARTLABEL (Partition label)
Uno dei comandi più completi: hwinfo
hwinfo è un comando disponibile nei sistemi operativi Linux che fornisce informazioni dettagliate sull’hardware del sistema. È particolarmente utile per ottenere una panoramica approfondita delle componenti hardware, senza alcuna necessità di aprire fisicamente il computer. Quando invocato usando l’istruzione hwinfo --disk
, l’opzione fornisce dettagli specifici sui dispositivi di archiviazione connessi con il sistema.
Il comando hwinfo --disk
restituisce il nome e il tipo di ciascun dispositivo di storage, la marca e modello del disco, il numero di serie, capacità e dimensioni, spazio utilizzabile oltre a una serie di parametri tecnici come la velocità di rotazione dei piatti (nel caso degli hard disk), le informazioni sulla cache, lo stato SMART (Self-Monitoring, Analysis, and Reporting Technology), il tipo di interfaccia, la versione del firmware.
Per ottenere un riepilogo conciso, si può usare il comando nel formato sudo hwinfo --short --block
. La seconda opzione filtra le informazioni mostrate per includere solo i dispositivi di blocco (hard disk, SSD, unità rimovibili e così via).
A seconda delle distribuzione Linux in uso, potrebbe essere necessario installare hwinfo usando uno dei comandi che seguono:
sudo apt install hwinfo
(Debian, Ubuntu, Mint)
sudo yum install hwinfo
(RHEL/CentOS/Fedora e Rocky Linux/AlmaLinux)
sudo zypper install hwinfo
(OpenSUSE)
sudo pacman -S hwinfo
(Arch Linux)
sudo emerge -a sys-apps/hwinfo
(Gentoo Linux)
Gestire partizioni Linux e unità di memorizzazione usando strumenti grafici
Per visualizzare graficamente la struttura dei dischi e delle partizioni in Linux si possono utilizzare alcuni strumenti grafici. GNOME Disks (Dischi, in italiano) è l’utilità presente per impostazione predefinita sui sistemi Linux basati sul desktop environment GNOME. KDE Partition Manager è uno strumento integrato nell’ambiente desktop KDE: fornisce una comoda interfaccia per visualizzare e gestire unità e partizioni.
Aprendo una finestra del terminale in Linux quindi digitando il comando che segue, è possibile verificare – nel caso in cui si avesse qualche dubbio – quale ambiente desktop è in uso:
echo $XDG_CURRENT_DESKTOP
Nel caso di GNOME, per avviare l’utilità Disks basta digitare Dischi nella casella di ricerca. Nella colonna di sinistra sono elencate tutte le unità rilevate; cliccando su ciascuna di esse si ottengono tutti i dettagli, con la possibilità di apportare modifiche. È sufficiente selezionare la partizione d’interesse quindi l’icona raffigurante un piccolo ingranaggio.
Un’ulteriore ottima alternativa, da molti considerata come prima scelta, è sicuramente GParted. Si tratta di uno dei più popolari strumenti grafici di partizionamento per Linux. Consente di visualizzare facilmente le unità e le partizioni. Consente inoltre di gestirle in maniera semplice, flessibile, versatile e, soprattutto, efficace. Di solito deve essere installato manualmente ricorrendo al package manager della propria distribuzione. Utilizzando i comandi visti in precedenza nel caso di hwinfo, basta sostituire la stringa gparted
a hwinfo
.
Come abbiamo raccontato anche nell’articolo in cui spieghiamo come copiare Windows su SSD senza usare programmi a pagamento, esiste anche una distribuzione Linux contenente soltanto GParted e qualche utilità aggiuntiva che si rivela essenziale per modificare la struttura delle partizioni una volta copiati i dati, ad esempio, su un’unità di memorizzazione di dimensioni maggiori.
Credit immagine in apertura: iStock.com – NongAsimo