استخدام Docker في خادم Linux
سطر الأوامر عبر PuTTy
عندما أقوم بتشغيل ODM في جهاز محلي ، فإنه يعمل بشكل جيد مع وبدون تقسيم مجموعة البيانات ، باستخدام
docker run -it --rm -v G: / test: / datasets / code opendronemap / odm - project-path / datasets
أو
docker run -it --rm -v G: / test: / datasets / code opendronemap / odm - project-path / datasets --split 10 --split-interap 3
طالما لدي البيانات في مجلد محلي (إما محرك أقراص ثابت أو قرص خارجي USB) ، فإنه يفعل كل شيء كما هو متوقع
ولكن عندما أقوم بتشغيله على الخادم ، فإنه يعمل فقط بدون أمر الانقسام:
docker run -it --rm -v / my-server / Project folder: / datasets / code opendronemap / odm --project-path / datasets
يعمل بشكل جيد ، ولكن بمجرد أن أضيف
- تقسيم 10 - تداخل انقسام 3
إلى الكود ، يظهر لي الخطأ التالي:
[INFO] قيد التشغيل / code / SuperBuild / src / opensfm / bin / opensfm create_submodels> / var / www / data / 44a86e01-7ff1-4848-a6b6-711097026c96 / opensfm
Traceback (آخر مكالمة أخيرة):
ملف "/ code / SuperBuild / src / opensfm / bin / opensfm" ، السطر 34 ، بتنسيق
command.run (أرغس)
ملف "/code/SuperBuild/src/opensfm/opensfm/commands/create_submodels.py" ، السطر 37 ، قيد التشغيل
meta_data.load_clusters_with_neighbours ())
ملف "/code/SuperBuild/src/opensfm/opensfm/large/metadataset.py" ، السطر 154 ، في> create_submodels
os.symlink (src_relpath ، dst)
OSError: [Errno 95] العملية غير مدعومة
Traceback (آخر مكالمة أخيرة):
ملف "/code/run.py" ، السطر 56 ، بتنسيق
app.execute ()
ملف "/code/stages/odm_app.py" ، السطر 93 ، قيد التنفيذ
self.first_stage.run ()
ملف "/code/opendm/types.py" ، السطر 376 ، قيد التشغيل
self.next_stage.run (النواتج)
ملف "/code/opendm/types.py" ، السطر 357 ، قيد التشغيل
العملية الذاتية (الأهداف الذاتية ، المخرجات)
ملف "/code/stages/splitmerge.py" ، السطر 65 ، قيد المعالجة
octx.run (“create_submodels”)
ملف "/code/opendm/osfm.py" ، السطر 21 ، قيد التشغيل
(Context.opensfm_path، command، self.opensfm_project_path))
ملف "/code/opendm/system.py" ، السطر 76 ، قيد التشغيل
رفع استثناء (تنسيق "إرجاع الطفل {}". (retcode))
استثناء: عاد الطفل 1
يبدو أنه يوجد مشاكل في openfm في قراءة / كتابة مجلد النماذج الفرعية. تمت إضافتي إلى مجموعة مستخدمي عامل الإرساء ، لكن ليس لدي حقوق sudo عندما أقوم بتشغيل الأمر.
السلوك المتوقع هو أن يقوم ODM بإنشاء مجلدات النموذج الفرعي ، ومعالجة مجموعة البيانات في أجزاء ، لذلك يمكنني بعد ذلك استخراج كل نموذج فرعي orthophoto و DSM للعمل مع ملفات tif الأصغر بعد ذلك
قم بتشغيل ODM مع --split على قرص الخادم
كنت أذهب ذهابًا وإيابًا مع مشرف الخادم ، وأعتقد أننا وجدنا المشكلة:
توجد مشكلات في الارتباطات الرمزية عند التشغيل على نظام ملفات cifs ، الأمر الذي يتطلب إضافة علامة mfsymlink إلى أمر التحميل ، وهذا هو سبب تلقيي الخطأ. بعد إضافة علامة mfsymlink ، تعمل العملية بشكل جيد. أقوم بتشغيل مجموعة بيانات أكبر الآن للتأكد ، ولكن يبدو أنها تم إصلاحها الآن.
نعم ، هذا منطقي تمامًا. يعد الاستخدام المكثف للروابط الرمزية سببًا واضحًا لنظام الملفات.
Piero - هل ما زلت تعتبر هذا خطأ ، أم يجب أن نطلب أن يضيف x-ancin شيئًا ما إلى المستندات ، إذا كان بإمكانهم ذلك؟
لا أعتقد أن هذا خطأ ولكنه مشكلة في نظام الملفات. إغلاق.