B.2.1 Configurazione di USB flash memory

Una USB flash memory è un dispositivo di memorizzazione che si connette al sistema attraverso la porta USB ed il sistema è in grado di “vedere” tale dispositivo come se fosse un’unità a disco di tipo SCSI. Quindi, prima di collegare la USB flash memory al sistema, si può visualizzare il contenuto del file /proc/bus/usb/devices con il comando

$ cat /proc/bus/usb/devices
T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 2
B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=0000 ProdID=0000 Rev= 0.00
S:  Product=USB OHCI Root Hub
S:  SerialNumber=c8049000
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=  0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms
per poi confrontarlo con lo stesso dopo averla collegata

$ cat /proc/bus/usb/devices
T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 2
B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=0000 ProdID=0000 Rev= 0.00
S:  Product=USB OHCI Root Hub
S:  SerialNumber=c8049000
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=  0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms
T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=0ea0 ProdID=6803 Rev= 1.00
S:  Manufacturer=USB
S:  Product=Solid state disk
S:  SerialNumber=230760A43E33747B
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=81(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
                                                                        
                                                                        
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=83(I) Atr=03(Int.) MxPS=   2 Ivl=1ms
Le righe in più, cioè quelle successive alla riga

T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
si riferiscono alla USB flash memory (Solid state disk). Per poterla utilizzare è necessario montare il filesystem ad essa relativo, in un mount point nell’albero delle directory. Il file di dispositivo relativo alla USB flash memory è la prima partizione del primo disco SCSI non ancora utilizzato dal sistema (nel caso in cui non sia presente nessun disco SCSI, il file di dispositivo relativo alla USB flash memory è /dev/sda1).

Quindi, si crea una directory (da superuser) che fungerà da mount point (es. /mnt/usbdisk) con il comando

# mkdir /mnt/usbdisk
e si inserisce all’interno del file /etc/fstab una riga analoga a quella seguente

/dev/sda1               /mnt/usbdisk            auto    noauto,user      0 0
A questo punto qualunque utente potrà digitare il comando

$ mount /mnt/usbdisk
per montare il filesystem nella directory /mnt/usbdisk, mentre il comando

$ umount /mnt/usbdisk
servirà per smontare lo stesso prima di scollegare il dispositivo dal sistema.

Con le versioni più recenti del kernel Linux, il comando hotplug, assieme a udev, permette di creare automaticamente il mount point relativo alla flash memory ogni volta che essa viene inserita in una porta USB, senza dover modificare manualmente il file /etc/fstab.

Per ulteriori informazioni v. “USB Flash Memory HOWTO” di N. Sauer, reperibile da http://www.tldp.org/HOWTO/Flash-Memory-HOWTO.

[da completare ...]