Questa guida è stata testata su Debian Sarge // kernel 2.6.9 e una fotocamera Benq DC C40, ma dovrebbe funzionare con moltissimi altri modelli e anche con kernels della serie 2.4.x (addiritura 2.2.x ... ).
Ho deciso di scrivere qualche riga sul metodo da me usato principalmente a causa della mancanza di supporto da parte del produttore dell' hardware, ma anche per dare uan forma semplice e sintetica alla gran mole di materiale reperibile su internet.
Buona lettura e ... happy hacking!
Prima di tutto avrete bisogno di un kernel con:
- supporto generico USB per il vostro chipset;
(questo è talmente ovvio da non aver bisogno di spiegazioni)
- supporto USB Mass Storage;
(questo driver permette di accedere alle periferiche di archiviazione di massa attraverso il bus USB.)
- supporto SCSI;
(vedi punto successivo)
- supporto generico dischi SCSI
(avremo bisogno di questo driver per accedere alla periferica USB - la memoria della fotocamera - come se fosse un vero e proprio disco fisso)
Caricate i moduli se non lo sono o mettete mano al vostro kernel e proseguiamo.
1- Collegate il cavo USB al vostro PC, accendete la fotocamera e solo a questo punto collegatela al computer. Vi consiglio di eseguire questa operazione da un terminale, e non da una sessione di X. Questo per vedere più agevolmente i messaggi di debug.
Altro modo è quello di controllare il log messages (attenzione, la connessione USB genera un gran flusso di linee).
Di seguito ecco un esempio di quello che potete aspettarvi di leggere se tutto è andato bene:
gandalf:~# tail -f /var/log/messages<br />Nov 11 02:47:53 gandalf kernel: usb 1-1: new full speed USB device using address 13<br />Nov 11 02:47:53 gandalf kernel: scsi11 : SCSI emulation for USB Mass Storage devices<br />Nov 11 02:47:53 gandalf kernel: Vendor: Model: DSC Rev: 1.00<br />Nov 11 02:47:53 gandalf kernel: Type: Direct-Access ANSI SCSI revision: 02<br />Nov 11 02:47:53 gandalf kernel: SCSI device sda: 32768 512-byte hdwr sectors (17 MB)<br />Nov 11 02:47:54 gandalf kernel: sda: assuming Write Enabled<br />Nov 11 02:47:54 gandalf kernel: sda:<7>usb-storage: queuecommand called<br />Nov 11 02:47:54 gandalf kernel: sda1<br />Nov 11 02:47:54 gandalf kernel: Attached scsi removable disk sda at scsi11, channel 0, id 0, lun 0<br />Nov 11 02:47:54 gandalf kernel: Attached scsi generic sg0 at scsi11, channel 0, id 0, lun 0, type 0<br />Nov 11 02:47:54 gandalf scsi.agent[22145]: disk at /devices/pci0000:00/0000:00:07.2/usb1/1-1/1-1:1.0/host11/11:0:0:0
Possiamo subito notare una cosa interessanti, e che farà comodo in seguito: alla nostra fotocamera è stato assegnato il device sda1. In caso abbiate delle periferiche SCSI effettivamente collegate al PC, avrete un messaggio diverso.
Possiamo subito provare se la nostra fotocamera è accessibile provando semplicemente a montarne il filesystem:
gandalf:~# mount -t vfat /dev/sda1 /mnt<br />gandalf:~# ls -l /mnt/<br />totale 16<br />drwxr--r-- 2 root root 16384 2004-11-11 01:47 dcim<br />gandalf:~#
All' interno di dcim (o altro) trovere le vostre foto! Potrete tranquillamente navigare nelle cartelle, rinominare, spostare, copiare e cancellare i files.
Per poter operare tranquillamente cambiamenti all' interno della memoria della fotocamera, è necessario seguire _sempre_ e _comunque_ questa procedura finito il lavoro:
1. smontare il filesystem (comando umount);
2. spegnere la fotocamera;
3. scollegare il cavo dalla fotocamera.
2- Se siete arrivati a questo punto, probabilmente vorrete gestire in modo più pratico il mount e l' umount del dispositivo. Di seguito ecco alcuni cenni sull' automounter che faranno comodo (spero).
L' automounter è un demone che controlla una serie di dispositivi da noi definiti: quando tentiamo di accedere a questi dispositivi, l' automounter si preoccuperà di montarli automaticamente per noi e li smonterà quando non ne avremo più bisogno. E' molto utile per usare comodamente CDROMs, floppy-drives e ... fotocamere digitali.
In debian è sufficiente digitare il comando:
# apt-get install autofs
ed avremo a nostra disposizione sia il demone che uno script di avvio che lo controlla.
Ora dobbiamo editare due files.
Il primo è /etc/auto.master ed è il file di controllo generale. Tutto quello che dobbiamo fare è aggiungere alla fine del file questa riga:
/misc /etc/auto.misc --timeout=30
che specifica:
Il primo punto indica la directory in cui devono essere montati i dispositivi. E' buona norma usare /misc, che provvederete a creare con il comando:
# mkdir /misc
Il secondo punto indica quale file di configurazione deve essere usato per gestire /misc. In questo caso si tratta di /etc/auto.misc.
Il terzo punto indica il timeout (in millisecondi) che automounter attenderà prima di smontare il device quando avremo finito di usarlo.
Ora passiamo a configurare /etc.auto.misc.
Tutto quello che dobbiamo fare è aggingere una riga che specifichi come montare il filesystem della nsotra fotocamera. La linea in questione sarà qualcosa del genere:
camera -fstype=vfat,nodev,users,codepage=850,umask=000 :/dev/sda1
Questa linea si riferisce alla mia configurazione, ma è semplice intuire che: camera indica la directory all' interno di /misc in cui verrà montato il filesystem, -fstype= indica le opzioni di mount (potete usare quelle che preferite). :/dev/sda1 deve essere il device che abbiamo individuato all' inizio della guida.
Bene, ora siamo pronti a rilanciare autofs e a testarlo:
gandalf:~# /etc/init.d/autofs restart<br />Stopping automounter:<br /><br /> Stopped 8977<br />done.<br />Starting automounter: /misc.<br />gandalf:~#
D' ora in avanti potremo accedere alla nostre foto semplicemente entrando all' interno di /misc/camera, sia da console che usando la vostra interfaccia grafica preferita.
Scusate fin da adesso eventuali orrori di ortografia ed imprecisioni: sono le 03:30 a.m.
.
Ogni commento/correzione è il benvenuto.
Bibliografia: http://www.linux-usb.org/USB-guide/x498.html



Commenti
Inviato da Stefano il Gio, 11/11/2004 - 03:31.
Complimenti!
Voto: 9!
Continuate così forza ragazzi! Avete talento da vendere...
p.s.: Occhio però ai TAG di formattazione, le prossime guide che non rispetterano le semplicissime regole descritte nelle FAQ non saranno pubblicate.
Stefano Mainardi - Founder of ILDN & CEO of Twinbit