Sui sistemi operativi Linux e UNIX, si può usare il comando mount
per attaccare (montare) file system e dispositivi rimovibili come le chiavette USB in un particolare punto di montaggio dell’albero delle directory.
Il comando umount
stacca (smonta) il file system montato dall’albero delle directory.
In questo tutorial, andremo oltre le basi per attaccare e staccare vari file system usando i comandi mount
e umount
.
Come elencare i file system montati #
Quando viene usato senza alcun argomento, il comando mount
mostrerà tutti i file system attualmente montati:
mount
Di default, l’output includerà tutti i file system compresi quelli virtuali come cgroup, sysfs e altri. Ogni linea contiene informazioni sul nome del dispositivo, la directory in cui il dispositivo è montato, il tipo di filesystem e le opzioni di montaggio nella forma seguente:
device_name on directory type filesystem_type (options)
Per visualizzare solo alcuni filesystem usare l’opzione -t
.
Per esempio, per stampare solo le partizioni ext4 si dovrebbe usare:
mount -t ext4
Montaggio di un file system #
Per montare un file system in una data posizione (punto di montaggio), usare il comando mount
nella forma seguente:
mount DEVICE_NAME DIRECTORY
Una volta che il file system è collegato, il punto di montaggio diventa la directory principale del file system montato.
Per esempio, per montare il /dev/sdb1
file system nella /mnt/media
directory si usa:
sudo mount /dev/sdb1 /mnt/media
Di solito quando si monta un dispositivo con un file system comune come ext4
o xfs
il comando mount
rileverà automaticamente il tipo di file system. Tuttavia, alcuni file system non sono riconosciuti e devono essere specificati esplicitamente.
Utilizzare l’opzione -t
per specificare il tipo di file system:
mount -t TYPE DEVICE_NAME DIRECTORY
Per specificare ulteriori opzioni di montaggio, utilizzare l’opzione -o
:
mount -o OPTIONS DEVICE_NAME DIRECTORY
Le opzioni multiple possono essere fornite come elenco separato da virgole (non inserire uno spazio dopo la virgola).
Si può ottenere una lista di tutte le opzioni di montaggio digitando man mount
nel proprio terminale.
Montaggio di un file system usando /etc/fstab #
Quando si fornisce un solo parametro (sia directory che dispositivo) al comando mount
, esso leggerà il contenuto del file di configurazione /etc/fstab
per controllare se il file system specificato è elencato o meno.
Se il /etc/fstab
contiene informazioni sul dato file system, il comando mount
utilizza il valore dell’altro parametro e le opzioni di montaggio specificate nel file fstab
.
Il file /etc/fstab
contiene una lista di voci nella forma seguente:
Utilizzare il comando mount
in una delle seguenti forme per collegare un file system specificato nel file /etc/fstab
:
mount DIRECTORYmount DEVICE_NAME
Montaggio del drive USB #
Sulla maggior parte delle moderne distribuzioni Linux come Ubuntu, i drive USB si montano automaticamente quando si inseriscono, ma a volte potrebbe essere necessario montare manualmente il drive.
Per montare manualmente un dispositivo USB, esegui i seguenti passi:
-
Crea il punto di montaggio:
sudo mkdir -p /media/usb
-
Assumendo che il drive USB usi il dispositivo
/dev/sdd1
è possibile montarlo nella directory/media/usb
digitando:sudo mount /dev/sdd1 /media/usb
Per trovare il dispositivo e il tipo di filesystem, puoi usare uno dei seguenti comandi:
fdisk -l
ls -l /dev/disk/by-id/usb*
dmesg
lsblk
Per montare unità USB formattate exFAT, installa il modulo gratuito FUSE exFAT e gli strumenti.
Montaggio di file ISO #
Puoi montare un file ISO usando il dispositivo loop che è uno speciale pseudo-dispositivo che rende un file accessibile come un dispositivo a blocchi.
-
Iniziare creando il punto di montaggio, può essere qualsiasi posizione desiderata:
sudo mkdir /media/iso
-
Montare il file ISO sul punto di montaggio digitando il seguente comando:
sudo mount /path/to/image.iso /media/iso -o loop
Non dimenticare di sostituire
/path/to/image.iso
con il percorso del tuo file ISO.
Montaggio di NFS #
Per montare una condivisione NFS devi avere il pacchetto client NFS installato sul tuo sistema.
-
Installare il client NFS su Ubuntu e Debian:
sudo apt install nfs-common
-
Installare il client NFS su CentOS e Fedora:
sudo yum install nfs-utils
Utilizzare i seguenti passi per montare una directory NFS remota sul proprio sistema:
-
Creare una directory che serva da punto di montaggio per il filesystem remoto:
sudo mkdir /media/nfs
-
Generalmente, si desidera montare la condivisione NFS remota automaticamente all’avvio. Per farlo aprite il file
/etc/fstab
con il vostro editor di testo:sudo nano /etc/fstab
Aggiungi la seguente linea al file, sostituendo
remote.server:/dir
con l’indirizzo IP o l’hostname del server NFS e la directory esportata:/etc/fstab# <file system> <dir> <type> <options> <dump><pass>remote.server:/dir /media/nfs nfs defaults 0 0
-
Monta la condivisione NFS eseguendo il seguente comando:
sudo mount /media/nfs
Smontare un file system #
Per staccare un file system montato, usare il comando umount
seguito dalla directory dove è stato montato (mount point) o dal nome del dispositivo:
umount DIRECTORY
umount DEVICE_NAME
Se il file system è in uso il comando umount
non riuscirà a staccare il file system. In queste situazioni, è possibile utilizzare il comando fuser
per scoprire quali processi stanno accedendo al file system:
fuser -m DIRECTORY
Una volta determinati i processi è possibile fermarli e smontare il file system.
Lazy unmount #
Utilizzare l’opzione -l
--lazy
) per smontare un file system occupato non appena non lo è più.
umount -l DIRECTORY
Force unmount #
Utilizzare l’opzione -f
--force
) per forzare uno smontaggio. Questa opzione è solitamente usata per smontare un sistema NFS irraggiungibile.
umount -f DIRECTORY
Generalmente non è una buona idea forzare lo smontaggio in quanto potrebbe corrompere i dati sul file system.
Conclusione #
A questo punto dovreste avere una buona comprensione di come usare il comando mount
per collegare vari file system al vostro albero di directory e staccare i supporti con il comando umount
.
Per saperne di più sulle opzioni dei comandi mount
e umount
consultare le rispettive pagine man.