Digital camera
Time to replay | 20 min |
Example Distro | SUSE Linux 11.1 |
Type | Howto |
This article is about how you can use digital cameras that have a USB connection with Linux. There are two types of digital cameras: mass storage cameras and PTP cameras. With mass storage devices you connect the camera via USB and can read the photographs as if the camera was a USB hard disk. With PTP cameras, you need software to read the pictures. On most cameras, you can switch if you want to use them as PTP or mass storage cameras. In both cases, you can pull out the storage chip and use it in e.g. and SD-card-reader which will behave like a USB disk. This article uses SUSE Linux 11.1 as example, but it should work same or similar on every Linux distribution.
Contents
Choosing a digital camera
- does it have a menu structure that you understand?
- what resolution has it (MegaPixel)?
- can you use SD cards (many computers have slots for them)?
- is it capable to use SDHC cards?
- can you charge it using a standard adapter (micro USB)?
- do you want it to be watertight?
Thanks for the a new challenge you have unorevced in your blog post. One thing I would really like to discuss is that FSBO associations are built after a while. By introducing yourself to the owners the first saturday their FSBO can be announced, prior to the masses begin calling on Wednesday, you create a good interconnection. By sending them tools, educational components, free accounts, and forms, you become a great ally. By using a personal interest in them in addition to their scenario, you develop a solid connection that, many times, pays off in the event the owners decide to go with an adviser they know along with trust preferably you.
Mass storage cameras
Make sure your system log is empty. open a console and type
dmesg -c
Now switch on and connect your camera to a USB port. Then type
dmesg
At the end of dmesg you should see something like
usb 8-3: new high speed USB device using ehci_hcd and address 3 usb 8-3: configuration #1 chosen from 1 choice scsi5 : SCSI emulation for USB Mass Storage devices usb-storage: device found at 3 usb-storage: waiting for device to settle before scanning usb 8-3: New USB device found, idVendor=054c, idProduct=0010 usb 8-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 8-3: Product: Sony DSC usb 8-3: Manufacturer: Sony scsi 5:0:0:0: Direct-Access Sony Sony DSC 6.00 PQ: 0 ANSI: 0 CCS sd 5:0:0:0: [sdc] 1953792 512-byte hardware sectors: (1000MB/954MiB) sd 5:0:0:0: [sdc] Write Protect is off sd 5:0:0:0: [sdc] Mode Sense: 00 00 00 00 sd 5:0:0:0: [sdc] Assuming drive cache: write through sd 5:0:0:0: [sdc] 1953792 512-byte hardware sectors: (1000MB/954MiB) sd 5:0:0:0: [sdc] Write Protect is off sd 5:0:0:0: [sdc] Mode Sense: 00 00 00 00 sd 5:0:0:0: [sdc] Assuming drive cache: write through sdc: sdc1 sd 5:0:0:0: [sdc] Attached SCSI removable disk sd 5:0:0:0: Attached scsi generic sg4 type 0 usb-storage: device scan complete
That means your camera's pictures are available on device /dev/sdc1. If you are flooded by dmesg's messages, you can also look at it using
# hwinfo --block --short disk: /dev/sda SAMSUNG HD103UJ /dev/sdb WDC WD3200AAKS-7 /dev/sdc Sony DSC partition: /dev/sda1 Partition /dev/sdb1 Partition /dev/sdb2 Partition /dev/sdc1 Partition cdrom: /dev/sr0 HL-DT-ST DVD-ROM GDRH20N /dev/sr1 TSSTcorp DVD+-RW TS-H653B
You can now mount /dev/sdc1 to /mnt/camera:
sudo mkdir -p /mnt/camera sudo mount /dev/sdc1 /mnt/camera
Now you can find your pictures and movies on /mnt/camera.
PTP cameras
If you have a PTP USB digital camera, you can get all its pictures transferred with gphoto2. So build and install gphoto2, then open a console and type
mkdir photos cd photos gphoto2 --get-all-files
TroubleShooting
Symptom: When trying to mount your camera, you get
mount: unknown filesystem type 'vfat'
Reason: Your kernel does not have vfat support compiled in nor does it have vfat compiled as a module. The following shows how it should look like:
# cat /proc/filesystems | grep vfat vfat # lsmod | grep vfat vfat 11752 1 fat 53592 1 vfat # zcat /proc/config.gz | grep -i fat # DOS/FAT/NT Filesystems CONFIG_FAT_FS=m CONFIG_VFAT_FS=m CONFIG_FAT_DEFAULT_CODEPAGE=437 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
Solution: Install a kernel with vfat support, best use the one from your distribution. SUSE Linux 11.1 is known to work.
rescue pics from SD card
photorec is contained in the package "testdisk"