Repository navigation
[Feature] Per-user storage locations (separate directories / drives / partitions per user) #32556
Closed
SmcBoyardee
started this conversation in
Feature Request
Replies: 1 comment
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
I have searched the existing feature requests, both open and closed, to make sure this is not a duplicate request.
The feature
Feature request
Please add official support for assigning each user their own storage location, so different users' uploaded libraries can live in different directories, drives, partitions or storage devices.
A concrete example of what I want to do: I have a single large HDD split into one partition per user (for example
/mnt/alice,/mnt/bob,/mnt/carol), and I want each user's Immich library to be stored on their own partition. I want to be able to do this natively in Immich, without bind-mount or symlink hacks.Problem
All users' uploads currently live under a single
UPLOAD_LOCATION, with a per-user subfolder inside it. For a shared instance (family, friends, small team) there is no supported way to put one user's library on a different disk or partition from another's.Why per-user partitions or disks matter:
What exists today, and why it doesn't cover this
library/<label>folder, but the folder is still inside the oneUPLOAD_LOCATION. It doesn't change which disk or partition is used.library/<user-id>: the only way to do this today. It is unsupported, depends on the internal folder layout, and is easy to break on upgrade. Immich doesn't know about it, so storage checks and the folder checks can misbehave. If a partition fails to mount, Immich can silently write that user's uploads to the parent disk instead.Proposed solution
Add an optional per-user storage root alongside the existing global default.
default: /data/upload
alice-part: /mnt/alice/immich
bob-part: /mnt/bob/immich
bulk-hdd: /mnt/hdd/immich
.immichmount verification runs per location. If a partition isn't mounted or is unavailable, uploads for that user fail safely and the admin UI shows a clear error. Immich must never silently fall back to another location, or write into an unmounted mount point on the parent disk.A minimal first version could support one root per user for newly uploaded assets only, with no migration, and build on that.
Considerations
Thanks for considering this, and for all the work on Immich!
Platform
All reactions