إصلاح: الأمر Systemctl غير موجود

Systemctl هي أداة مساعدة Systemd للتحكم في الخدمات والعمليات على توزيعات Linux. باستخدام الأمر systemctl ، يمكنك بسهولة تشغيل الخدمات وإيقافها من خلال Terminal. ومع ذلك ، يحصل العديد من المستخدمين على خطأ " systemctl: command لم يتم العثور عليه " عند محاولة تشغيل الأمر systemctl. يمكن أن تحدث هذه المشكلة في الغالب على الإصدارات القديمة من أنظمة تشغيل Linux ، والتي لا تدعم Systemd.

الأمر Systemctl غير موجود

ما الذي يسبب خطأ "لم يتم العثور على أمر Systemctl"؟

وفقًا لتحقيقاتنا ، فإن السبب الرئيسي للمشكلة هو نظام التشغيل القديم. تستخدم بعض توزيعات Linux القديمة SysV init و Upstart بدلاً من Systemd ، نظرًا لأن أوامر systemctl لن تعمل في المحطة الطرفية. تم تقديم Systemd في أحدث إصدارات أنظمة التشغيل وهو غير متوفر للإصدارات القديمة.

الآن بعد أن عرفت سبب حدوث المشكلة ، سننتقل إلى الحل.

قيادة الخدمة لتوزيعات لينكس القديمة

إذا كان نظامك يستخدم Upstart بدلاً من Systemd ، فيجب عليك تجربة الأوامر التي تعمل مع Upstart. تحتاج إلى تجربة أمر مكافئ لـ systemctl لأنظمة التشغيل القديمة لبدء تشغيل خدمة. أيضًا ، يجب تثبيت الخدمة على النظام الخاص بك قبل بدء تشغيله باستخدام أمر عبر Terminal.

نصيحة : استخدم أمر sudo لتثبيت وبدء وإيقاف التطبيقات التي تتطلب امتيازات الجذر.

  1. اضغط على مفاتيح CTRL + ALT + T مع بعضها لفتح "المحطة الطرفية" واكتب الأمر التالي لبدء تشغيل خدمة:
     sudo خدمة بداية elasticsearch 

    ملاحظة : سوف يستغرق 5-10 ثواني للبدء.

  2. يمكنك تأكيد حالة الخدمة باستخدام هذا الأمر:
     حالة سودو خدمة elasticsearch 

    بدء الخدمة والتحقق من الحالة
  3. وبعض الخدمات مثل elasticsearch لها أمر خاص بها لاختبار:
     curl –X GET '// localhost: 9200' 

    اختبار خدمة elasticsearch

المكافأة: الأمر Systemctl لأحدث توزيعات Linux

حل Systemd محل SysV init كنظام init في معظم توزيعات Linux. سيعمل أمر Systemctl على أحدث توزيعات Linux دون أي أخطاء كما هو موضح أدناه:

  1. اضغط على مفاتيح CTRL + ALT + T معًا لفتح المحطة الطرفية
  2. اكتب الأمر systemctl لبدء تشغيل الخدمة:
     sudo systemctl بدء elasticsearch 

    بدء تشغيل الخدمة باستخدام الأمر systemctl

مقالات مثيرة للاهتمام