Con il comando mount su Linux possiamo montare altri file system, ad esempio un dispositivo esterno come una chiavetta USB o un disco rigido. In questa guida vedremo come si usa il comando mount con degli esempi pratici di utilizzo.
Iniziamo!
Indice
Sintassi del comando mount
Il comando mount è un comando Linux che serve a montare un file system specificando una posizione da noi definita per accedervi. Questo ci permette ad esempio di accedere a un drive USB collegato al computer.
La sintassi di base del comando mount è questa:
mount [opzioni] dispositivo destinazione
Per esempio esaminiamo il comando:
mount /dev/sda1 /mnt
Questo comando monta la prima partizione del primo disco rilevato all’avvio nella cartella mnt.
Prima di utilizzare il comando mount, bisogna capire come identificare i dispositivi collegati e quindi sapere qual è la nomenclatura che viene usata per distinguerli.
Come vengono indicati i dispositivi
Ogni dispositivo ha un’etichetta che può essere ad esempio /dev/sda per un disco SATA.
I dispositivi vengono identificati da una prima parte del nome che indica il tipo, ad esempio:
sdper indicare dispositivi a blocchi generici, tra cui i dischi SATA;mmcblkper indicare le schede SD.
Nota: in base al modo in cui è collegato fisicamente il lettore SD alla scheda madre, le schede SD verranno identificate con mmcblkX o sdX.
La seconda parte del nome indica l’ordine con cui vengono rilevati i dispositivi e viene indicato con una lettera in ordine alfabetico crescente:
- sda sarà il primo dispositivo rilevato;
- sdb sarà il secondo.
Quando ci sono delle partizioni vengono indicate con un numero:
- sda1 sarà la prima partizione del primo dispositivo rilevato (sda);
- sda2 la seconda.
Suggerimento: per visualizzare tutte le partizioni o per crearne di nuove, puoi usare il comando fdisk.
Nel caso di dispositivi NVMe, verranno indicati seguendo questa logica: il primo numero dopo nvme indica il controller a cui è collegato il disco, mentre il secondo numero indica il disco collegato a un determinato controller.
Per esempio:
- nvme0n1 indica il disco 1 collegato al primo controller (controller 0);
- nvme0n2 indica il secondo disco collegato al primo controller (controller 0);
- nvme1n5 indica il quinto disco collegato al secondo controller (controller 1).
In base al dispositivo le partizioni possono essere anche indicate precedute da p, come in questi esempi:
- nvme0n1p1 indica la prima partizione d dispositivo NVMe;
- nvme0n1p2 sarà la seconda partizione.
Casi d’uso del comando mount
Possiamo usare il comando mount per vedere tutti i file system collegati, ma anche per montare un nuovo disco. In base alle opzioni che usiamo possiamo anche montare file ISO e dischi di rete. Vediamo con degli esempi concreti come utilizzare mount.
Visualizzare tutti i file system collegati
Se usiamo il comando mount senza nessuna opzione, possiamo vedere la lista di tutti i file system montati con le seguenti informazioni:
- nome del dispositivo montato;
- punto di montaggio (o mount point);
- tipo di file system;
- opzioni.
Prendiamo come esempio questa riga dell’output del comando mount:
/dev/sda4 on / type btrfs (rw,relatime,compress=zstd:3,ssd,discard=async,space_cache=v2,subvolid=5,subvol=/)
Analizziamo l’output:
/dev/sda4– indica il dispositivo montato, in questo caso la partizione 4 del primo dispositivo rilevato, nel nostro caso un SSD SATA.on /– indica il punto di montaggio, in questo caso la root (/).type btrfsindica che il tipo di file system è btrfs.- tutto quello che è presente fra parentesi indica le opzioni di montaggio, per esempio “rw” indica che il dispositivo è montato in modo da permettere lettura e scrittura.
Se vogliamo vedere queste stesse informazioni in modo più ordinato, possiamo usare il comando:
findmnt
In questo caso l’output del comando è mostrato in colonne e ci mostra:
- target: indica il mount point (esempio: /);
- source: il nome del dispositivo (esempio: /dev/sda4)
- fstype: è il tipo di file system (esempio: btrfs)
- options: indica tutte le opzioni (esempio: rw, relatime, ecc).
Visualizzare file system di un determinato tipo
Se utilizziamo l’opzione -t insieme al comando mount, possiamo restringere la ricerca a un determinato tipo di file system. Questo ci permette di passare da una situazione del genere:
A una in cui abbiamo solo poche righe.
Per esempio per vedere solo i file system btrfs, usiamo il comando così:
mount -t btrfs
L’output sarà simile a questo:

