Articles

10 comandi fdisk per gestire le partizioni del disco di Linux

fdisk sta per “disco fisso o disco di formato”) è un’utilità di manipolazione del disco basata sulla riga di comando più comunemente usata per i sistemi Linux/Unix. Con l’aiuto del comando fdisk è possibile visualizzare, creare, ridimensionare, cancellare, cambiare, copiare e spostare partizioni su un disco rigido utilizzando la sua interfaccia testuale facile da usare.

Questo strumento è molto utile in termini di creazione di spazio per nuove partizioni, organizzazione dello spazio per nuove unità, riorganizzazione di una vecchia unità e copia o spostamento di dati su nuovi dischi. Permette di creare un massimo di quattro nuove partizioni primarie e un numero di partizioni logiche (estese), in base alle dimensioni del disco rigido che avete nel vostro sistema.

comando fdisk per gestire la partizione del disco

Questo articolo spiega 10 comandi base fdisk per gestire una tabella delle partizioni nei sistemi basati su Linux. Devi essere utente root per eseguire il comando fdisk, altrimenti otterrai un errore “comando non trovato”.

Attenzione – Non creare, cancellare o modificare le partizioni. A meno che tu non sappia cosa stai facendo!

Visualizza tutte le partizioni del disco in Linux

Il seguente comando base elenca tutte le partizioni del disco esistenti sul tuo sistema. L’argomento ‘-l’ sta per (listing all partitions) è usato con il comando fdisk per visualizzare tutte le partizioni disponibili su Linux. Le partizioni sono visualizzate dal nome del loro dispositivo. Per esempio: /dev/sda, /dev/sdb o /dev/sdc.

# fdisk -lDisk /dev/sda: 637.8 GB, 637802643456 bytes255 heads, 63 sectors/track, 77541 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System/dev/sda1 * 1 13 104391 83 Linux/dev/sda2 14 2624 20972857+ 83 Linux/dev/sda3 2625 4582 15727635 83 Linux/dev/sda4 4583 77541 586043167+ 5 Extended/dev/sda5 4583 5887 10482381 83 Linux/dev/sda6 5888 7192 10482381 83 Linux/dev/sda7 7193 7845 5245191 83 Linux/dev/sda8 7846 8367 4192933+ 82 Linux swap / Solaris/dev/sda9 8368 77541 555640123+ 8e Linux LVM

Visualizza partizioni specifiche del disco in Linux

Per visualizzare tutte le partizioni di un disco rigido specifico utilizzare l’opzione ‘-l’ con il nome del dispositivo. Per esempio, il seguente comando visualizzerà tutte le partizioni del disco del dispositivo /dev/sda. Se hai nomi di dispositivi diversi, scrivi semplicemente il nome del dispositivo come /dev/sdb o /dev/sdc.

# fdisk -l /dev/sdaDisk /dev/sda: 637.8 GB, 637802643456 bytes255 heads, 63 sectors/track, 77541 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System/dev/sda1 * 1 13 104391 83 Linux/dev/sda2 14 2624 20972857+ 83 Linux/dev/sda3 2625 4582 15727635 83 Linux/dev/sda4 4583 77541 586043167+ 5 Extended/dev/sda5 4583 5887 10482381 83 Linux/dev/sda6 5888 7192 10482381 83 Linux/dev/sda7 7193 7845 5245191 83 Linux/dev/sda8 7846 8367 4192933+ 82 Linux swap / Solaris/dev/sda9 8368 77541 555640123+ 8e Linux LVM

Verifica tutti i comandi disponibili per fdisk

Se volete visualizzare tutti i comandi disponibili per fdisk. Usate semplicemente il seguente comando menzionando il nome del disco rigido come /dev/sda come mostrato qui sotto. Il seguente comando vi darà un output simile a quello che segue.

Digitate ‘m’ per vedere la lista di tutti i comandi disponibili di fdisk che possono essere usati sul disco rigido /dev/sda. Dopo aver inserito ‘m’ sullo schermo, vedrete tutte le opzioni disponibili per fdisk che possono essere usate sul dispositivo /dev/sda.

# fdisk /dev/sdaWARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u').Command (m for help): mCommand action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only)Command (m for help):

Stampa di tutte le tabelle delle partizioni in Linux

