إذا كانت لديك صور بالفعل على قرص HDD أو SSD آخر وتريد من Immich على ZimaOS فهرستها دون نقلها إلى مكتبة الرفع المعتادة في Immich، فاستخدم مكتبة خارجية. وقد أكدت سلسلة النقاش المجتمعية من أكتوبر 2024 سير العمل هذا: أولًا إتاحة مجلد المضيف في ZimaOS لحاوية immich-server، ثم إضافة مسار الحاوية المطابق في قسم إدارة Immich.
وهذا يختلف عن تغيير موقع التخزين الأساسي لعمليات الرفع في Immich. وقد سأل رد لاحق في سلسلة النقاش نفسها عما إذا كان يمكن أن يصبح القرص الخارجي الموقع الوحيد لجميع عمليات رفع Immich المستقبلية، لكن السؤال لم يُحسم في سلسلة النقاش الأصلية. وتتعامل وثائق Immich الحالية مع هذين الأمرين كسير عملين منفصلين: المكتبات الخارجية للملفات الموجودة، و UPLOAD_LOCATION/مسارات تخزين مخصصة للملفات التي يدير Immich عمليات رفعها.
ما حلّته سلسلة النقاش الأصلية فعليًا
أراد صاحب المنشور الأصلي أن يتعرف Immich على الصور المخزنة خارج موقعه الافتراضي. وأفاد لاحقًا بنجاحه باتباع التسلسل التالي:
- افتح إعدادات Immich في ZimaOS.
- افتح خدمة immich-server.
- أضف مجلد المضيف في ZimaOS كوحدة تخزين من Docker.
- استخدم مسارًا داخل الحاوية مثل
/home/user/photos1. - افتح قسم إدارة Immich.
- أنشئ مكتبة خارجية وأضف مسار الحاوية نفسه.
أكد مستخدم لاحق صراحةً أن هذا الحل نجح معه.
يختلف مسار المضيف عن مسار Immich
مفهوم تعيين Docker هو:
مجلد المضيف في ZimaOS ← مجلد حاوية Immich
على سبيل المثال:
/media/Photos:/home/user/photos1:ro
لا يفحص Immich مسار المضيف في ZimaOS مباشرةً، بل لا يمكنه فحص سوى المسار الظاهر داخل حاويته:
/home/user/photos1
استخدم الوضع للقراءة فقط لأرشيفات الصور الحالية
استخدم الحل الأصلي للمجتمع :ro. ولا تزال وثائق Immich الحالية توصي بعمليات الربط للقراءة فقط عندما يكون المطلوب من Immich فهرسة الملفات فقط:
/media/Photos:/home/user/photos1:ro
يمنع الوضع للقراءة فقط Immich من حذف الملفات أو كتابة البيانات الوصفية الجانبية في المجلد المصدر.
وثائق Immich الحالية حول المكتبات الخارجية
إنشاء المكتبة الخارجية في Immich
بعد إنشاء نقطة الربط، افتح Immich باستخدام حساب مسؤول وانتقل إلى قسم المكتبات الخارجية. أنشئ مكتبة، وحدد مالكها، وأضف مسار الحاوية:
/home/user/photos1
ثم شغّل فحصًا. من المفترض أن يبدأ Immich بفهرسة الصور وإنشاء الصور المصغّرة ومهام البيانات الوصفية.
تحقق من وجود المسار داخل الحاوية
إذا رفض Immich مسار المكتبة، فتحقق من أن نقطة الربط ظاهرة داخل immich-server. لم تكن المشكلة الأساسية في سلسلة النقاش هي مجرد اختيار مجلد في واجهة Immich؛ بل كان على Docker أولًا إتاحة هذا المجلد داخل الحاوية.
توضح وثائق Immich الحالية هذا المتطلب نفسه صراحةً: يجب أن يكون المسار المُركَّب موجودًا داخل الحاوية قبل إضافته كمكتبة خارجية.
لا تنسخ خطوة علامة تبويب قاعدة البيانات القديمة بشكل أعمى
ذكر المنشور الأصلي لعام 2024 أيضًا ضرورة إضافة المسار نفسه في علامة تبويب قاعدة بيانات Immich. وينبغي التعامل مع هذه التعليمات بحذر حاليًا.
يفصل Immich الحالي بين:
-
تخزين الصور/الفيديوهات عبر
UPLOAD_LOCATIONأو عمليات ربط مجلدات مكتبة خارجية؛ -
تخزين قاعدة بيانات PostgreSQL من خلال
DB_DATA_LOCATION.
موقع قاعدة البيانات ليس هو نفسه موقع مكتبة الصور. لا تربط مجلد صور عشوائيًا بـ PostgreSQL لمجرد أن حزمة ZimaOS القديمة كانت تعرض علامة تبويب لخدمة قاعدة البيانات.
المكتبة الخارجية مقابل مساحة تخزين Immich الأساسية
| الهدف | استخدم |
|---|---|
| فهرسة الصور المخزنة مسبقًا في مكان آخر | مكتبة خارجية |
| اجعل عمليات التحميل المستقبلية في Immich تُخزَّن على محرك أقراص آخر | تغيير موقع تحميل/تخزين Immich |
أكد موضوع النقاش الأصلي الحالة الأولى، وليس الثانية.
إذا أردت أن يكون محرك الأقراص الخارجي هو مساحة التخزين الرئيسية في Immich
يستخدم Docker Compose الحالي في Immich:
UPLOAD_LOCATION=./library
ويربط مسار المضيف ذلك بـ /data داخل immich-server. توضّح وثائق المواقع المخصصة الحالية كيفية نقل البيانات المُدارة بواسطة Immich إلى موقع تخزين مختلف على المضيف مع الحفاظ على مسارات الحاوية المتوقعة.
مواقع التخزين المخصصة في Immich
إذا كانت صور مهمة موجودة بالفعل في Immich، فانسخ قاعدة البيانات ونظام الملفات احتياطيًا قبل تغيير موقع التخزين الأساسي.
أبقِ متطلبات قاعدة البيانات منفصلة
تتطلب قاعدة بيانات PostgreSQL مساحة تخزين مختلفة عن ملفات الصور. وتوضح وثائق Immich الحالية أن مشاركات الشبكة غير مدعومة لمسار قاعدة البيانات، وأن قاعدة البيانات ينبغي أن تستخدم نظام ملفات محليًا مناسبًا.
لا تنقل PostgreSQL لمجرد أنك تضيف مكتبة صور خارجية.
لا تزال المكتبات الخارجية بحاجة إلى نسخ احتياطية مستقلة
لا ينسخ Immich أصول المكتبة الخارجية الأصلية إلى مساحة التخزين العادية المُدارة. تبقى الملفات الأصلية على القرص الخارجي. وإذا أُزيلت تلك الملفات من القرص، فقد يضعها Immich في حالة مفقودة أو يزيلها من المكتبة النشطة بعد إعادة الفحص.
انسخ محرك المصدر احتياطيًا بشكل مستقل. فلا تُعدّ البيانات الوصفية لقاعدة بيانات Immich بديلًا عن النسخ الاحتياطي لنظام الملفات.
قائمة التحقق من مكتبة Immich الخارجية على ZimaOS
- حدّد مجلد المضيف الحالي على ZimaOS الذي يحتوي على الصور.
- افتح إعدادات تطبيق/حاوية Immich الحالية.
- اربط مجلد المضيف بـ
immich-server. - يُفضَّل
:roلأرشيف لا ينبغي لـ Immich تعديله. - استخدم مسارًا واضحًا داخل الحاوية مثل
/home/user/photos1أو/mnt/media/photos. - افتح إدارة Immich ← المكتبات الخارجية.
- أضف المسار الدقيق داخل الحاوية.
- شغّل فحصًا للمكتبة.
- لا تخلط بين هذا وبين نقل موقع Immich الأساسي
UPLOAD_LOCATION. - انسخ محرك الأقراص الخارجي احتياطيًا بشكل منفصل.
الأسئلة الشائعة حول التخزين الخارجي في Immich
هل نجح الحل الأصلي؟
نعم. أفاد المؤلف الأصلي بنجاح العملية، ثم أكد مستخدم آخر لاحقًا أن سير العمل نفسه نجح معه.
هل تجعل المكتبة الخارجية محرك الأقراص الخارجي موقع التحميل الرئيسي في Immich؟
لا. تعمل المكتبات الخارجية على فهرسة الملفات الموجودة مسبقًا خارج مساحة تخزين التحميل المُدارة بواسطة Immich.
ما المسار الذي أدخله في Immich؟
استخدم المسار داخل الحاوية المُحدَّد في تركيب Docker، وليس مسار المضيف على ZimaOS.
هل ينبغي أن أستخدم :ro؟
نعم، عندما يكون المجلد الخارجي أرشيفًا ينبغي لـ Immich قراءته فقط. أزل وضع القراءة فقط إذا كنت تريد عمدًا أن يعدّل Immich الملفات الموجودة هناك أو يحذفها.
