Jeśli ZimaOS zwraca mkdir: nie można utworzyć katalogu „/mnt/...”: System plików jest tylko do odczytu, nie zakładaj, że sam zewnętrzny dysk jest uszkodzony. W wątku społeczności IceWhale z października 2025 roku użytkownik stosował konwencjonalny /mnt procesu w ZimaOS, gdzie system plików systemu i układ pamięci masowej są zarządzane inaczej.
Najważniejsza lekcja z tego wątku polega na rozdzieleniu dwóch zadań: najpierw upewnij się, że ZimaOS ma stabilną ścieżkę hosta dla zewnętrznego dysku HDD, a następnie zmapuj tę ścieżkę hosta do kontenera Immich. Immich może zweryfikować ścieżkę zewnętrznej biblioteki tylko wtedy, gdy istnieje ona wewnątrz jego kontenera. Aktualna dokumentacja Immich nadal opiera się na tej samej zasadzie Dockera, choć nie wymaga już konkretnie historycznej ścieżki kontenera /external_library.
Dlaczego katalog /mnt był tylko do odczytu w tym przypadku społecznościowym
Autor oryginalnego wpisu próbował utworzyć:
/mnt/terrabay1
/mnt/terrabay2
/mnt/terrabay3
/mnt/terrabay4
ale ZimaOS zwrócił:
mkdir: nie można utworzyć katalogu „/mnt/terrabay4”: System plików jest tylko do odczytu
Zima-Giorgio odradzał bezpośrednią modyfikację plików systemowych ZimaOS, chyba że odbywa się ona pod nadzorem eksperta lub w środowisku testowym. Ta sama odpowiedź wskazywała, że dyski i udziały zarządzane przez ZimaOS zwykle pojawiają się w ścieżkach znajdujących się poniżej /media i można je wyświetlić w terminalu.
Sprawdź, jak ZimaOS zamontował już dysk
Przed odmontowaniem lub edycją /etc/fstab, sprawdź bieżący stan pamięci masowej:
lsblk -f
ls /media
df -h
W wątku źródłowym ZimaOS udostępniał już cztery dyski za pośrednictwem ścieżek podobnych do:
/media/sdb-ata-ST2000VN003-3CW1
/media/sdc-ata-ST2000VN003-3CW1
Jeśli dysk jest już zamontowany i działa stabilnie za pośrednictwem ZimaOS, ponowne ręczne montowanie może w ogóle nie być potrzebne. Najprostsza konfiguracja Immich często polega na użyciu istniejącej ścieżki hosta ZimaOS po lewej stronie mapowania woluminu Dockera.
Historyczna ręczna metoda montowania opisana przez autora
Autor oryginalnego wpisu ostatecznie udokumentował ręczną metodę z użyciem /etc/fstab poniższe wpisy i punkty montowania /DATA. Na przykład:
sudo mkdir -p /DATA/Enclosure/Bay1
sudo mount /dev/sdb /DATA/Enclosure/Bay1
a następnie polecenia /etc/fstab wpisu z rzeczywistym identyfikatorem UUID dysku:
UUID=YOUR-REAL-UUID /DATA/Enclosure/Bay1 ext4 defaults,nofail,x-systemd.automount 0 0
a następnie:
sudo systemctl daemon-reload
sudo mount -a
Było to społecznościowe obejście problemu w ZimaOS z 2025 roku, a nie uniwersalna, aktualna rekomendacja. Nie kopiuj identyfikatorów UUID ani nazw urządzeń z tego wątku, takich jak /dev/sdb; należą do sprzętu tego użytkownika i mogą się zmieniać.
Pierwotnym problemem był drobny błąd w pisowni
Autor odkrył później, że Apple Notes automatycznie zmienił pierwszą literę niektórych skopiowanych wierszy poleceń na wielką. W systemie Linux w poleceniach i ścieżkach rozróżniana jest wielkość liter, więc polecenie skopiowane jako Mkdir zamiast mkdir, lub ścieżka ze zmienioną wielkością liter, spowoduje błąd.
Podczas przygotowywania poleceń terminala użyj edytora zwykłego tekstu i przed wklejeniem sprawdź wielkość liter.
Biblioteki zewnętrzne Immich wymagają dwóch oddzielnych kroków
Późniejsze odpowiedzi wyjaśniły architekturę:
-
ZimaOS/Docker: zmapuj ścieżkę hosta zewnętrznego dysku twardego do kontenera
immich-server. - Immich: utwórz bibliotekę zewnętrzną, używając ścieżki po stronie kontenera z kroku 1.
Jeśli wykonany zostanie tylko krok 2, walidacja w Immich zakończy się niepowodzeniem, ponieważ ścieżka nie istnieje wewnątrz jego kontenera.
Przykład ZimaOS z 2025 roku używał /external_library
Członek społeczności o nazwie sny użył koncepcyjnie mapowania podobnego do:
Ścieżka hosta ZimaOS: /media/USB_1/sny
Ścieżka w Immich: /external_library
Następnie użytkownik dodał w Immich:
/external_library
jako ścieżkę importu biblioteki zewnętrznej.
Aktualny Immich nie wymaga nazwy /external_library
Aktualna dokumentacja Immich jest bardziej elastyczna. Oficjalny przewodnik dotyczący bibliotek zewnętrznych pokazuje dowolne ścieżki hosta i kontenera, na przykład:
immich-server:
volumes:
- /home/user/photos1:/home/user/photos1:ro
- /mnt/photos2:/mnt/photos2:ro
Najważniejsza zasada jest taka, że ścieżka wprowadzona w Immich musi dokładnie odpowiadać ścieżce po stronie kontenera. Nazwa /external_library była wygodną konwencją w przykładzie społeczności ZimaOS, a nie wymaganiem projektu Immich.
Preferuj montowanie bibliotek archiwalnych tylko do odczytu
Aktualna dokumentacja Immich zaleca dodanie :ro gdy biblioteka zewnętrzna powinna być używana przez Immich wyłącznie do odczytu:
/host/photos:/external_library:ro
Tryb tylko do odczytu wyłączaj wyłącznie wtedy, gdy świadomie chcesz, aby Immich usuwał zewnętrzne zasoby lub zapisywał metadane pomocnicze XMP. Zamontowanie archiwum tylko do odczytu zmniejsza ryzyko zmodyfikowania oryginalnych plików przez aplikację.
Wiele bibliotek zewnętrznych
Społeczność zasugerowała osobne ścieżki kontenerów, takie jak:
/external_library/usb1
/external_library/usb2
/external_library/photos
Obecna wersja Immich obsługuje również wiele punktów montowania. Każda ścieżka biblioteki musi być zamontowana w immich-server a następnie dodana na stronie administracji Immich: Zewnętrzne biblioteki.
Czy Immich kopiuje zdjęcia z zewnętrznej biblioteki do swojej głównej biblioteki?
Nie. Aktualna dokumentacja Immich opisuje zewnętrzne biblioteki jako zasoby, które pozostają w swojej pierwotnej lokalizacji systemu plików. Immich je skanuje, indeksuje metadane, tworzy rekordy w bazie danych oraz zasoby pochodne, takie jak miniatury, i wyświetla je na osi czasu.
Jeśli zewnętrzny plik zniknie z dysku, Immich może oznaczyć zasób jako brakujący lub przenieść go do kosza po ponownym skanowaniu. Zawsze twórz niezależne kopie zapasowe zewnętrznego dysku.
Zachowaj ostrożność podczas edycji /etc/fstab w ZimaOS
Ręczna metoda opisana w wątku źródłowym działała na tyle dobrze, by utworzyć stabilne ścieżki dysku, ale autor później zgłosił dodatkowe problemy z USB i migracją. Nieprawidłowy /etc/fstab wpis może również zakłócić uruchamianie systemu lub spowodować niedostępność pamięci.
Jeśli ZimaOS już zarządza dyskiem i udostępnia stabilną /media/... ścieżka — preferuj użycie tej istniejącej ścieżki w montowaniu bind Immich zamiast niepotrzebnego przebudowywania układu pamięci hosta.
Lista kontrolna zewnętrznego dysku Immich w ZimaOS
- Sprawdź
lsblk -f,ls /media, a następnie Pamięć ZimaOS. - Nie zakładaj, że potrzebujesz tradycyjnego
/mntpunkt montowania. - Jeśli istnieje już ścieżka zarządzana przez ZimaOS, preferuj jej użycie.
- Zamontuj ścieżkę hosta w
immich-serverkontener. - Użyj jasnej ścieżki kontenera, takiej jak
/external_library/photos. - Użyj
:rogdy Immich musi tylko odczytywać archiwum. - Dodaj dokładną ścieżkę kontenera w Immich: Administracja → Zewnętrzne biblioteki.
- Przeskanuj nową bibliotekę i sprawdź, czy zadania są wykonywane.
- Twórz kopie zapasowe plików zewnętrznej biblioteki niezależnie od Immich.
FAQ dotyczące zewnętrznego dysku Immich w ZimaOS
Dlaczego nie mogę utworzyć /mnt/terrabay1 w ZimaOS?
W opisanym przypadku system plików ZimaOS odrzucał tam operacje zapisu. ZimaOS już zarządzał pamięcią zewnętrzną za pomocą własnych ścieżek przechowywania, w tym ścieżek znajdujących się pod /media.
Czy muszę edytować /etc/fstab?
Nie zawsze. Autor źródła użył fstab do niestandardowego układu montowania opartego na UUID, ale jeśli ZimaOS już niezawodnie montuje dysk, użycie istniejącej ścieżki hosta jest prostsze i mniej inwazyjne.
Czy ścieżka Immich musi mieć wartość /external_library?
Nie. Była to konwencja społeczności ZimaOS. Obecna wersja Immich pozwala używać dowolnych zamontowanych ścieżek, pod warunkiem że w ustawieniach zewnętrznej biblioteki zostanie wprowadzona ta sama ścieżka kontenera.
Czy zewnętrzna biblioteka Immich kopiuje moje oryginały?
Nie. Pliki pozostają w swojej pierwotnej zewnętrznej lokalizacji; Immich je indeksuje oraz tworzy powiązane metadane i zasoby pochodne.
