Wenn Sie bereits Fotos auf einer anderen HDD oder SSD haben und möchten, dass Immich unter ZimaOS sie indexiert, ohne sie in die normale Upload-Bibliothek von Immich zu verschieben, verwenden Sie eine externe Bibliothek. Der Community-Thread vom Oktober 2024 bestätigte diesen Ablauf: Machen Sie zunächst den ZimaOS-Hostordner für den immich-server-Container verfügbar und fügen Sie anschließend den entsprechenden containerseitigen Pfad in der Immich-Administration hinzu.
Dies unterscheidet sich von der Änderung des primären Upload-Speicherorts von Immich. Eine spätere Antwort im selben Thread fragte, ob die externe Festplatte zum alleinigen Speicherort für alle zukünftigen Immich-Uploads werden könne, doch diese Frage wurde im ursprünglichen Thread nicht beantwortet. Die aktuelle Immich-Dokumentation behandelt dies als zwei getrennte Abläufe: externe Bibliotheken für vorhandene Dateien und UPLOAD_LOCATION/benutzerdefinierte Speicherpfade für von Immich verwaltete Uploads.
Was der ursprüngliche Thread tatsächlich gelöst hat
Der ursprüngliche Autor wollte, dass Immich Fotos erkennt, die außerhalb des Standardspeicherorts abgelegt sind. Später meldete er, dass diese Abfolge erfolgreich war:
- Öffnen Sie die Immich-Einstellungen in ZimaOS.
- Öffnen Sie den Dienst immich-server.
- Fügen Sie den ZimaOS-Hostordner als Docker-Volume hinzu.
- Verwenden Sie einen containerseitigen Pfad wie
/home/user/photos1. - Öffnen Sie die Immich-Administration.
- Erstellen Sie eine externe Bibliothek und fügen Sie denselben containerseitigen Pfad hinzu.
Ein späterer Nutzer bestätigte ausdrücklich, dass diese Lösung bei ihm funktioniert hat.
Hostpfad und Immich-Pfad sind unterschiedlich
Das Konzept der Docker-Zuordnung lautet:
ZimaOS-Hostordner → Immich-Containerordner
Zum Beispiel:
/media/Photos:/home/user/photos1:ro
Immich scannt den ZimaOS-Hostpfad nicht direkt. Es kann nur den Pfad scannen, der innerhalb seines Containers sichtbar ist:
/home/user/photos1
Für vorhandene Fotoarchive den schreibgeschützten Modus verwenden
Die ursprüngliche Lösung der Community verwendete :ro. Die aktuelle Immich-Dokumentation empfiehlt weiterhin schreibgeschützte Mounts, wenn Immich die Dateien nur indexieren soll:
/media/Photos:/home/user/photos1:ro
Der schreibgeschützte Modus verhindert, dass Immich Dateien löscht oder Sidecar-Metadaten in den Quellordner schreibt.
Aktuelle Dokumentation zu externen Immich-Bibliotheken
Die externe Bibliothek in Immich erstellen
Nachdem der Mount vorhanden ist, öffnen Sie Immich mit einem Administratorkonto und gehen Sie zum Bereich „Externe Bibliotheken“. Erstellen Sie eine Bibliothek, wählen Sie deren Besitzer aus und fügen Sie den Containerpfad hinzu:
/home/user/photos1
Führen Sie anschließend einen Scan aus. Immich sollte mit der Indexierung der Fotos sowie der Erstellung von Miniaturansichten und Metadatenaufträgen beginnen.
Überprüfen, ob der Pfad innerhalb des Containers vorhanden ist
Wenn Immich den Bibliothekspfad ablehnt, vergewissern Sie sich, dass der Mount sichtbar ist in immich-server. Das Kernproblem des ursprünglichen Threads bestand nicht lediglich darin, einen Ordner in der Immich-Oberfläche auszuwählen; Docker musste diesen Ordner zunächst innerhalb des Containers verfügbar machen.
Die aktuelle Immich-Dokumentation macht dieselbe Voraussetzung ausdrücklich: Der gemountete Pfad muss innerhalb des Containers vorhanden sein, bevor er als externe Bibliothek hinzugefügt werden kann.
Den historischen Schritt im Datenbank-Tab nicht blind kopieren
Im ursprünglichen Beitrag aus dem Jahr 2024 wurde außerdem empfohlen, denselben Pfad im Tab „Immich-Datenbank“ hinzuzufügen. Diese Anweisung sollte heute mit Vorsicht betrachtet werden.
Das aktuelle Immich-Upstream-Projekt trennt:
-
Foto-/Videospeicherung über
UPLOAD_LOCATIONoder externe Bibliotheks-Bind-Mounts; -
Speicher der PostgreSQL-Datenbank über
DB_DATA_LOCATION.
Der Speicherort der Datenbank ist nicht dasselbe wie der Speicherort der Fotobibliothek. Binden Sie keinen beliebigen Fotoordner in PostgreSQL ein, nur weil das alte ZimaOS-Paket einen Tab für den Datenbankdienst angezeigt hat.
Externe Bibliothek vs. primärer Immich-Speicher
| Ziel | Verwenden Sie |
|---|---|
| Bereits andernorts gespeicherte Fotos indizieren | Externe Bibliothek |
| Künftige Immich-Uploads auf einem anderen Laufwerk speichern | Immich-Upload-/Speicherort ändern |
Der Quellthread bestätigte den ersten Fall, nicht den zweiten.
Wenn Sie möchten, dass das externe Laufwerk Immichs Hauptspeicher wird
Das aktuelle Immich-Docker-Compose verwendet:
UPLOAD_LOCATION=./library
und bindet diesen Hostpfad ein in /data innerhalb von immich-server. Die aktuelle Dokumentation zu benutzerdefinierten Speicherorten erklärt, wie Sie von Immich verwaltete Daten an einen anderen Host-Speicherort verschieben und dabei die erwarteten Containerpfade beibehalten.
Benutzerdefinierte Immich-Speicherorte
Wenn wichtige Fotos bereits in Immich vorhanden sind, sichern Sie sowohl die Datenbank als auch das Dateisystem, bevor Sie den primären Speicherort ändern.
Datenbankanforderungen getrennt behandeln
Die PostgreSQL-Datenbank hat andere Speicheranforderungen als Fotodateien. Die aktuelle Immich-Dokumentation besagt, dass Netzwerkfreigaben für den Datenbankpfad nicht unterstützt werden und die Datenbank ein geeignetes lokales Dateisystem verwenden sollte.
Verschieben Sie PostgreSQL nicht einfach deshalb, weil Sie eine externe Fotobibliothek hinzufügen.
Externe Bibliotheken benötigen weiterhin unabhängige Sicherungen
Immich kopiert die ursprünglichen Dateien externer Bibliotheken nicht in seinen normalen verwalteten Speicher. Die Originale bleiben auf dem externen Laufwerk. Wenn diese Dateien vom Laufwerk entfernt werden, kann Immich sie nach einem erneuten Scan als fehlend markieren oder aus der aktiven Bibliothek entfernen.
Sichern Sie das Quelllaufwerk unabhängig. Die Metadaten in Immichs Datenbank ersetzen keine Dateisystemsicherung.
Checkliste für externe Immich-Bibliotheken unter ZimaOS
- Ermitteln Sie den vorhandenen ZimaOS-Hostordner, der die Fotos enthält.
- Öffnen Sie die aktuellen Einstellungen der Immich-App bzw. des Containers.
- Mounten Sie den Hostordner in
immich-server. - Bevorzugen Sie
:rofür ein Archiv, das Immich nicht ändern soll. - Verwenden Sie einen eindeutigen Containerpfad, zum Beispiel
/home/user/photos1oder/mnt/media/photos. - Öffnen Sie in Immich Verwaltung → Externe Bibliotheken.
- Fügen Sie den exakten containerinternen Pfad hinzu.
- Führen Sie einen Bibliotheksscan durch.
- Verwechseln Sie dies nicht mit dem Verschieben von Immichs primärem
UPLOAD_LOCATION. - Sichern Sie das externe Laufwerk separat.
FAQ zu externem Speicher in Immich
Hat die ursprüngliche Lösung funktioniert?
Ja. Der ursprüngliche Autor meldete Erfolg, und ein anderer Nutzer bestätigte später, dass derselbe Ablauf bei ihm funktioniert hat.
Wird das externe Laufwerk durch die externe Bibliothek zu Immichs Haupt-Upload-Speicher?
Nein. Externe Bibliotheken indizieren Dateien, die bereits außerhalb von Immichs verwaltetem Upload-Speicher vorhanden sind.
Welchen Pfad gebe ich in Immich ein?
Verwenden Sie den containerinternen Pfad aus dem Docker-Mount, nicht den ZimaOS-Hostpfad.
Soll ich :ro verwenden?
Ja, wenn der externe Ordner ein Archiv ist, das Immich nur lesen soll. Entfernen Sie den Nur-Lesen-Modus nur, wenn Immich dort absichtlich Dateien ändern oder löschen soll.
