GästebuchIhr Eintrag in unser Gästebuch KontaktNehmen Sie Kontakt mit den Autoren auf ArchivAlle Unixwerk- Artikel seit 2003
15. November 2009

Fotos von Digitalkameras übertragen [update]

Inhalt

  1. Einleitung
  2. Was man braucht...
  3. Digitalkamera verwalten mit gtkam
  4. Benutzer-Konfiguration

 

Dieses Dokument beschreibt, wie man Fotos von einer Digitalkamera auf den Computer überträgt, wenn diese nicht als «Mass Storage Device» erkannt wird.

 

1. Einleitung

Es gibt wohl keine Digitalkamera, die keine USB-Schnittstelle hat, damit man seine schönsten Fotos direkt auf die Festplatte seines Rechners kopieren kann. Software für Windows und Mac gibt's auf einer beigelegten CD sowieso. Doch auch im Jahre 2006 fehlt meistens jeder Hinweis auf Linux. Das bedeutet aber keinseswegs, dass sich die USB-Verbindung nicht auch unter Linux nutzen lässt. Die meisten Kameras werden als «USB Mass Storage Device» unter Linux erkannt, so dass die Kamera einfach wie eine SCSI-PLatte angesprochen werden kann:

darkstar# mount -t vfat /dev/sda1 /mnt/usb

Eine weitere Möglichkleit, seine Fotos zu übertragen ist ein USB-Karten-Leser. SD-Karte aus der Kamera nehmen, in den USB-Karteleser stecken und wie oben als SCSI-Platte ansprechen. Diese Möglichkeit besteht auch, wenn die Kamera nicht direkt angesprochen werden kann. So hatte ich es mit meiner alten Digitalkamera immer gemacht - diese hatte noch eine CompactFlash-Speicherkarte.

Da mein Kartenleser auch einen Steckplatz für SD-Karten aufweist, habe ich mir ohne weiter zu überlegen eine Canon IXUS 60 mit SD-Karte gekauft - doch konnte ich die SD-Karte nicht wie gewohnt als SCSI-Platte ansprechen. Keine Ahnung im Übrigen, warum das nicht geht...

Da die Canon auch nicht über USB-Kabel als SCSI-Platte ansprechbar ist, blieb als letzte Möglichkeit, gphoto2 zur Übertragung zu nutzen. Wie das geht, wird im Folgenden beschrieben.

 

2. Was man braucht...

Um mit gphoto2 auf die Kamera zuzgreifen, müssen zwei Pakete installiert sein. Bei vielen Distributionen mögen die bereits in der Grundausstattung vorhanden sein - bei Slackware ist dies jedoch nicht der Fall. Ein Blick auf LinuxPackages lohnt jedoch - dort gibt es Pakete für Slackware 10.2, die auch mit Slackware 11.0 problemlos zusammenarbeiten. Herunterladen und installieren -

darkstar# installpkg libgphoto2-2.2.1-i486-1kjz.tgz gphoto2-2.2.0-i486-1kjz

- und von der Kommandozeile aus kann man schon mal auf seine Kamera zugreifen. Im Falle meiner Canon IXUS 60 sieht das dann so aus:

darkstar# gphoto2 -L         
Es gibt keine Datei im Verzeichnis »/«.                                        
Es gibt keine Datei im Verzeichnis »/store_00010001«.
Es gibt keine Datei im Verzeichnis »/store_00010001/DCIM«.
Es gibt 2 Dateien im Verzeichnis »/store_00010001/DCIM/100CANON«.
#1     IMG_0005.JPG                 1402 KB 2816x2112 image/jpeg
#2     IMG_0006.JPG                 1884 KB 2816x2112 image/jpeg
Es gibt keine Datei im Verzeichnis »/store_00010001/MISC«.
Es gibt keine Datei im Verzeichnis »/store_80000001«.

Alle Digitalkameras übrigens, die wie die Canon das Picture Transfer Protocol (kurz: PTP) sprechen, werden auf jeden Fall unterstützt. Viele weitere Kameras auch - zur Zeit insgesamt 730 Modelle. Ob Ihre Kamera dabei ist, lässt sich mit

