سسٹم سی ٹی ایل ری اسٹارٹ کمانڈ کا استعمال کرتے ہوئے سروس کو دوبارہ شروع کریں۔

Ss M Sy Y Ayl Ry As Ar Kman Ka Ast Mal Krt Wy Srws Kw Dwbar Shrw Kry



دی systemd ایک سسٹم سروس مینیجر ہے جو لینکس پر بڑے پیمانے پر استعمال ہوتا ہے۔ انتظام کرنے کے لئے systemd خدمات، systemctl کمانڈ لائن یوٹیلیٹی استعمال کی جاتی ہے۔ یہ ٹول کسی بھی سسٹمڈ سروس کو دوبارہ شروع کرنے کے لیے بھی استعمال ہوتا ہے۔

لینکس پر خدمات کا انتظام ان کی کنفیگریشن فائل کے ذریعے کیا جاتا ہے۔ اگر کسی سروس کی کنفیگریشن فائل میں ترمیم کی جاتی ہے، تو ترمیم کو لاگو کرنے کے لیے سروس کو دوبارہ شروع کرنا ضروری ہے۔ سروس کو دوبارہ شروع کرنے پر، سسٹمڈ کنفیگریشن فائل کا دوبارہ جائزہ لیتا ہے اور ترمیمات کا اطلاق کرتا ہے۔

اس گائیڈ میں، میں لینکس میں سروس کو دوبارہ شروع کرنے کے لیے systemctl کا استعمال کیسے کروں گا۔







نوٹ: اس گائیڈ میں وہ احکامات اور ہدایات شامل ہیں جو Ubuntu 22.04 پر عمل میں آتی ہیں۔ کمانڈ سسٹمڈ سروس مینیجر کے ساتھ آنے والی تقسیم پر بغیر کسی مسئلے کے کام کرے گی۔



سسٹم سی ٹی ایل کو دوبارہ شروع کرنے کی کمانڈ

دی دوبارہ شروع کریں کمانڈ بنیادی طور پر ایک سروس کو روکتا ہے اور اسے دوبارہ شروع کرتا ہے۔ اگر سروس یا یونٹ آپریشنل نہیں ہے تو ری اسٹارٹ کمانڈ اپنا کام شروع کرے گی۔



دوبارہ شروع کرنے کا کمانڈ سروس سے منسلک عمل کو نہیں ہٹاتا ہے۔ فائل ڈسکرپٹرز کی مثال لیں، جو آپریٹنگ سسٹم کے ذریعے کسی سروس کے ذریعے کھولی گئی فائلوں کو تفویض کیے گئے غیر منفی شناخت کار ہیں۔ اگر آپ کسی سروس کو دوبارہ شروع کرتے ہیں، تو اس سروس سے منسلک فائل ڈسکرپٹر دوبارہ شروع کرنے کے عمل کے دوران وہیں رہے گا۔





اگر آپ سروس سے منسلک تمام عمل کو ختم کرنا چاہتے ہیں، تو آپ کو واضح طور پر کرنے کی ضرورت ہے۔ روکو سروس اور شروع یہ دوبارہ.

سروس کو دوبارہ شروع کرنے کا طریقہ

لینکس پر، آپ استعمال کر کے سروس کو دوبارہ شروع کر سکتے ہیں۔ sudo systemctl کمانڈ لائن ٹول کے ساتھ دوبارہ شروع کریں اختیار اور اس کا نام بتانا۔ عمومی ترکیب ذیل میں دی گئی ہے۔



sudo systemctl دوبارہ شروع کریں [ سروس کا نام ]

تمہیں ضرورت پڑے گی sudo سروس کو دوبارہ شروع کرنے کے مراعات۔

مثال کے طور پر، آئیے دوبارہ شروع کریں۔ ssh سروس

sudo systemctl ssh.service کو دوبارہ شروع کریں۔

متعدد سروسز کو دوبارہ شروع کرنے کے لیے، ہر سروس کا نام کے بعد شامل کریں۔ دوبارہ شروع کریں ایک جگہ کے ساتھ کمانڈ.

sudo systemctl دوبارہ شروع کریں ssh.service smbd.service

