MacOS – Symbolic linking to Photos from another user

macospermissionphotos

I am running El Capitan Beta, but this question would also apply to Yosemite.

I want another account's (account B) "Photos" app to link to my primary account's (account A) Photos library without moving my library to an outside drive without permissions. I can't point the Library from the Photos App in account B to to the Library in account A. I have added Account B with full permission read and write with extended ACL permissions to account A's /User/AccountA/Pictures folder and Photos Library. Verified with ls -le.

So… the best solution I see is to create a hard link from /User/AccountB/Pictures/AccountBLibrary -> /User/AccountA/Pictures/AccountALibrary so that it always points to that inode. Can anyone see a reason NOT to do this or a better way to link the two without moving my photos library on Account A.

Edit: Well for one – you can't hard link a directory (which obviously pictures libraries are)… so to reword my question – What about soft link? (Symbolic) (Thanks fd0). And now I can see – It produces the same error (because it isn't a hard link). So… can I accomplish this?

The goal is to not duplicate photos (I use iCloud photo library, but I don't want to duplicate even "optimized" photos).

Best Answer

The iPhoto library is a package container not really a single file. There are .plist, .db and other files in the package that might get altered differentially when you open via the different accounts. This might contribute to the problems people mentioned. Crazy idea, and I haven't tried it, but it might be better to recreate the package content on the new account using symbolic links to the folders that contain the actual photos on the old account. This way all the .plist, .db and related files in the package can remain local to the new account, but you accomplish your goal of not copying the actual photos. I definitely would back up the library before giving this a try.