Per stampare tutte le tabelle delle partizioni del disco rigido, è necessario essere in modalità comando del disco rigido specifico, diciamo /dev/sda.

# fdisk /dev/sda

Dalla modalità comando, inserire ‘p’ invece di ‘m’ come abbiamo fatto prima. Inserendo ‘p’, verrà stampata la specifica tabella delle partizioni di /dev/sda.

Command (m for help): pDisk /dev/sda: 637.8 GB, 637802643456 bytes255 heads, 63 sectors/track, 77541 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System/dev/sda1 * 1 13 104391 83 Linux/dev/sda2 14 2624 20972857+ 83 Linux/dev/sda3 2625 4582 15727635 83 Linux/dev/sda4 4583 77541 586043167+ 5 Extended/dev/sda5 4583 5887 10482381 83 Linux/dev/sda6 5888 7192 10482381 83 Linux/dev/sda7 7193 7845 5245191 83 Linux/dev/sda8 7846 8367 4192933+ 82 Linux swap / Solaris/dev/sda9 8368 77541 555640123+ 8e Linux LVMCommand (m for help):

Come cancellare una partizione in Linux

Se volete cancellare una specifica partizione (cioè /dev/sda9) da uno specifico disco rigido come /dev/sda. Devi essere in modalità comando fdisk per farlo.

# fdisk /dev/sda

Poi, inserisci ‘d’ per eliminare qualsiasi nome di partizione dal sistema. Quando inserisco ‘d’, mi chiederà di inserire il numero della partizione che voglio eliminare dal disco rigido /dev/sda. Supponiamo che io inserisca il numero ‘4’ qui, allora cancellerà la partizione numero ‘4’ (cioè /dev/sda4) del disco e mostrerà lo spazio libero nella tabella delle partizioni. Inserite ‘w’ per scrivere la tabella sul disco e uscire dopo aver apportato nuove modifiche alla tabella delle partizioni. Le nuove modifiche avranno luogo solo dopo il prossimo riavvio del sistema. Questo può essere facilmente compreso dall’output sottostante.

Attenzione: fate attenzione, mentre eseguite questo passo, perché usando l’opzione ‘d’ cancellerete completamente la partizione dal sistema e potreste perdere tutti i dati nella partizione.

Come creare una nuova partizione in Linux

Se avete spazio libero su uno dei vostri dispositivi, ad esempio /dev/sda, e volete creare una nuova partizione sotto di esso. Allora devi essere nella modalità di comando fdisk di /dev/sda. Digitate il seguente comando per entrare nella modalità di comando del disco rigido specifico.

# fdisk /dev/sda

Dopo essere entrati nella modalità di comando, ora premete il comando “n” per creare una nuova partizione sotto /dev/sda con dimensioni specifiche. Questo può essere dimostrato con l’aiuto del seguente output.

Mentre si crea una nuova partizione, vi chiederà due opzioni: creazione di una partizione “estesa” o “primaria”. Premete ‘e’ per la partizione estesa e ‘p’ per la partizione primaria. Poi ti chiederà di inserire i seguenti due input.

  1. Numero del primo cilindro della partizione da creare.
  2. Numero dell’ultimo cilindro della partizione da creare (Ultimo cilindro, +cilindri o +size).

Puoi inserire la dimensione del cilindro aggiungendo “+5000M” nell’ultimo cilindro. Qui, ‘+’ significa aggiunta e 5000M significa dimensione della nuova partizione (cioè 5000MB). Si prega di tenere a mente che dopo aver creato una nuova partizione, si dovrebbe eseguire il comando ‘w’ per alterare e salvare le nuove modifiche alla tabella delle partizioni e infine riavviare il sistema per verificare la partizione appena creata.

Command (m for help): wThe partition table has been altered!Calling ioctl() to re-read partition table.WARNING: Re-reading the partition table failed with error 16: Device or resource busy.The kernel still uses the old table. The new table will be used atthe next reboot or after you run partprobe(8) or kpartx(8)Syncing disks.

Come formattare una partizione in Linux

Dopo aver creato la nuova partizione, non saltare di formattare la partizione appena creata utilizzando il comando ‘mkfs’. Digita il seguente comando nel terminale per formattare una partizione. Qui /dev/sda4 è la mia partizione appena creata.

