INDIETRO
 4.  Ambiente di lavoro
AVANTI

Nota sul mount di devices removibili (fine - 6)

I devices removibili dall'utente,come floppy, CD, DVD, Blueray, Memorie Flash su USB ("pennine"), dischi esterni removibili USB, dischi esterni removibili SATA, e altri simili, richiedono di essere montati e smontati a richiesta dell'utente.

Soluzioni completamente automatiche, che da sole montino e smontino i devices, sono state provate, ma sono foriere di un sacco di guai.
Intanto ci sono svariate situazioni in cui NON si vuole affatto montare il device: per esempio quando lo si vuole riformattare.
Poi c'e' un problema di tempistica: se per esempio e' stato scritta una grande quantita' di dati, non si può smontare il device fino a quando la scrittura è terminata, e l'utente deve essere conscio del fatto che non può ancora scollegare il device, perchè è ancora montato.
Infine ci possono essere degli errori di I/O o di accesso che impediscono il mount o l'umount, e di cui l'utente deve essere cosciente.

C'è poi il problema di gestire i permessi di lettura e scrittura del device removibile: non sempre sono presenti sul filesystem del device (come per i sistemi formattati con le FAT in DOS o Windows), o altre volte devono essere mascherati opportunamente come per esempio un disco esterno con un filesystem ext2 e directory di root leggibili solo a root).

Le soluzioni adottate sotto i sistemi Unix sono di diversi tipi, e anche per le varie versioni e distribuzioni di Linux si incontano molte varietà di soluzioni.
Vediamone qualcuna.

Nel file /etc/fstab sono elencati dei device removibili, con il punto di mount e l'opzione "noauto,user" e l'utente può dare direttamente il comando mount o umount del device.
Questa soluzione era usata molto spesso per i CD o i DVD, che comunque erano sembre montati read-only.
I devices removibili avevano in questo caso i diritti giusti per permettere agli utenti l'accesso.
In questi casi un utente può dare un mount   /mnt/cdrom o umount   /mnt/cdrom.
(Si noti che il sistema non permette l'espulsione del cdrom col bottoncino se questo è montato, ma si può dare il comando eject che smonta ed espelle il CD)

Una soluzione elegante al problema dei diritti era risolta con le PAM(Pluggable Authentication Module): al momento del login l'utente veniva aggiunto ad alcuni gruppi come sound, cdrom, cdrw, usb se si era loggato da una consolle fisica del calcolatore, (e quindi se era fisicamente seduto davanti al calcolatore).
I vari devices removibili erano dei vari gruppi con permesso rwx al gruppo.

Per non complicare ulteriormente il programma mount, esisteva un wrapper pmount ( e il suo complementare pumount) che controllava i diritti e chiamava mount creando al volo una directory adatta in /media

Infine in alcune recenti distribuzioni si sta cercando di riscrivere tutto il software di autorizzazione con un pacchetto chiamato PolKit che si attiva al momento della scoperta da parte del kernel dei vari devices.
Allora per il mount dei devices removibili c'è un nuovo comando udisks

I desktop managers come gnome o kde di solito cercano comunque di implementare un automount utilizzando alcuni dei meccanismi visti sopra, e usano popup windows per interagire con l'utente almeno per lo smontaggio dei file systems.
Quando gli automatismi falliscono tocca poi all'utente capire come deve fare per eseguire il mount o l'umount a mano !  


INDIETRO
Laboratorio di Comunicazione mediante Calcolatore - Sergio Steffè - AA 2019/2020 - PISA
AVANTI