دیگر ری اسٹارٹ کمانڈز نیچے دیے گئے جدول میں ہیں:

دوبارہ شروع کرنے کی کوشش کریں۔ یہ مخصوص سروس یا خدمات کو روکتا ہے یا شروع کرتا ہے اور اگر سروس نہیں چل رہی ہے تو وہ اسے شروع نہیں کرتی ہے۔
دوبارہ لوڈ کریں یا دوبارہ شروع کریں۔ سپورٹ شدہ سروس یا سروسز کو دوبارہ لوڈ کریں اور اگر سروس سپورٹ نہیں ہے تو اسے دوبارہ شروع کریں اور اسے ایکٹیویٹ کریں۔
دوبارہ لوڈ کرنے کی کوشش کریں یا دوبارہ شروع کرنے کی کوشش کریں۔ سپورٹ شدہ سروس یا سروسز کو دوبارہ لوڈ کریں اور اگر سروس سپورٹ نہیں ہے تو اسے چالو کیے بغیر دوبارہ شروع کریں۔

مندرجہ بالا احکامات میں، سروس توسیع اختیاری ہے.

سروس کو خود بخود دوبارہ شروع کرنے کا طریقہ

لینکس پر، اگر کوئی سروس ناکام ہوجاتی ہے، تو پھر systemd پہلے سے طے شدہ طور پر اسے دوبارہ شروع کیا. بہر حال، بہت سے معاملات میں، سروس کے دوبارہ شروع ہونے کے طریقے میں ترمیم کرنا ضروری ہو سکتا ہے۔ مثال کے طور پر، اپنی مرضی کے مطابق سروس کی ڈیبگنگ کے عمل کے دوران کسی کو دستی کارروائی کی ضرورت پڑ سکتی ہے۔

سسٹمڈ یونٹ فائلیں یا سروس فائلیں موجود ہیں۔ /etc/systemd/system یا /lib/systemd/system بنیادی طور پر اس بات پر منحصر ہے کہ سروس کیسے بنائی جاتی ہے۔ لینکس پر یونٹ فائلوں کی فہرست کے لیے درج ذیل کمانڈ کا استعمال کریں:

ls / lib / systemd / نظام

آپ مختلف سروسز کی کنفیگریشن فائلیں دیکھ سکتے ہیں۔ آئیے کھولتے ہیں۔ ssh.service کا استعمال کرتے ہوئے فائل نینو ایڈیٹر

sudo نینو / lib / systemd / نظام / ssh.service

یہاں آپ ترمیم کرسکتے ہیں۔ دوبارہ شروع کریں ترتیب پہلے سے طے شدہ طور پر، یہ مقرر کیا جاتا ہے ناکامی پر . سروس کو دوبارہ شروع کرنے کے دیگر اختیارات ذیل میں درج ہیں:

  • نہیں
  • ہمیشہ
  • پر کامیابی
  • ناکامی پر
  • غیر معمولی
  • اسقاط پر
  • آن واچ ڈاگ

یونٹ سروس فائل میں ایک اور آپشن ہے۔ دوبارہ شروع کریں جس کا استعمال سیکنڈوں کی تعداد بتانے کے لیے کیا جاتا ہے جس کے بعد سروس دوبارہ شروع ہو جائے گی۔

[ سروس ]

دوبارہ شروع کریں = ہمیشہ

دوبارہ شروع کریں = 5

ان ہدایات کا مطلب یہ ہے کہ سروس بوٹ ہونے پر دوبارہ شروع ہو جائے گی اور اگر خلل پڑتا ہے، تو 5 سیکنڈ کے بعد دوبارہ شروع ہو جائے گا۔

ترتیب میں ترمیم کرنے کے بعد، تبدیلیاں لاگو کرنے کے لیے درج ذیل کمانڈ پر عمل کریں۔

sudo systemctl reload-deemon

غور کرنے کے لئے دیگر اہم ترتیبات ہیں StartLimitIntervalSec اور StartLimitBurst . یہ اختیارات سروس کو دوبارہ شروع کرنے کے لیے زیادہ سے زیادہ وقت اور زیادہ سے زیادہ کوششیں سیٹ کرنے کے لیے مفید ہیں۔

[ یونٹ ]

