
أداة نظام تحدد وتعيد تشغيل البرامج الخفية (daemons) التي تستخدم مكتبات قديمة بعد ترقية الحزم للحفاظ على الأمان. تدعم الحاويات والمفسرات (interpreters).
needrestart يتحقق من العمليات الخفية (daemons) التي تحتاج إلى إعادة تشغيل بعد ترقيات المكتبات. وهو مستوحى من checkrestart من حزمة debian-goodies.
توجد بعض السكربتات الخطافية في مجلد ex/ (لاستخدامها مع
apt و dpkg. ستقوم السكربتات باستدعاء needrestart
بعد أي تثبيت/ترقية للحزم.
يجب أن يعمل needrestart على GNU/Linux. لديه وظائف محدودة على
GNU/kFreeBSD لأن /proc/<pid>/maps لا يُظهر روابط الملفات المحذوفة.
needrestart يدعم systemd لكنه لا يتطلبه (متاح منذ v0.6). إذا تم استخدام systemd فيجب عليك استخدام libpam-systemd أيضًا. إذا اكتشف needrestart وجود systemd فسيفترض أن libpam-systemd قيد الاستخدام ويعتمد على أسماء cgroup لاكتشاف ما إذا كانت العملية تنتمي إلى جلسة مستخدم أم إلى خدمة. إذا كنت لا تستخدم libpam-systemd فيجب عليك تعيين $nrconf{has_pam_systemd} إلى 0 داخل needrestart.conf.
إذا لم يكن systemd متاحًا أو لم يُرجع اسم خدمة، فإن needrestart يستخدم خطافات لتحديد سكربت init الخاص بـ System V المقابل. الخطافات المرفقة تدعم مديري الحزم التاليين:
يُستخدم أمر service لتشغيل سكربت init التقليدي الخاص بـ System V.
يستخدم needrestart نهجًا معياريًا يعتمد على حزم perl التي توفر واجهة المستخدم. الواجهات الأمامية التالية مرفقة:
يقدم needrestart 0.8 ميزة كشف النواة القديمة. منذ needrestart 3.5 أصبح من الممكن تصفية أسماء ملفات صور النواة (مطلوب على Raspberry Pi).
في needrestart 3.0 تمت إضافة ميزة كشف تحديث الميكروكود للمعالج لوحدات المعالجة المركزية Intel. منذ needrestart 3.5 تمت إضافة دعم وحدات المعالجة المركزية AMD.
يقدم needrestart 0.8 ميزة فحص المفسرات. لا تقوم المفسرات بربط الكائنات الثنائية (المشتركة) فحسب، بل تستخدم أيضًا ملفات المصدر النصية. يحاول كشف المفسرات التحقق من ملفات المصدر القديمة لأنها قد تحتوي على مشاكل أمنية أيضًا. هذه مجرد طريقة استدلالية وقد تفشل في كشف جميع ملفات المصدر ذات الصلة. الماسحات الضوئية للمفسرات التالية مرفقة:
needrestart 2.1 يكتشف بعض تقنيات الحاويات. إذا كانت عملية ما جزءًا من حاوية، فقد لا يكون من الممكن إعادة تشغيلها باستخدام Sys-V/systemd.
توجد حزم perl خاصة (NeedRestart::CONT::*) تنفذ كشف الحاويات وإعادة تشغيلها. كاشفات الحاويات التالية مرفقة:
يمكن تشغيل needrestart في وضع الدفعات لاستخدام النتائج داخل برامج أو سكربتات أخرى.
تتوفر أيضًا وضعية إضافة nagios.