A Linux newbee with a digital camera (USB) used to work with Microsoft Windows is familiar that the operating system identifies the digital camera after connection with the computer. In Linux however this isn't always the case.
However, it is much simpler than one would expect. Aside from this HOWTO being specific towards the Canon Ixus 50 (also called Canon Powershot SD400), this HOWTO can be used for most digital cameras.
To detect as root what kind of camera is connected at the USB interface:
Output example (date time localhost removed):
kernel: usb 5-1: USB disconnect, address 4 kernel: usb 5-1: new high speed USB device using address 5 usb.agent: libgphoto2: loaded successfully
In this example it's clear that the camera is using the specific protocol, called gphoto2; the gphoto2 digital camera command-line client, which can be used by applications to access various digital camera models. An additional interesting package gtkam, is a graphical application based on GTK+ for digital still cameras supported by gphoto2. More information can be found an gphoto.org.
apt install gphoto2 gtkam
In order to verify if your camera is detected correctly, you can execute:
Model Port ---------------------------------------------------------- Canon Digital IXUS 50 (PTP mode) usb: Canon Digital IXUS 50 (PTP mode) usb:005,003
For the command line application gphoto2 I refer to it's self explaining manual page, the graphical application gtkam is completely self explaining, including picture preview, etc. Without any change, those applications should be started as root. In order to launch the programs as a normal user, you have to update the group settings (adding the preferred usernames to the camera group).
laptop:~# cat /etc/group ... camera:x:107:username1,username2 ...
For viewing the pictures after uploading them to your Linux machine, a number of ?Thumbnail Viewer programs are available. The lightweight ?gqview program can be used, or the ?gimageview or ?gthumb viewers.
apt install gimageview