StartLimitIntervalSec = 300

StartLimitBurst = 4

مندرجہ بالا ہدایات سے پتہ چلتا ہے کہ اگر 300 سیکنڈ اور 4 دوبارہ کوششوں کے بعد سروس شروع نہیں ہوتی ہے تو سسٹم ڈی خود بخود کسی سروس کو دوبارہ شروع کرنے کی کوشش کرنا بند کر دے گا۔

اس بات کی تصدیق کرنے کے لیے کہ آیا سروس 5 سیکنڈ کے بعد دوبارہ شروع ہوتی ہے یا نہیں، سروس کے پی آئی ڈی کا استعمال کرتے ہوئے سروس کو ختم کر دیں۔ مار ڈالو کمانڈ.

sudo مار ڈالو -9 [ پی آئی ڈی ]

5 سیکنڈ کے بعد، سروس دوبارہ شروع ہو جائے گی؛ کا استعمال کرتے ہیں journalctl کی حیثیت کو چیک کرنے کے لئے کمانڈ ssh.service .

journalctl میں ssh.service

جب منحصر سروس دوبارہ شروع ہوتی ہے تو سروس کو دوبارہ کیسے شروع کیا جائے

لینکس پر، بہت ساری خدمات ایک دوسرے پر منحصر ہوتی ہیں، اور اسی طرح، جب ایک منحصر سروس دوبارہ شروع ہوتی ہے تو انہیں دوبارہ شروع کرنے کی ضرورت ہوتی ہے۔

سروس کو دوبارہ شروع کرنے کے لیے یونٹ سروس فائل میں تین مختلف آپشنز ہیں، جس میں ایک منحصر سروس دوبارہ شروع کی گئی ہے۔

  • کا حصہ
  • باندھتا ہے۔
  • کی ضرورت ہے۔

یہ تمام اختیارات ایک ہی کام انجام دیتے ہیں۔

آئیے ssh.service کی ایک مثال لیتے ہیں جو apparmor.service پر منحصر ہے۔ ضروری رسائی فراہم کرنے کے لیے لینکس سیکیورٹی ماڈیول۔ لینکس کے استعمال میں کسی سروس کے انحصار کو درج کرنے کے لیے systemctl کے ساتھ فہرست انحصار کمانڈ اور سروس کا نام

systemctl فہرست انحصار ssh.service

لہذا، اگر آپ apparmor.service کو دوبارہ شروع کرتے وقت ssh.service کو دوبارہ شروع کرنا چاہتے ہیں، تو آپ کو apparmor.service فائل کے [Unit] سیکشن میں سروس کے نام کے ساتھ PartOf، BindsTo، یا Requires آپشن کو شامل کرنا ہوگا۔

apparmor.service فائل کھولیں۔

sudo نینو / lib / systemd / نظام / apparmor.service

[یونٹ] سیکشن میں درج ذیل لائن شامل کریں۔

کا حصہ =ssh.service

فائل کو محفوظ کریں اور ڈیمون ریلوڈ کمانڈ پر عمل کریں۔

sudo systemctl ڈیمون دوبارہ لوڈ کریں۔

اب، دوبارہ شروع کریں ssh.service اور پھر چیک کریں apparmor.service لاگ

آپ نوٹس کریں گے۔ apparmor.service ایک ہی وقت میں دوبارہ شروع ssh.service دوبارہ شروع

نتیجہ

لینکس پر کسی سروس یا خدمات کو دوبارہ شروع کرنے کے لیے، systemctl کمانڈ کے ساتھ استعمال کیا جاتا ہے دوبارہ شروع کریں اختیار دی systemctl ایک کمانڈ لائن یوٹیلیٹی ہے جو سسٹمڈ سروسز کو منظم کرنے کے لیے استعمال ہوتی ہے۔ دی دوبارہ شروع کریں آپشن ایک سروس شروع کرتا ہے اور پھر اسے روکتا ہے، ایک غیر فعال سروس کو چالو کرتا ہے۔ تاہم، آپ کسی سروس کو استعمال کر کے اسے چالو کیے بغیر دوبارہ شروع کر سکتے ہیں۔ دوبارہ شروع کرنے کی کوشش کریں۔ اختیار