digiKam
Offline docs: K > Applications > Help > Application Manuals > Graphics > digiKam
digiKam > Using digiKam > Using a Digital Camera With digiKam > Automatic Destination Albums Creation
Online docs: http://docs.kde.org/development/en/extragear-graphics/digikam/using-camera.html
If your camera provides information about the date of the photograph's
taking, digiKam can use this to automatically create subalbums in the
destination Album when it is downloaded...
Plug in a device. The digiKam import window has the settings for the "Auto Creation of Albums"

--- Edit - an alternative way ---
It seems that the digiKam is limited to only one level automatic sub directories.
An earlier question from the digiKam user (https://mail.kde.org/mailman/listinfo/digikam-users) mailing list, september 2010 (http://mail.kde.org/pipermail/digikam-users/2010-September/011048.html).
A workaround is to use the ExifTool (http://www.sno.phy.queensu.ca/~phil/exiftool/#filename "Renaming and/or Moving Files"):
For example, the following command moves all images originally in
directory "DIR" into a directory hierarchy organized by
year/month/day:
exiftool "-Directory<DateTimeOriginal" -d "%Y/%m/%d" DIR
ExifTool ubuntu package: libimage-exiftool-perl.
The easy way is to download the images to the main directory and move the pictures with the ExifTool. There is also an option to add a KDE device action.
An Example with the KDE/Kubuntu
The KDE has editable device/solid actions:
The KDE has a gui to add/edit the device actions: System Settings > Device Actions.
A quick way with the commandline:
1) Making the local action directory:
mkdir -p ~/.kde/share/apps/solid/actions/
2) copying the digiKam action to work as a template:
cp /usr/share/kde4/apps/solid/actions/digikam-opencamera.desktop ~/.kde/share/apps/solid/actions/movewithexiftools.desktop
3) Editing the new action, after the edit ~/.kde/share/apps/solid/actions/movewithexiftools.desktop:
[Desktop Entry]
X-KDE-Solid-Predicate=[ [ StorageVolume.ignored == false AND StorageVolume.usage == 'FileSystem' ] OR Camera.supportedDrivers == 'gphoto' ]
Type=Service
Actions=open;
[Desktop Action open]
# %f gives StorageAccess.filePath, %d gives Block.device, %i gives UDI
Exec=konsole --workdir ~/Pictures --noclose -e exiftool "-Directory<DateTimeOriginal" -d "%Y/%m/%%d" "%f"
Icon=camera-photo
Name=Move with the ExifTool
4) Reboot
Testing with few pictures
Now there is a new option: Move with the ExifTool.

The Device Action is showing the success/failure with the terminal:

The sub directories have the /YYYY/MM/DD format

Working at here may or may not work there.