If you’re using Immich to manage your photos, you may have discovered that sharing photos between users isn’t as straightforward as you’d like. Many users, particularly couples or families, want a shared folder where both parties can upload photos that are automatically visible to each other, complete with face recognition and smart search capabilities.

While Immich has shared albums, they don’t quite solve this problem. The photos don’t appear in search and aren’t processed for face recognition or analysis. What we really need is a true shared library where both users have full access to the same photos with all of Immich’s powerful features.
Here’s a solution using external libraries and symlinks that creates a pseudo-shared folder between Immich users.

Important: If you rely on uploading photos through the Immich app on your phone this method won’t work for you. You’ll need to sync the photos some other way and copy them into an external library. I export my photos from Lightroom Classic on my laptop, and Syncthing syncs them to the Immich server. Everything is automated from the moment I publish them to the shared directory.

This approach uses external libraries and symbolic links (symlinks) to create a shared photo directory that appears in both users’ Immich libraries. Each user uploads to their own “shared” directory, and through symlinks, those photos automatically appear in the other person’s library as well.
Requirements
- Access to the Immich server’s file system (typically via SSH or direct access).
- External libraries enabled for each user.
- Basic familiarity with Linux commands.
Step-by-Step Setup
Let’s walk through this with an example using John and Mary, a couple who want to share their photos.
1. Set Up External Libraries
First, both users need to have external libraries configured in Immich. For this example, let’s say the external library on the server is this folder:
/mnt/external_library/
It will be mounted in Immich at /external_library/ in this example.
Create a directory structure like this:
/mnt/external_library/
├── john/
│ └── shared/
└── mary/
└── shared/
2. Configure the External Libraries in Immich
In Immich’s admin web interface:
- For John, add an external library pointing to
/external_library/john - For Mary, add an external library pointing to
/external_library/mary
3. Create the Symlinks
This is where the magic happens. We’ll create symbolic links that connect each person’s shared directory to the other person’s external library.
Log in to the Immich server and run these commands:
cd /mnt/external_library/john/
ln -s ../mary/shared mary_files
cd ../mary
ln -s ../john/shared john_files
4. Upload and Scan
Now when John uploads photos to /mnt/external_library/john/shared/, they will:
- Appear in his own Immich library
- Automatically appear in Mary’s library (via the symlink at
/mnt/external_library/mary/john_files)
The same works in reverse for Mary’s uploads.
After uploading, trigger a scan of the external libraries in Immich, and both users will see the shared photos.

How It Works
A symbolic link is like a shortcut that points to another location in the filesystem. When Mary’s Immich library scans /external_library/mary/, it finds the john_files symlink and follows it to John’s actual shared directory. From Immich’s perspective, it looks like Mary has those photos in her library, but they’re actually stored in John’s directory.
Advantages
- Full Immich functionality: Both users get face recognition, smart search, and all other Immich features on the shared photos
- Simple uploads: Just upload to your own shared directory—no manual copying needed
- Bidirectional sharing: Both users can add photos that the other will see
- Single source of truth: Each photo is stored once (by the person who uploaded it)
Disadvantages
- Duplicate processing: Immich will process each shared photo twice—once for each user. This means:
- Face recognition runs twice.
- Smart search/ML classification runs twice.
- More CPU and storage usage for thumbnails and metadata.
- File ownership: Photos remain in the uploader’s directory. If John deletes his Immich library or account, Mary loses access to his photos.
- Requires server access: You need command-line access to the server to set up symlinks.
Important Notes
- Upload directly to external libraries: Don’t upload to your main Immich library through the app. Upload directly to the shared directory in your external library.
- Backup strategy: Make sure your backup solution covers the external library directories.
- Permissions: Ensure that the Immich container has proper read permissions for all directories involved.

Conclusion
While this solution requires some technical setup and comes with the overhead of duplicate processing, it provides a practical way to share photos between Immich users with full functionality. This approach has proven reliable for my wife and me, who wanted a shared family photo library without waiting for native multi-user library support in Immich.
If you’re comfortable with the command line and the tradeoff of duplicate processing, this solution provides the shared photo experience many users are looking for.