# mkfs.ext4 /dev/sda4

Come controllare la dimensione di una partizione in Linux

Dopo aver formattato una nuova partizione, controllate la dimensione della partizione usando la bandiera ‘s’ (visualizza la dimensione in blocchi) con il comando fdisk. In questo modo è possibile controllare la dimensione di qualsiasi dispositivo specifico.

# fdisk -s /dev/sda25194304

Come sistemare l’ordine della tabella delle partizioni

Se si è cancellata una partizione logica e la si è ricreata di nuovo, si potrebbe notare il problema della “partizione fuori ordine” o un messaggio di errore come “Le voci della tabella delle partizioni non sono in ordine sul disco”.

Per esempio, quando tre partizioni logiche come (sda4, sda5 e sda6) vengono eliminate e viene creata una nuova partizione, ci si potrebbe aspettare che il nome della nuova partizione sia sda4. Ma il sistema la creerebbe come sda5. Questo accade perché, dopo che la partizione è stata cancellata, la partizione sda7 è stata spostata come sda4 e lo spazio libero si sposta alla fine.

Per risolvere questi problemi di ordine delle partizioni, e assegnare sda4 alla partizione appena creata, emettete la ‘x’ per entrare in una sezione di funzionalità extra e poi inserite il comando ‘f’ di esperto per fissare l’ordine della tabella delle partizioni come mostrato di seguito.

# fdisk /dev/sdaWARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u').Command (m for help): xExpert command (m for help): fDone.Expert command (m for help): wThe partition table has been altered!Calling ioctl() to re-read partition table.WARNING: Re-reading the partition table failed with error 16: Device or resource busy.The kernel still uses the old table. The new table will be used atthe next reboot or after you run partprobe(8) or kpartx(8)Syncing disks.

Dopo aver eseguito il comando ‘f’, non dimenticare di eseguire il comando ‘w’ per salvare e uscire dalla modalità di comando fdisk. Una volta fissato l’ordine della tabella delle partizioni, non si riceveranno più messaggi di errore.

Come disabilitare il flag di avvio (*) di una partizione

Di default, il comando fdisk mostra il simbolo del flag di avvio (cioè ‘*’) su ogni partizione. Se volete abilitare o disabilitare il flag di avvio su una specifica partizione, eseguite i seguenti passi.

# fdisk /dev/sda

Premete il comando ‘p’ per visualizzare la tabella delle partizioni correnti, vedrete che c’è un flag di avvio (simbolo asterisco (*) in colore arancione) sul disco /dev/sda1 come mostrato di seguito.

Poi inserite il comando ‘a’ per disabilitare il boot flag, poi inserite il numero della partizione ‘1’ come (cioè /dev/sda1) nel mio caso. Questo disabiliterà il flag di avvio sulla partizione /dev/sda1. Questo rimuoverà il flag asterisco (*).

Command (m for help): aPartition number (1-9): 1Command (m for help): pDisk /dev/sda: 637.8 GB, 637802643456 bytes255 heads, 63 sectors/track, 77541 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System/dev/sda1 1 13 104391 83 Linux/dev/sda2 14 2624 20972857+ 83 Linux/dev/sda3 2625 4582 15727635 83 Linux/dev/sda4 4583 77541 586043167+ 5 Extended/dev/sda5 4583 5887 10482381 83 Linux/dev/sda6 5888 7192 10482381 83 Linux/dev/sda7 7193 7845 5245191 83 Linux/dev/sda8 7846 8367 4192933+ 82 Linux swap / Solaris/dev/sda9 8368 77541 555640123+ 8e Linux LVMCommand (m for help):

Ho fatto del mio meglio per includere quasi tutti i comandi base di fdisk, ma fdisk contiene ancora una varietà di altri comandi esperti che potete usare inserendo ‘x’. Per informazioni più dettagliate, controlla il comando ‘man fdisk’ dal terminale. Se mi sono perso qualche comando importante, per favore condividilo con me nella sezione dei commenti.

Leggi anche :

  1. 12 comandi “df” per controllare lo spazio su disco in Linux
  2. 10 utili comandi “du” per trovare l’utilizzo del disco di file e directory

Lascia una risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *