Il comando “mount” permette di montare un filesystem di un dispositivo su una directory del filesystem locale. Si sta parlando, ad esempio, di CDROM, Floppy, Hard Disk esterni, chiavette USB e dischi o share di rete condivisi da altri sistemi tramite protocolli CIFS o NFS. La sintassi del comando mount è la seguente:
mount [opzioni] filesystem directory
dove le opzioni servono per specificare il tipo di filesystem o come viene montato il volume (es. diritti di lettura, lettura/scrittura) e possono essere specifiche a seconda della distribuzione Linux o versione di Unix. Il parametro filesystem indica il dispositivo da montare (es. /dev/cdrom nel caso del CDROM, /dev/sda nel caso di un disco locale, servername:/exports/data nel caso di filesystem NFS). Il parametro directory invece indica la directory locale tramite la quale è possibile accedere al filesystem del dispositivo.
Nel caso in cui venga eseguito il comando mount senza parametri, vengono visualizzati tutti i filesystem montati nel sistema.
[root@linuxbox ~]# mount
/dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)
Equivalente al comando mount esiste il comando umount che permette di smontare il filesystem dalla directory locale.
Vediamo alcuni esempi:
[root@linuxbox ~]# mount /dev/sda1 /mountdir
che permette di montare la partizione /dev/sda1 sulla directory /mountdir (directory mountdir che va creata qualora non esista)
[root@linuxbox ~]# mount -o remount,rw /dev/sda1
che permette di rimontare un filesystem già in uso cambiando però le opzioni (ad esempio in lettura/scrittua “rw” oppure in sola lettura “r”)
[root@linuxbox ~]# mount -o loop /home/image.iso /media/cdrom
che permette di montare una immagine ISO di un cdrom oppure di un DVD senza la necessità di dover masterizzare un supporto fisico.
[root@linuxbox ~]# mount -t cifs //winserver/sharename -o username=username,password=password /mountdir
che permette di montare sul nostro sistema *nix locale una directory condivisa da un sistema Windows
[root@linuxbox ~]# mount -t nfs -o rw servername:/vol/export /mountdir
che permette di montare sul nostro sistema *nix un filesystem di tipo NFS (Network File System)
[root@linuxbox ~]# umount /mountdir
infine permette di smontare il filesystem dal nostro sistema *nix
Possiamo utilizzare il comando mount e umount da shell oppure all’interno di script. Qualora volessimo che il filsystem montato venga riconnesso automaticamente dopo il riavvio del sistema dobbiamo utilizzare il file di configurazione “fstab2 presente nella directory “/etc”. Vediamo la struttura di questo file:
[root@linuxbox ~]# cat /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-VM swap swap defaults 0 0
- Colonna 1: indica il dispositivo che contiene un filesystem
- Colonna 2: la directory (mount point) tramite la quale sarà possibile accedere al contenuto
- Colonna 3: il tipo di filsystem (ext2, ext3, ext4, swap, cifs, nfs, …)
- Colonna 4: il tipo di accesso al filesystem
- Colonna 5: opzione obsoleta che indica l’utilizzo del comando dump per fare i backup del filesystem (0 non attivato – 1 attivato)
- Colonna 6: abilita il controllo del filesystem tramite il comando fsck (0 non attivato, da 1 in poi attivato nell’ordine indicato)
Di seguito viene riportato un esempio di come configurare questo file:
/dev/sdc /media/cdrom udf,iso9660 user,noauto 0 0
per montare un CDROM o DVD
/dev/sdb1 /mountdir ext3 defaults 0 0
per montare una partizione di un nuovo disco locale di tipo ext3
//winserver/sharename /mountdir cifs username=username,password=password
per montare una share di un sistema Windows tramite protocollo CIFS
servername:/vol/export /mountdir nfs rw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600,proto=tcp,suid
per montare un filesystem NFS
Compilato e salvato il file /etc/fstab possiamo caricare le nuove impostazioni tramite il comando
[root@linuxbox ~]# mount -a
che permette di processare il file senza la necessità di riavviare il nostro sistema *nix.