I have one Lightroom database for my photographs, but multiple computers. Of course I want be able to edit my photos on every computer. The obvious solution is to put the catalog on a network share. But the catalog is a sqlite-Database which is build to be accessed by one process only. Because of this, Lightroom forbids to use a catalog that is located on a network share.
My solution is to rsync the catalog before Lightroom starts and sync it back, when the process terminates. To avoid conflicts, I create a lockfile during the runtime of Lightroom. Not very fancy, but this works well for me.
#!/bin/sh if [ -f /Volumes/Pictures/Lightroom/lockfile ]; then echo "Catalog is locked by" cat /Volumes/Pictures/Lightroom/lockfile exit 1 fi echo `hostname` > /Volumes/Pictures/Lightroom/lockfile rsync user@server.local:/zdata/Pictures/Lightroom/Lightroom-4-Catalog.lrcat /Users/$USER/Pictures/Lightroom/Lightroom-4-Catalog.lrcat && \ open -W -a "Adobe Photoshop Lightroom 4" --args /Users/$USER/Pictures/Lightroom/Lightroom-4-Catalog.lrcat && \ rsync /Users/$USER/Pictures/Lightroom/Lightroom-4-Catalog.lrcat user@server.local:/zdata/Pictures/Lightroom/Lightroom-4-Catalog.lrcat && \ rm /Volumes/Pictures/Lightroom/lockfile |
Hab mal kurz verbloggt, wie ich einen #Lightroom #Catalog auf mehreren Rechnern nutze: http://t.co/8CBO9Jd7iS
Hey Melle,
I want to work with Lightroom with two computers and a Nas (With all the images on it). I´think your script is exactly what I need. I´m working with Mac Os X and I´m not a terminal expert :-). Would you be able to explain how to run the script in more detail?
Cheers Slalom
@Slalom: The script syncs the library from a networkshare (user@server.local:/zdata/Pictures/Lightroom/Lightroom-4-Catalog.lrcat) to the local pictures directory, launches Lightroom, and after Lightroom terminates, the catalog is synced back.