Possiamo usare lo stesso comando per cercare altri tipi di file system come:
- ext4
- zfs
- xfs.
Montare un file system
L’uso più comune del comando mount è quello di montare un file system scegliendo la cartella che farà da punto di montaggio. Per poter usare il comando bisogna avere i permessi di root.
La sintassi da usare è questa:
mount [opzioni] dispositivo posizione
Per esempio per montare il dispositivo sdb1 in /mnt/usb usiamo il comando:
mount /dev/sdb1 /mnt/usb
Se vogliamo specificare il tipo di file system, dobbiamo aggiungere l’opzione -t seguita dal tipo di file system, ad esempio:
mount -t ntfs3 /dev/sdb1 /mnt/usb
Questo comando ci permette di utilizzare nello specifico il nuovo driver ntfs3 al posto di quello predefinito per montare un disco normalmente partizionato con Windows.
Opzioni di montaggio
Quando montiamo un file system possiamo anche decidere di utilizzare alcune opzioni, ad esempio per montarlo in sola lettura, per applicare una maschera sui permessi dei file o per montarlo per uno specifico utente.
Per usare le opzioni ci basta usare il comando in questo modo:
mount -o [opzione1,opzione2] -t [filesystem] [dispositivo] [punto di montaggio]
Per esempio:
mount -o windows_names,uid=1000 -t ntfs3 /dev/sdb1 /mnt/usb
In questo caso abbiamo montato questo file system usando le opzioni:
windows_namesper impedire che i file e le cartelle vengano salvati con caratteri non ammessi da Windows (come ad esempio i due punti);uid=1000per assegnare all’utente con l’id 1000 la proprietà del file system.
Le opzioni che possiamo usare dipendono dal tipo di file system e si possono trovare sulla documentazione.
L’opzione bind (-o bind) è un tipo particolare di montaggio che ci permette di far sì che una cartella sia montata su un’altra cartella. Ad esempio vogliamo avere accesso a una cartella in sola lettura per evitare di eliminare file, allora ci basta montarla usando il seguente comando:
mount -o bind,ro ~/cartella-di-origine ~/cartella-di-destinazione
Usare mount con fstab
Il file di configurazione fstab è presente nella cartella /etc e raccoglie tutti i file system che generalmente devono essere montati all’avvio. In fstab ad esempio troviamo le indicazioni per montare la root, la partizione di boot e la partizione home, qualora queste siano separate.
Questo file è comunque modificabile per aggiungere altri punti di montaggio che possono essere montati automaticamente all’avvio oppure su richiesta dell’utente.
Possiamo quindi sfruttare questo file per montare al volo file system che utilizziamo di frequente o montare tutti i file system.
Infatti, se vogliamo montare tutti i file system indicati nel file fstab possiamo usare il comando mount con l’opzione -a:
mount -a
La prima cosa da fare è modificare il file fstab per fornire le istruzioni necessarie al montaggio.
Nel file fstab dovremo indicare il dispositivo oppure il suo UUID, e poi specificare anche il tipo file system, il punto di montaggio e le opzioni.
Per conoscere l’UUID del dispositivo da montare possiamo usare il comando:
lsblk -f
Questo ci darà indicazioni sul nome dei dispositivi, il file system usato e l’UUID.
Nel file fstab dobbiamo inserire le informazioni in questo ordine:
- dispositivo (es.
/dev/sda1) o UUID; - punto di montaggio (nel nostro esempio
/mnt/usb); - tipo di file system (es.
btrfs); - opzioni, nel nostro caso:
roper far sì che il dispositivo sia in sola lettura;noautoper evitare che venga montato automaticamente all’avvio;nofailper evitare che causi un errore quando non rilevato (un’opzione ideale per tutti i dispositivi rimovibili).
- gli ultimi due numeri indicano dump che serve per i file system ext2 e ext3, altrimenti deve essere impostato a 0 e pass che assegna le priorità per il controllo del disco durante l’avvio e che può essere impostato a 0 per disabilitare il controllo.
La riga da inserire sarà quindi come questa:
UUID=28909db5-7413-4b82-88f9-a65d719d1c19 /mnt/usb btrfs ro,noauto,nofail 0 0
Dopo aver modificato il file fstab, è bene aggiornare systemd con il comando:
systemctl daemon-reload
Ora che il dispositivo è indicato nel file fstab, per montarlo ci basta usare il comando mount seguito dal punto di montaggio:
mount /mnt/usb
In alternativa per montarlo possiamo anche indicare semplicemente il nome del dispositivo:
mount /dev/sdh2
Montare un file ISO
Visto che i file ISO non sono dispositivi a blocchi, ma file che contengono un file system, per montarli bisogna utilizzare l’opzione loop che permette al comando mount di montare l’immagine disco proprio come normale dispositivo.
Il comando da usare è:
mount -o loop disco.iso /mnt/disco
Montare un disco di rete
Con il comando mount possiamo montare un disco remoto per accedervi come se fosse collegato fisicamente alla nostra macchina.
Per farlo possiamo usare diversi tipi di protocolli come ssh, nfs o webdav. Ad esempio per collegarci a un disco usando ssh specifichiamo il tipo di file system (sshfs) nel comando mount e anche l’origine remota del disco.
mount -t sshfs user@192.168.1.2:/cartella-di-origine /mnt/disco-rete
Smontare un file system
Se vogliamo smontare un file system possiamo usare il comando umount seguito o dal nome del dispositivo o da quello del punto di montaggio.
Qui c’è un esempio con il nome del dispositivo:
umount /dev/sdh2
E qui un esempio con il mount point:
umount /mnt/usb
Conclusioni
Abbiamo visto a cosa serve il comando mount e come usarlo per montare i file system, sia manualmente che in modo automatico all’avvio usando fstab. Adesso sai come montare un file system, ad esempio una chiavetta USB o anche un disco remoto o un file ISO in modo da renderlo accessibile.
Avevi già usato il comando mount? Facci sapere nei commenti.
Pronto a costruire il tuo sito WordPress?
Prova il nostro servizio gratuitamente per 14 giorni. Nessun impegno, nessuna carta di credito richiesta.