الرئيسية
» لينوكس
»
كيفية إعداد ترقيات دبيان التلقائية بدون واجهة رسومية باستخدام Unattended-Upgrades
كيفية إعداد ترقيات دبيان التلقائية بدون واجهة رسومية باستخدام Unattended-Upgrades
ما يفعله برنامج unattended-upgrades على خادم دبيان بدون واجهة رسومية
unattended-upgradesهي حزمة دبيان لتنزيل وتثبيت تحديثات APT المختارة تلقائيًا دون الحاجة إلى تسجيل دخول تفاعلي. على خادم بدون واجهة رسومية، يجعلها ذلك مفيدة لصيانة الأمان عندما لا تتوفر جلسة سطح مكتب ولا يُتوقع من أحد تشغيلها apt upgradeيوميًا.
اعتبارًا من أكتوبر 2026، يُعدّ دبيان 13 "تريكسي" الإصدار المستقر من دبيان، والحزمة المستقرة unattended-upgradesهي الإصدار 2.12. تُستخدم هذه الحزمة لتحديثات الحزم العادية، وخاصةً التحديثات الأمنية والمستقرة. وهي لا تُغني عن عملية الترقية المُخطط لها والمُنفصلة من إصدار رئيسي إلى آخر من دبيان.
النموذج العملي بسيط: تقوم آلية APT الدورية بتحديث فهارس الحزم، apt-daily-upgrade.serviceوتستدعي نظام الترقية التلقائية وفقًا للجدول الزمني، وتحدد سياستك مصادر الحزم المسموح بها. يسجل دبيان النتيجة في ملف /var/log/unattended-upgrades/.
إعادة تثبيت الحزمة آمنة: سيُبلغ نظام إدارة الحزم APT ببساطة أنها مُثبّتة بالفعل إذا كانت موجودة على الجهاز المضيف. تُعرّف دبيان الحزمة بأنها مُثبّت تلقائي لترقيات الأمان والتحديثات الأخرى المُختارة وفقًا للسياسة.
مثال على عرض طرفي لتثبيت التحديثات التلقائية. تختلف أسماء المستودعات وعدد الحزم حسب إصدار دبيان والجهاز المضيف.
بالنسبة لمجموعة من الأجهزة، لا تفترض أن جميع الصور لها نفس الحالة الافتراضية. بعض إصدارات دبيان تتضمن ترقيات تلقائية، بينما لا تتضمنها إصدارات أخرى، وقد يكون أحد الإعدادات الحالية معطلاً. بعد التثبيت، افحص الإعدادات الفعلية بدلاً من افتراض أن وجود الحزمة يعني أن السياسة التي تريدها مُفعّلة.
إعدادات APT الدورية التي تطلب تحديثات يومية لقوائم الحزم وعمليات الترقية غير المراقبة.
لا تفهم من هذا وعدًا بأن المهمة ستبدأ بالضبط عند منتصف الليل كل يوم. في أنظمة دبيان المبنية على systemd، يستخدم APT وحدات مؤقتة وسلوك جدولة عشوائي. بالنسبة لعمليات التشغيل، تحقق من حالة المؤقت الفعلية وموعد التشغيل التالي على المضيف بدلًا من تصميم نظام مراقبة يعتمد على وقت ساعة مُقدَّر.
3. حدد المستودعات التي يُسمح لها بترقية الحزم تلقائيًا
توجد السياسة الرئيسية ضمن الشكل Unattended-Upgrade::Origins-Patternالأقدم Allowed-Origins. توصي وثائق دبيان 2.12 بإنشاء جزء APT محلي يتم فرزه وفقًا 50unattended-upgradesللملف المعبأ، على سبيل المثال:
يُفضّل هذا على تعديل الملف المُرسل بشكل دائم، لأن ترقيات الحزمة قد تستبدل أو تتعارض مع الإعدادات التي يديرها المورّد. قبل كتابة الأنماط، تفحّص بيانات تعريف الإصدار التي يراها APT فعليًا.
apt-cache policy
بالنسبة لمعظم الخوادم التي تعمل بدون واجهة رسومية، تتمثل السياسة المُثلى في حصر التحديثات التلقائية على قنوات دبيان المستقرة والأمنية المعتادة. قد تختلف الأنماط الدقيقة باختلاف بنية مستودعك، والخوادم البديلة، وموردي الطرف الثالث، وقواعد التثبيت، لذا اعتبرها apt-cache policyالمصدر الموثوق في كل بيئة.
مثال على عرض محرر السياسات. قم بمطابقة المصادر مع المستودعات التي أبلغت عنها سياسة apt-cache على خادمك بدلاً من نسخ التصنيفات بشكل أعمى.
عناصر تحكم اختيارية جديرة بالمعرفة
يدعم الإصدار 2.12 قوائم الحظر والسماح للحزم، وإعادة التشغيل التلقائي، وتقارير البريد الإلكتروني، وإزالة التبعيات غير المستخدمة، وحدود النطاق الترددي، وقيود يوم التحديث، وإخراج سجل النظام. وتُعدّ بعض الخيارات ذات أهمية خاصة على الخوادم البعيدة:
لا تقم بتهيئة البريد إلا إذا كان الجهاز مزودًا بنظام نقل بريد فعال. في حال تفعيل إعادة التشغيل التلقائي، فإن سلوك دبيان الافتراضي مهم: عندما Automatic-Rebootيكون الخيار "صحيح" /var/run/reboot-requiredوموجودًا، يمكن إعادة تشغيل الجهاز المضيف دون تأكيد. يمكنك جدولة Unattended-Upgrade::Automatic-Reboot-Timeإعادة التشغيل هذه خلال فترة الصيانة.
بالنسبة للعديد من أنظمة الإنتاج، يُعد ترك إعادة التشغيل التلقائي معطلاً أكثر أمانًا ما لم تكن الخدمة زائدة عن الحاجة، وتم تحديد فترات الصيانة، وأتمتة عمليات فحص الحالة بعد إعادة التشغيل.
4. تحقق من مؤقتات systemd وقم بإجراء اختبار تجريبي
في تثبيت دبيان العادي القائم على systemd، تحقق من مؤقتات APT بدلاً من البحث عن وحدة وهمية unattended-upgrades.timer:
systemctl status apt-daily.timer apt-daily-upgrade.timer
systemctl list-timers apt-daily.timer apt-daily-upgrade.timer
apt-daily.timerيرتبط بنشاط تنزيل/فهرسة الحزم الروتيني، بينما apt-daily-upgrade.timerيقوم بتشغيل مسار خدمة الترقية/التنظيف المستخدم بواسطة عمليات الترقية غير المراقبة.
حالة مؤقتات Systemd للعمليات اليومية لـ APT. التواريخ المعروضة توضيحية فقط؛ استخدم الأمر systemctl list-timers لمعرفة تاريخ التشغيل الفعلي التالي على جهازك المضيف.
بعد ذلك، اختبر السياسة دون تغيير الحزم:
sudo unattended-upgrade --debug --dry-run
يُعد هذا الفحص المسبق الأكثر فائدة لأنه يُقيّم إعدادات APT الفعلية ويسجل تفاصيل تصحيح الأخطاء. راجع المخرجات للبحث عن الحزم التي سيتم اختيارها أو حجبها، والمصادر الخارجية غير المتوقعة، ومشاكل التبعيات، ومطالبات ملف الإعدادات.
إذا لم يُظهر التشغيل التجريبي أي نتائج، فهذا أمر طبيعي تمامًا عندما يكون الخادم مُحدّثًا. تأكد من وجود تحديثات معلقة بالفعل apt list --upgradable، ثم قارن مصادرها وسياساتها مع الأنماط المُكوّنة لديك.
5. راقب عمليات التحديث غير المراقبة وتعامل مع عمليات إعادة التشغيل بشكل مدروس.
تقوم الحزمة بكتابة سجل نشاطها الرئيسي ومخرجات dpkg تحت:
sudo tail -n 100 /var/log/unattended-upgrades/unattended-upgrades.log
sudo journalctl -u apt-daily-upgrade.service --since "7 days ago"
test -f /var/run/reboot-required && cat /var/run/reboot-required
بالنسبة لجهاز مختبر منزلي واحد، قد يكون مراجعة السجلات بشكل دوري كافيًا. أما بالنسبة لأنظمة الأعمال، فيُفضل إرسال حالات الفشل إلى نظام المراقبة المركزي أو سجل النظام (syslog) حتى لا تمر أخطاء المستودع الصامتة، أو امتلاء نظام الملفات، أو تعطل التبعيات، أو انقطاع حالة حزمة التوزيع (dpkg) دون ملاحظة.
إعدادات مرجعية لسياسات الخادم الشائعة
سيناريو
سياسة
مذكرة تشغيلية
خادم يركز على الأمن
السماح بتحديثات الأمان والاستقرار لنظام دبيان؛ والاحتفاظ بخاصية إعادة التشغيل اليدوي.
خيار جيد كخيار افتراضي عندما يكون انقطاع الخدمة أكثر تكلفة من إعادة التشغيل المتأخرة.
عقدة عديمة الحالة أو زائدة عن الحاجة
السماح بالتحديثات وإعادة التشغيل التلقائي المجدولة
قم بإقرانه مع فحوصات الصحة وتفريغ موازن الأحمال
جهاز حساس لنواة النظام
استخدم قائمة سوداء للحزم فقط مع عملية استثناء موثقة
قد يؤدي إدراج البرامج في القائمة السوداء إلى ترك الثغرات الأمنية المعروفة دون إصلاح.
خادم مزود بمستودع بيانات الموردين
لا تسمح بأصل المورّد حتى تتم مراجعة سياسة التحديث الخاصة به.
تحقق أولاً من التوقيع وسياسة الدعم وتوقعات التراجع.
دليل سريع لحل المشكلات
المؤقت نشط ولكن لم يتم تثبيت أي حزم
تحقق مما إذا كانت هناك ترقيات معلقة، وما إذا كان مصدر مستودعها يطابق سياستك المسموح بها، وما إذا كانت هناك قائمة سوداء أو قيود على التبعيات تمنع الاختيار. قم بتشغيل الأمر sudo unattended-upgrade --debug --dry-runللتحقق من الأدلة بدلاً من تغيير السياسة بشكل عشوائي.
ينتظر الخادم اكتمال تهيئة الحزمة
unattended-upgradesصُمم هذا النظام لتجنب التحديثات التي قد تتطلب معالجة مطالبات تهيئة dpkg غير المُعالجة. إذا تم تأخير حزمة ما بشكل متكرر، فافحص السجل وحدد ما إذا كان ينبغي التعامل مع قرار ملف التهيئة يدويًا.
لا يتم تشغيل التحديثات بعد استنساخ صورة الجهاز الظاهري
تأكد من تفعيل المؤقتات ونشاطها، ثم افحصها apt-config dump. غالبًا ما تحتوي الصور الذهبية على أجزاء APT محلية، أو إخفاء، أو تجاوزات للسياسات تختلف عن الإعدادات الافتراضية للحزمة.
يجب عليك إيقاف التحديثات التلقائية
استخدم مسار إعادة التكوين المدعوم من دبيان:
sudo dpkg-reconfigure -plow unattended-upgrades
إن تعطيل الحزمة لا يحل محل إدارة التصحيحات العادية؛ بل يعيد المسؤولية ببساطة إلى عملية التنسيق اليدوية أو الخارجية الخاصة بك.
قائمة التحقق النهائية للتحقق من الصحة
unattended-upgradesيتم تثبيته من مستودع دبيان موثوق.
تم تفعيل تحديث قائمة الحزم الدورية لـ APT وقيم الترقية التلقائية.
يتم تخزين السياسة المحلية في ملف تجاوز لاحق مثل 52unattended-upgrades-local.
تم التحقق من المصادر المسموح بها apt-cache policy.
apt-daily.timerوهم apt-daily-upgrade.timerنشطون.
sudo unattended-upgrade --debug --dry-runيكتمل بدون اختيارات غير متوقعة أو أخطاء.
تتم مراقبة السجلات، وتتوافق سياسة إعادة التشغيل مع نموذج الصيانة الخاص بك.
لا تزال ترقيات إصدارات دبيان الرئيسية إجراءً مخططاً له بشكل منفصل.
المراجع الرسمية
استخدم وثائق دبيان الخاصة عند التحقق من السلوك في إصدار معين: