Old:Usare Fotocamere Digitali (usb-storage): differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
mNessun oggetto della modifica
 
(10 versioni intermedie di 6 utenti non mostrate)
Riga 1: Riga 1:
L' installazione dei drivers per le schede di rete Intel� PRO/Wireless 2200BG, tra le pi� diffuse e comuni per l' architettura Centrino, � abbastanza semplice in Debian GNU/Linux.
{{Old}}
=Premessa=
 
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 kernel della serie 2.4.x (addirittura 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 una forma semplice e sintetica alla gran mole di materiale reperibile su internet.
 
Buona lettura e ... happy hacking!
 
=Da notare=
 
Una fotocamera digitale può essere vista da GNU/Linux, a seconda del modello, come un generico dispositivo di mass storage (come una chiavetta USB o un HD esterno) oppure come una vera e propria fotocamera digitale alla quale è possibile accedere tramite la libreria libgphoto.
A seconda del modello, la vostra fotocamera digitale potrà essere usata in uno solo dei due modi oppure (più raramente) in entrambi i modi.
Qualora sia possibile scegliere, consiglio di usare la soluzione con libgphoto perché in questo caso grazie a software specifici per fotocamere sarà possibile effettuare molto più facilmente operazioni di catalogazione ed archiviazione delle fotografie.
Per ulteriori informazioni vi rimando alla guida in merito scritta da [[Utente:TheNoise|The Noise]]: [[Usare Fotocamere Digitali]]


=Prerequisiti=
=Prerequisiti=
Prima di seguire quanto riportato nella guida, assicuriamoci di avere a nostra disposizioni gli headers per il nostro kernel. Se abbiamo compilato noi stessi il kernel, allora possiamo essere tranquilli, ma se stiamo usando un kernel precompilato (ad esempio quello installato durante il setup di Debian, oppure scaricato tramite APT) allora dobbiamo necessariamente scaricare il pacchetto Debian contenente gli headers.
Prendendo come esempio una installazione standard di Debian Sarge, ecco come dobbiamo procedere:
<pre>$ uname -r
2.6.8-2-386</pre>
questo significa che dobbiamo procurarci gli headers relativi a questa release del kernel:
<pre>$ apt-cache search headers 2.6.8-2-386
kernel-headers-2.6.8-2-386 - Linux kernel headers 2.6.8 on 386</pre>
A questo punto sufficiente installare il pacchetto:
<pre># apt-get install kernel-headers-2.6.8-2-386</pre>
e il gioco fatto.


=Scaricare i sorgenti del driver=
Prima di tutto avrete bisogno di un kernel con:
Questo passo si esaurisce con l' usare APT per scaricare i drivers:
* supporto generico USB per il vostro chipset;
<pre>$ apt-cache search ipw module
''(questo è talmente ovvio da non aver bisogno di spiegazioni)''
bsign - Corruption & intrusion detection using embedded hashes
* supporto USB Mass Storage;
ipw2100-source - source for the ipw2100 driver
''(questo driver permette di accedere alle periferiche di archiviazione di massa attraverso il bus USB.)''
ipw2200-source - Source for the ipw2200 driver
* supporto SCSI;
ipw2200-modules-2.6.8-2-386 - ipw2200 modules for Linux (kernel 2.6.8-2-386).
''(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.
 
=Installazione=
 
===USB Storage===
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:
 
<pre>
# tail -f /var/log/messages
Nov 11 02:47:53 kernel: usb 1-1: new full speed USB device using address 13
Nov 11 02:47:53 kernel: scsi11 : SCSI emulation for USB Mass Storage devices
Nov 11 02:47:53 kernel: Vendor: Model: DSC Rev: 1.00
Nov 11 02:47:53 kernel: Type: Direct-Access ANSI SCSI revision: 02
Nov 11 02:47:53 kernel: SCSI device sda: 32768 512-byte hdwr sectors (17 MB)
Nov 11 02:47:54 kernel: sda: assuming Write Enabled
Nov 11 02:47:54 kernel: sda:<7>usb-storage: queuecommand called
Nov 11 02:47:54 kernel: sda1
Nov 11 02:47:54 kernel: Attached scsi removable disk sda at scsi11, channel 0, id 0, lun 0
Nov 11 02:47:54 kernel: Attached scsi generic sg0 at scsi11, channel 0, id 0, lun 0, type 0
</pre>
 
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, potreste vedervi assegnare sda2, ecc...
 
Possiamo subito provare se la nostra fotocamera è accessibile provando semplicemente a montarne il filesystem:
 
<pre>
# mount -t vfat /dev/sda1 /mnt
# ls -l /mnt/
totale 16
drwxr--r-- 2 root root 16384 2004-11-11 01:47 dcim
</pre>
 
All'interno della cartella  <code>dcim</code> (o altro) troverete le vostre foto! Potrete tranquillamente navigare nelle cartelle, rinominare, spostare, copiare e cancellare i file.
 
{{box|NOTA BENE:|Per poter operare tranquillamente cambiamenti all'interno della memoria della fotocamera, è necessario seguire '''sempre''' e '''comunque''' questa procedura finito il lavoro:
# smontare il filesystem (comando umount);
# spegnere la fotocamera;
# scollegare il cavo dalla fotocamera.}}
 
 
===Automounter===
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. È molto utile per usare comodamente CDROM, floppy-drive e ... fotocamere digitali.
 
In Debian è sufficiente digitare il comando:
 
<pre>
# apt-get install autofs
</pre>
 
ed avremo a nostra disposizione sia il demone che uno script di avvio che lo controlla.
 
Ora dobbiamo editare due file.
 
Il primo è <code>/etc/auto.master</code> ed è il file di controllo generale. Tutto quello che dobbiamo fare è aggiungere alla fine del file questa riga:
 
<pre>
/misc /etc/auto.misc --timeout=30
</pre>
 
Il primo punto indica la directory in cui devono essere montati i dispositivi. È buona norma usare <code>/misc</code>, che provvederete a creare con il comando:
 
<pre>
# mkdir /misc
</pre>
</pre>
In questo caso ci interessano i sorgenti dei drivers, per cui:
<pre># apt-get install ipw2200-source</pre>
che scarica la documentazione relativa alla compilazione dei drivers, oltre a un archivio contente i sorgenti veri e propri (in /usr/src).


=Compilare i drivers=
Il secondo punto indica quale file di configurazione deve essere usato per gestire <code>/misc</code>. In questo caso si tratta di <code>/etc/auto.misc</code>.
Logghiamoci come root e spostiamoci in /usr/src
 
<pre>$ su
Il terzo punto indica il timeout (in millisecondi) che automounter attenderà prima di smontare il device quando avremo finito di usarlo.
Password:
 
# cd /usr/src/</pre>
Ora passiamo a configurare <code>/etc.auto.misc</code>.
Ora scompattiamo i sorgenti dei drivers:
Tutto quello che dobbiamo fare è aggiungere una riga che specifichi come montare il filesystem della nostra fotocamera. La linea in questione sarà qualcosa del genere:
<pre># tar xzvf ipw2200-source.tar.gz</pre>
A questo punto possiamo procedere in due modi.


==Usare module-assistant==
<pre>
Se intendiamo avvalerci dell' utility [[Pagina_di_manuale_di_module-assistant |module-assistant]], a questo punto non dobbiamo fare altro che digitare il comando:
camera -fstype=vfat,nodev,users,codepage=850,umask=000 :/dev/sda1
<pre># module-assistant a-i ipw2200</pre>
ed il gioco � fatto.
==Compilare il driver manualmente==
Se vogliamo compilare il driver manualmente, � sufficiente:
<pre>$ cd modules/ipw2200
$ fakeroot debian/rules binary-modules KSRC=/usr/src/kernel-headers-$VERSION KVERS=$VERSION
</pre>
</pre>
dove $VERSION il numero di versione del kernel che '''deve essere esattamente identico''' all' output che abbiamo ottenuto usando ''uname -r''.
Una volta compilato il driver, installiamo il driver usando '''dpkg -i nome_pacchetto_del_driver.deb'''.


=Nota per i kernels 2.6.x=
Questa linea si riferisce alla mia configurazione, ma è semplice intuire che: camera indica la directory all'interno di <code>/misc</code> 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.
Prima di poter usare il nostro driver appena compilato, dobbiamo procurarci il firmware che dovr� essere caricato da hotplug. Il firmware pu� essere scaricato dal sito [http://ipw2200.sourceforge.net/firmware.php IPW2200] e deve essere quello adatto alla versione del modulo da noi compilata. Ad esempio,
 
<pre>$ ls /usr/src |grep deb
Bene, ora siamo pronti a rilanciare autofs e a testarlo:
ipw2200-modules-2.6.8-2-386_1.0.3-1+2.6.8-16_i386.deb</pre>
ci dice che la versione del nostro modulo � la 1.0.3-1, per cui dalla pagina dei downloads di [http://ipw2200.sourceforge.net/firmware.php IPW2200] sceglieremo senza dubbio [http://ipw2200.sourceforge.net/firmware.php?fid=4 Versions v0.19-v1.0.3].
Otterremo un archivio da scompattare
<pre>$ tar xzvf ipw2200-fw-2.2.tgz</pre>
A questo punto dobbiamo semplicemente copiare i files ''ipw-2.2-*.fw'' all' interno della directory ''/usr/lib/hotplug/firmware'', ricordandoci di compiere questa operazione dopo esserci loggati come utente root.


<pre>
# /etc/init.d/autofs restart
Stopping automounter:
Stopped 8977
done.
Starting automounter: /misc.
</pre>


----
D'ora in avanti potremo accedere alla nostre foto semplicemente entrando all'interno di <code>/misc/camera</code>, sia da console che usando la vostra interfaccia grafica preferita.
Autore: [[Utente:Keltik|keltik]] 13:50, Set 12, 2005 (EDT)
[[Categoria:Hardware]]

Versione attuale delle 15:30, 7 dic 2019

Emblem-important.png Attenzione. Questa guida è obsoleta. Viene mantenuta sul Wiki solo per motivi di natura storica e didattica.


Premessa

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 kernel della serie 2.4.x (addirittura 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 una forma semplice e sintetica alla gran mole di materiale reperibile su internet.

Buona lettura e ... happy hacking!

Da notare

Una fotocamera digitale può essere vista da GNU/Linux, a seconda del modello, come un generico dispositivo di mass storage (come una chiavetta USB o un HD esterno) oppure come una vera e propria fotocamera digitale alla quale è possibile accedere tramite la libreria libgphoto. A seconda del modello, la vostra fotocamera digitale potrà essere usata in uno solo dei due modi oppure (più raramente) in entrambi i modi. Qualora sia possibile scegliere, consiglio di usare la soluzione con libgphoto perché in questo caso grazie a software specifici per fotocamere sarà possibile effettuare molto più facilmente operazioni di catalogazione ed archiviazione delle fotografie. Per ulteriori informazioni vi rimando alla guida in merito scritta da The Noise: Usare Fotocamere Digitali

Prerequisiti

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.

Installazione

USB Storage

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:

# tail -f /var/log/messages
Nov 11 02:47:53 kernel: usb 1-1: new full speed USB device using address 13
Nov 11 02:47:53 kernel: scsi11 : SCSI emulation for USB Mass Storage devices
Nov 11 02:47:53 kernel: Vendor: Model: DSC Rev: 1.00
Nov 11 02:47:53 kernel: Type: Direct-Access ANSI SCSI revision: 02
Nov 11 02:47:53 kernel: SCSI device sda: 32768 512-byte hdwr sectors (17 MB)
Nov 11 02:47:54 kernel: sda: assuming Write Enabled
Nov 11 02:47:54 kernel: sda:<7>usb-storage: queuecommand called
Nov 11 02:47:54 kernel: sda1
Nov 11 02:47:54 kernel: Attached scsi removable disk sda at scsi11, channel 0, id 0, lun 0
Nov 11 02:47:54 kernel: Attached scsi generic sg0 at scsi11, channel 0, id 0, lun 0, type 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, potreste vedervi assegnare sda2, ecc...

Possiamo subito provare se la nostra fotocamera è accessibile provando semplicemente a montarne il filesystem:

# mount -t vfat /dev/sda1 /mnt
# ls -l /mnt/
totale 16
drwxr--r-- 2 root root 16384 2004-11-11 01:47 dcim

All'interno della cartella dcim (o altro) troverete le vostre foto! Potrete tranquillamente navigare nelle cartelle, rinominare, spostare, copiare e cancellare i file.

Info.png NOTA BENE:
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.


Automounter

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. È molto utile per usare comodamente CDROM, floppy-drive 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 file.

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

Il primo punto indica la directory in cui devono essere montati i dispositivi. È 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 è aggiungere una riga che specifichi come montare il filesystem della nostra 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:

# /etc/init.d/autofs restart
Stopping automounter:
Stopped 8977
done.
Starting automounter: /misc.

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.