يقول Linus Torvalds إنه من غير الحكمة استخدام ZFS على Linux

أثناء مناقشة اختبار برنامج جدولة مهام Linux ، أحد المشاركين في المناقشة أعطى مثالا حقيقة أنه بالرغم من التصريحات حول الحاجة للحفاظ على التوافق عند تطوير نواة لينكس، التغييرات الأخيرة على kernel قاطعت الصحيح تشغيل وحدة ZFS على نظام Linux.

أجاب لينوس تورفالدس بذلك يشير مبدأ "عدم كسر المستخدمين" إلى الحفاظ على واجهات kernel الخارجية التي تستخدمها التطبيقات في مساحة المستخدم ، بالإضافة إلى النواة نفسها. لكن لا يغطي ملحقات الطرف الثالث التي تم تطويرها بشكل منفصل على kernel التي لم يتم قبولها في التكوين الأساسي للنواة ، والتي يجب على مؤلفيها على مسؤوليتهم الخاصة تتبع التغييرات في النواة بأنفسهم.

بخصوص مشروع ZFS على Linux ، لم ينصح Linus باستخدام وحدة zfs بسبب عدم توافق تراخيص CDDL و GPLv2.

الوضع هكذا ، بسبب سياسة ترخيص Oracle ، احتمالات أن يتمكن ZFS يومًا ما من دخول الماكياج الأساسي صغيرة جدًا.

نظرًا لأن الطبقات المقترحة للتحايل على عدم توافق الترخيص ، والتي تترجم الوصول إلى الوظائف الأساسية للكود الخارجي ، هي قرار مشكوك فيه.

الخيار الوحيد حيث يوافق Linus على قبول كود ZFS في النواة الرئيسية هو الحصول على إذن رسمي من Oracle ، معتمد من قبل المحامي الرئيسي وأفضل من قبل لاري إليسون نفسه.

الحلول الوسيطة ، كالطبقات بين النواة ورمز ZFSغير مقبولة ، نظرًا لسياسة Oracle الصارمة فيما يتعلق بالملكية الفكرية على واجهات البرنامج (مثل اختبار Google لـ Java API).

وبالإضافة إلى ذلك، يرى لينوس أن الرغبة في استخدام ZFS مجرد تكريم للموضة وليس المزايا التقنية. لا تشهد اختبارات الأداء التي درسها Linus لصالح ZFS ، وعدم وجود دعم كامل لا يضمن الاستقرار على المدى الطويل.

يتم توزيع ZFS بموجب ترخيص CDDL المجاني الذي لا يتوافق مع GPLv2 لأنه لا يسمح بدمج ZFS في Linux في الفرع الرئيسي لنواة Linux ، نظرًا لأن خلط الكود بموجب تراخيص GPLv2 و CDDL غير مقبول.

لتجنب هذا التعارض مرخص لها ، مشروع ZFS على Linux ، قرر توزيع المنتج بأكمله بموجب ترخيص CDDL كوحدة منفصلة قابلة للتنزيل ، يتم توفيرها بشكل منفصل عن النواة.

تسبب إمكانية توزيع وحدة ZFS النهائية كجزء من التوزيعات جدلاً بين المحامين.

المحامين الحفاظ على حرية البرمجيات (SFC) نعتقد أن تسليم وحدة kernel ثنائي في حزمة التوزيع يشكل منتجًا جنبًا إلى جنب مع GPL التي تتطلب توزيع العمل النهائي بموجب GPL.

يختلف المحامون ويجادل أن تسليم وحدة zfs مسموح به إذا تم توفير المكون كوحدة مستقلة ، منفصلة عن الحزمة الأساسية. يلاحظ Canonical أن التوزيعات استخدمت منذ فترة طويلة نهجًا مشابهًا لتزويد برامج تشغيل خاصة ، مثل برامج تشغيل NVIDIA.

الجانب الآخر يجيب أن مشكلة التوافق مع kernel في برامج التشغيل الخاصة يتم حلها من خلال توفير طبقة صغيرة موزعة بموجب ترخيص GPL (يتم تحميل وحدة بموجب ترخيص GPL في النواة ، والتي تقوم بالفعل بتحميل مكونات الملكية).

بالنسبة إلى ZFS ، لا يمكن إعداد مثل هذه الطبقة إلا إذا قدمت Oracle استثناءات مرخصة. في Oracle Linux ، يتم حل مشكلة عدم توافق GPL من خلال تزويد Oracle باستثناء ترخيص يلغي متطلبات الترخيص لوظيفة CDDL المدمجة ، ولكن هذا الاستثناء لا ينطبق على التوزيعات الأخرى.

الحل هو توفير التعليمات البرمجية المصدر فقط للوحدة النمطية في التوزيعوالتي لا تؤدي إلى الربط وتعتبر بمثابة تسليم لمنتجين منفصلين. يستخدم دبيان نظام DKMS (دعم وحدة النواة الديناميكية) لهذا الغرض ، حيث يتم توفير الوحدة في كود المصدر وتجميعها في نظام المستخدم ، فور تثبيت الحزمة.

مصدر: https://www.realworldtech.com/


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   luix قال

    يجب أن يعززوا btrfs وفترة