المستودع Repository هو عبارة عن خادم يحتوي مجموعة من البرامج، وتُعَد هذه الطريقة في توفير البرامج في مكان واحد إحدى نقاط القوة التي تميز نظام لينكس، كونه يعتمد على المستودعات؛ كما تمتلك كل توزيعة مستودعاتها الخاصة، وسنخص في هذا المقال توزيعة أوبنتو ومستودعاتها التي تسهل على المستخدم مهامه.
فائدة المستودعات
تسمح المستودعات بالبحث ضمنها عن أي تطبيق ثم تثبيته دون الحاجة إلى البحث على الإنترنت عن ملف التنزيل الخاص به، ويتم ذلك في أوبنتو باستخدام الأمر apt
، وهذا الأمر هو نفسه مدير الحزم APT الذي يستخدمه مركز برمجيات أوبنتو في الخلفية، لذلك كل البرامج (عدا حزم سناب Snap) المتوفرة في مركز البرمجيات هي من APT.
يحصل مدير الحزم APT على معلومات المستودع من ملف ذو المسار etc/apt/sources.list/ بالإضافة إلى الملفات المتوفرة في مجلد etc/apt/sources.list.d/ وتكون عادةً معلومات المستودع بالصيغة التالية:
deb http://archive.ubuntu.com/ubuntu/ jammy main
تكون هيكلية المستودع منظمة بالشكل التالي:
آلية العمل
يحصل مدير الحزم باستخدام الأمر apt update
على معلومات تشمل الحزم المتوفرة والإصدار الخاص بكل حزمة من المستودعات ويخزنها في ذاكرة مخبئيّة محلية. ويمكن الاطلاع على هذا المعلومات في مجلد var/lib/apt/lists/
.
يسرع الاحتفاظ بهذه المعلومات محليًّا عملية البحث لأن المستخدم لن يحتاج إلى الاتصال بالانترنت ثم البحث في قاعدة البيانات عن الحزم المتاحة بهدف التأكد فقط من أن حزمة ما متاحة أم لا.
عند محاولة تثبيت برنامج ما xyz باستخدام الأمر apt
قد يظهر الخطأ التالي:
E: Unable to locate package xyz
يشير الخطأ السابق إلى أن الحزمة xyz غير موجودة ضمن قائمة المستودعات المفعلة ويكمن الحل في تفعيل أحد مستودعات أوبنتو الذي يحوي تلك الحزمة، ثم الحصول على الحزمة المفقودة عبر تنزيلها من المستودع.
مستودعات أوبنتو
تقسم البرمجيات في مستودع أوبنتو إلى خمس فئات وهي:
- Main (رئيسي)
- Universe
- Multiverse
- Restricted (مُقيّد)
- Partner (شريك)
Main
يُفعّل هذا المستودع بشكل افتراضي عند تثبيت أوبنتو، ويتكون من برمجيات مجانية ومفتوحة المصدر، والتي تسمى FOSS، وهي اختصار free and open source software وتتميز بإمكانية توزيعها بحرية دون أي قيود.
يوفر مطورو أوبنتو دعمًا كاملًا ودائمًا للبرمجيات في هذا المستودع، بالإضافة لتحديثات أمان حتى يصل النظام أو التوزيعة إلى نهاية عمره الافتراضي.
مستودع Universe
يحتوي هذا المستودع أيضًا على برمجيات مجانية ومفتوحة المصدر ولكن أوبنتو لا يضمن تحديثات أمان دورية للبرمجيات في هذه الفئة.
مستودع Multiverse
يجب على المستخدم التأكد من أن لديه الحق في استخدام أي برنامج ضمن هذا المستودع قبل استخدامه، وذلك لأن البرمجيات في هذه الفئة ليست FOSS أي أنها ليست حرة ومفتوحة المصدر، بالتالي لا يمكن لأوبنتو تفعيل هذه المستودع بشكل افتراضي بسبب الترخيص والمسائل القانونية، كما لا يوفر تحديثات أو حلول لمشكلات التطبيقات المثبته منه.
مستودع Restricted
يحتوي هذا المستودع على مُشغّلات احتكارية على الرغم من محاولة أوبنتو الدائمة لتوفير برمجيات مجانية ومفتوحة المصدر، والتي قد لا تتحقق خاصًة عندما يتعلق الأمر بدعم العتاد.
مستودع Partner
يتكون هذا المستودع من برمجيات احتكارية يقوم أوبنتو بتنظيمها في حزم وتقديمها لشركائه، فقد وفر أوبنتو مثلًا في السابق سكايب Skype من خلال هذه المستودع.
المستودعات الخارجية
يتوفر مستودعات أخرى ولكنها غير مدعومة من أوبنتو والتي يمكن إضافتها تبعًا لرغبة المستخدم بالحصول على برمجيات إضافية أو نسخ أحدث من البرمجيات المتوفرة على مستودعات أوبنتو.
مثلًا، عند إضافة المستودع المقدم من VirtualBox، يمكن عندها الحصول على أحدث نسخة من البرنامج، وسيضاف المستخدم كحقل جديد في الملف sources.list الخاص بالمستخدم، ولكن لا ينصح بهذا الأمر، إذ يُفضّل المحافظة على هذا الملف كما هو في حالته الأصلية، وذلك لأن أي تغيير ضمنه قد يمنع المستخدم مستقبلًا من تحديث النظام أو حتى تنزيل حزم جديدة.
وإلى جانب ما سبق، يمكن تنزيل تطبيق إضافي باستخدام أرشيف الحزمة الشخصية PPA (اختصارًا إلى Personal Package Archive).
إضافة المستودعات غير الافتراضية
يجب أن يكون كل من المستودعين main و universe مفعلين افتراضيًا. وفي حال رغب المستخدم بتفعيل مستودعات إضافية، سيتحقق ذلك عن طريق سطر الأوامر وكتابة الأمر الخاص بكل مستودع كما يلي:
تفعيل مستودع Universe باستخدام الأمر:
sudo add-apt-repository universe
تفعيل مستودع restricted باستخدام الأمر:
sudo add-apt-repository restricted
تفعيل مستودع multiverse باستخدام الأمر:
sudo add-apt-repository multiverse
بعد إضافة المستودع، يجب تحديث فهرس الحزم الذي يحتوي على معلوماتها، ويتم ذلك باستخدام الأمر التالي:
sudo apt update
وفي حال إزالة تثبيت مستودع ما وليكن مستودع universe مثلا، سيتم ذلك بالطريقة التالية:
sudo add-apt-repository -r universe
تتوفر طريقة أسهل لإضافة المستودعات، وهي باستخدام الواجهة الرسومية، وذلك من خلال قسم البرامج والتحديثات في جدول برمجيات أوبنتو، وهو الجدول الأول في الواجهة:
ومن خلال جدول البرمجيات الأخرى Other Software، يمكن إضافة مستودعات أوبنتو غير الأساسية مثل مستودع partner.
ويمكن إزالة المستودع ببساطة عن طريق إلغاء تحديد هذا المستودع.
كيفية تحديد المستودع الذي تنتمي إليه حزمة ما
يمتلك أوبنتو موقع ويب متخصص يزود المستخدم بمعلومات عن جميع الحزم المتوفرة في أرشيف أوبنتو. ويمكن البحث عن حزمة ما من خلال كتابة اسم الحزمة في حقل البحث. وتوجد خيارات إضافية لذلك، مثل تحديد إصدار أوبنتو معين أو مستودع معين، ولكن يفضل عدم التخصيص، وذلك بترك الخيار "any" في كلا الحقلين كما في الصورة التالية:
تُظهِر نتيجة البحث جميع الحزم المطابقة وإصدارات أوبنتو ومعلومات المستودع كما يلي:
يوضح المثال السابق عملية البحث عن الحزمة tor. وفي نتيجة البحث، ظهرت معلومات توضح أن هذه الحزمة موجودة في مستودع Universe لمختلف إصدارات أوبنتو.
الخاتمة
نأمل أن يساعدك هذا المقال في فهم مستودعات أوبنتو. وإذا كان لديك أي أسئلة أو اقتراحات حول الموضوع، يمكنك التوجه إلى قسم الأسئلة والأجوبة في أكاديمية حسوب.
ترجمة -وبتصرف- للمقال What are Ubuntu Repositories? How to enable or disable them? لصاحبه Abhishek Prakash.
أفضل التعليقات
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.