darkstar# gphoto2 --list-cameras

herausfinden. Um alle Fotos von der Kamera zu übertragen, wird der Befehl

darkstar# gphoto2 -P         
Lade »IMG_0005.JPG« aus Verzeichnis »/store_00010001/DCIM/100CANON«...         
Speichere Datei als IMG_0005.JPG                                               
Lade »IMG_0006.JPG« aus Verzeichnis »/store_00010001/DCIM/100CANON«...
Speichere Datei als IMG_0006.JPG                                               

verwendet. Die abgelegten Fotos können nun mit jedem beliebigen Bildbetrachter gesichtet werden.

Wenn Sie nach erfolgreicher Übertragung alles von der SD-Karte löschen möchten, tun Sie das mit

darkstar# gphoto2 -D         

Eine Übericht über alle Möglichkeiten von gphoto2 gibt es wie immer unter Linux mit:

darkstar# gphoto2 --help         

 

gtkam - ein GTK-Frontend zu libgphoto2

3. Digitalkamera verwalten mit gtkam

Wenn auch die Möglickeiten von gphoto2 sicherlich weitreichend sind, so ist nicht jeder ein reiner Kommandozeilen-Fetischist. Gibt's da nicht ein kleines grafisches Programm, mit dem man seine Digitalkamera verwalten kann?

Ein solches Programm ist z.B. «gtkam». Zu finden ist dieses ebenfalls auf LinuxPackages. Nach dem Herunterladen installieren Sie dieses wie gewohnt mit

darkstar# installpkg gtkam-0.1.13-i486-1alc.tgz         

Allerdings hat dieses Programm eine ganze Latte von Abhängigkeiten: unter Slackware 11.0 musste ich zwei weitere Pakete nachinstallieren, unter der älteren Slackware 10.2 sogar vier:

darkstar# installpkg libexif-gtk-0.3.5-i486-1alc.tgz
darkstar# installpkg pango-1.10.2-i486-1sdd.tgz
darkstar# installpkg glitz-0.5.6-i686-1doc.tgz
darkstar# installpkg cairo-1.2.4-i686-1doc.tgz

Was nachinstalliert werden muss, hängt natürlich auch davon ab, was auf Ihrem System so alles installiert ist. Sollte also beim Start von gtkam eine Fehlermeldung der Art

gtkam: error while loading shared libraries: libpangocairo-1.0.so.0: cannot open shared object file: No such file or directory

erscheinen, muss gegebenfalls weitere Software nachinstalliert werden. Es findet sich aber alles, was man braucht auf LinuxPackages. Falls das entsprechende Paket noch nicht für Slackware 11.0 verfügbar ist, nehmen Sie einfach das für Version 10.2 - ich hatte keine Probleme mit dieser Methode.

Haben Sie nun endlich alles Nötige installiert, dann materialisiert sich nach dem Aufruf von gtkam endlich ein neues Fenster. In diesem Fenster klicken Sie dann auf 'Camera -> Add Camera'. Im nächsten Fenster dann auf 'Erkennung' und 'OK'. Nun können Sie im gtkam-Hauptfenster durch Ihre Fotos browsen (s. Screenshot).

 

4. Benutzer-Konfiguration

Alle hier aufgeführten Befehle funktionieren zunächst nur als root. Damit sich gphoto2 und gtkam als normaler Benutzer starten lassen, werden alle Benutzer, die Zugriff auf die Kamera haben sollen, der Gruppe camera zugeordnet - dazu kann z.B. der Befehl

darkstar# vigr         

benutzt werden. Nun wird für den Kernel Hotplug-Mechanismus (für Kernel der Serie 2.4) ein Mapping erstellt, das alle libgphoto2 bekannten Kameras enthält und der Gruppe camera zuordnet:

darkstar# /usr/lib/libgphoto2/print-camera-list usb-usermap > /etc/hotplug/usb/usbcam.usermap         
darkstar# chmod +x /etc/hotplug/usb/usbcam         

Das war's bei mir. Falls bei Ihnen Probleme auftreten, hilft möglicherweise der folgende Artikel weiter: