لينكس / المتوسط: فهم إدارة النظام / الدرس 8
إدارة البرمجيات عبر بيانات الحزم
افهم الثقة بالمستودعات ومعاملات الاعتماد وأدوات الحزم الخاصة بالتوزيعة قبل تغيير البرامج المثبتة.
في هذه الصفحة
أهداف الدرس
- تمييز بيانات الحزم الوصفية من الحزم المثبتة.
- مقارنة سير العمل في عائلتي Debian وRPM.
- التخطيط للترقية مع مراعاة الإعدادات والاسترداد.
تصف الحزم أكثر من ملفات
تجمع الحزمة ملفات وهوية وإصداراً واعتمادات، وغالباً برامج دورة حياة. تسجل قاعدة الحزم ما يعدّه المدير مثبتاً. وتصف بيانات المستودع الإصدارات المتاحة وعلاقاتها. لا يثبت تحديث البيانات كل الترقيات، ولا يثبت البحث في المتاح وجود الحزمة محلياً. يحدد إصدار التوزيعة والمعمارية البناء المتوافق. سجل /etc/os-release وإصدارات الأدوات قبل اتباع التعليمات. وقد تختلف أسماء الحزم بين التوزيعات رغم توفير أمر مألوف بالاسم نفسه.
الفحص أولاً بالأدوات الأصلية
في عائلة Debian يفحص dpkg-query سجلات التثبيت وapt-cache بيانات APT. صُمم apt للاستخدام التفاعلي، بينما يناسب apt-get وapt-cache البرامج التي تعتمد سلوكاً مستقراً. وفي عائلة RPM يستعلم rpm قاعدة التثبيت وتدير نسخة DNF المدعومة معاملات المستودع. قد تختلف تفاصيل الأوامر والافتراضيات بين DNF4 وDNF5، فارجع للدليل المحلي. الاستعلام غير التثبيت والترقية والإزالة؛ ابدأ الفحص باستعلامات القراءة فقط.
dpkg-query -W -f='${Package} ${Version}\n' bash
apt-cache policy bash
تعرض استعلامات القراءة سجل Bash المثبت ومرشحي الإصدارات في صورة مختبر متوافقة. تعتمد الإصدارات والمصادر على الصورة، لذلك لا نفترض خرجاً ثابتاً.
الثقة بالمستودع قرار سلسلة توريد
يساعد المستودع الموقّع في توثيق البيانات وفق نموذج التوزيعة، ولا يثبت ملاءمة كل حزمة لنظامك. يوسّع المستودع الخارجي الجهات التي تقدم شيفرة تنفيذية تشمل برامج حزم ذات امتياز. فضّل المصادر الموثقة وافحص نطاق المفتاح والمنشأ وتجنب خلط مستودعات إصدارات غير متعلقة. يخفي تمرير برنامج تنزيل مباشرة إلى الصدفة المحتوى المراجع وخطة الاعتماد. وعند اختيار صيغة توزيع أخرى قيّم آلية التحديث والثقة صراحة.
قراءة المعاملة المقترحة
قد تثبت الترقية اعتمادات وتستبدل مكتبات وتشغّل إجراءات خدمات أو تسأل عن ملفات إعداد معدلة. اقرأ المعاملة كاملة لا اسم الحزمة المستهدفة فقط. يحاكي apt-get -s الخطة دون تطبيق تغييرات الحزم، لكنه يعتمد البيانات المحلية ولا يضمن تطابق المعاملة اللاحقة. قد تتغير حالة المستودع قبل التثبيت. للإزالة والتطهير آثار مختلفة على الإعدادات في أدوات Debian. لا تحذف سجلات قاعدة الحزم يدوياً لإخفاء معاملة مكسورة.
apt-get -s install bash
rpm -q bash
السطر الأول لمختبر Debian والثاني لمختبر RPM. هما بديلان للدراسة لا وصفة تثبيت مشتركة، ولا يطبق أي منهما ترقية.
تخطيط الاسترداد والتحقق من التطبيق
قبل ترقية مهمة احفظ الإعدادات وحدد أثر الخدمات وأكد وسيلة استرداد تناسب صيغة بيانات التطبيق. لا يعكس خفض إصدار الملف التنفيذي ترحيل قاعدة بيانات بالضرورة. افحص بعد ذلك حالة مدير الحزم وسلوك التطبيق الفعلي. سجل الإصدار والمنشأ وقرارات الإعداد كي يعيد مسؤول آخر النتيجة. قيّم تحديثات الأمان عبر إرشادات التوزيعة المدعومة بما يشمل الإصلاحات المنقولة للخلف؛ فقد يحوي رقم إصدار يبدو أقدم رقعة أمان التوزيعة.
الأخطاء الشائعة وإصلاحها
عدم العثور على حزمة بعد تغيير المصادر
- لماذا يحدث؟
- قديمة البيانات أو مختلف الاسم أو الحزمة غير متاحة للإصدار.
- كيف تصلحه؟
- افحص الإصدار والمصادر والاسم الموثق.
- كيف تتجنب تكراره؟
- استخدم تعليمات خاصة بالتوزيعة وافحص البيانات.
خلط مستودعات الإصدارات
- لماذا يحدث؟
- طُلبت حزمة أحدث دون مراجعة الاعتمادات.
- كيف تصلحه؟
- عُد إلى إعداد مصادر متسق ومدعوم في المختبر.
- كيف تتجنب تكراره؟
- عامل تعديل المستودع كتغيير للنظام كله.
افتراض أن نجاح الحزمة يعني صحة الخدمة
- لماذا يحدث؟
- تم التحقق من اكتمال المعاملة وحده.
- كيف تصلحه؟
- افحص التطبيق وسجلاته بعد التغيير.
- كيف تتجنب تكراره؟
- حدد التحقق الوظيفي قبل الترقية.
اختبر فهمك
1. لماذا ينبغي فصل تحديث البيانات عن ترقية البرامج؟
اعرض الحل المشروح
يحدّث الأول معرفة الإصدارات المتاحة، ويغيّر الثاني البرامج المثبتة بمعاملة اعتماد. يفيد الفصل في تفسير نتائج بحث قديمة ومراجعة الخطة قبل تطبيقها. ويعتمد الاثنان على مصادر الإصدار وإعدادات الثقة.
2. يطلب مورد مستودعاً جديداً لأداة واحدة. ما الأدلة المطلوبة؟
اعرض الحل المشروح
حدد الإصدارات المدعومة والتوقيع ونطاق المفتاح والمنشأ والاعتمادات وبرامج دورة الحياة ودعم التحديث وخطة الإزالة أو الاسترداد. افحص معاملة محاكاة في صورة مؤقتة مطابقة؛ فلا يكفي اسم أداة مألوف لإثبات التوافق.
أهم ما تعلمته
- استخدم البيانات الأصلية وافحص المعاملات قبل التغيير.
- الثقة بالمستودع وصحة الخدمة والاسترداد فحوص مستقلة.