LinkedPhotoImport
Requirements:
- Gather photos from several locations (Windoze PC's) into one linux-based central media repository (aka mediacenter)
- Leave the photos at the original locations
- Anticipate some maintenance of photos at the original locations
- Use gallery (a great LAMP webapp) to manage the mediacenter photos
- Minimize duplication on the mediacenter
- Management should include creation of a public directory for shared photos
- Access to public photos via the web and for screensavers
Solution components:
- gallery on mediacenter
- xscreensaver on mediacenter
- Windows nightly batch-file task to copy new photos to mediacenter
- linked photo import script
- Four directories on mediacenter archive - holds original photos dump - holds newest photos and symlinks to old in archive managed - holds symlinks to archive public - symlink to public directory in managed
Process:
First, create the directory structure on mediacenter:
mkdir /media/photos/unmanaged mkdir /media/photos/unmanaged\archive mkdir /media/photos/unmanaged\dump_cameras_here mkdir /media/photos/managed mkdir /media/photos/public
Set up a samba share for dump_cameras_here.
Next, set up a task on each of the Windoze PC's to copy files to the share every night. This will only copy files that have not already been copied:
xcopy /D /Y /S c:\myphotos\* \\mediacenter\dump_cameras_here\
You might as well run the task next.
Now to set up the mediacenter. Install gallery, and configure it to store its data directory here:
/media/photos/managed/gallery-data
Now all we need is the script! You'll have a lot of photos in the dump directory at this time. The script will take those photos, import them, and move them to the archive dir. It will also set up symlinks from dump_cameras_here to archive, so the nightly copies from the Windoze boxes only copy new photos. It will also find the copies of the photos in the gallery-data directory and replace them with symlinks to the photos in archive.
You're ready to manage your photos in gallery now. To share:
- Make a top-level public album in gallery.
- Set the permissions to allow Everybody to view it
- Remove permissions from other top-level albums
- Create a symlink to /media/photos/managed/gallery-data/albums/public in a convenient location
- Share the symlink over samba, etc.
- Move photos into and out of the public album in gallery, as desired, and they'll become available in the public share.