لینکس پر صارف کی خدمات کیسے بنائیں اور ان کا نظم کریں۔

Lynks Pr Sarf Ky Khdmat Kys Bnayy Awr An Ka Nzm Kry



لینکس کا ایک عام صارف حسب ضرورت سسٹمڈ سروس بنا سکتا ہے۔ جبکہ سسٹمڈ سروسز کا انتظام زیادہ تر سسٹم ایڈمنسٹریٹرز سسٹم سی ٹی ایل کمانڈ کے ذریعے کرتے ہیں۔ اسی کمانڈ کو صارف کے لیے مخصوص خدمات کے انتظام کے لیے بھی استعمال کیا جا سکتا ہے۔ آپ سب کی ضرورت ہے a - صارف پرچم

اس گائیڈ میں، میں اس بات کا احاطہ کروں گا کہ لینکس پر صارف کے لیے مخصوص سروس کیسے بنائی جائے اور systemctl کا استعمال کرتے ہوئے اس کا انتظام کیسے کیا جائے۔

عام صارف کی خدمت رکھنے کی وجہ

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







عام صارف کی خدمت کیسے بنائیں

لینکس پر صارف کی مخصوص خدمات کو میں رکھا گیا ہے۔ ~/.config/systemd/user ڈائریکٹری اگر یہ ڈائریکٹری موجود نہیں ہے، تو اسے بنایا جا سکتا ہے۔

mkdir -p ~ / .config / systemd / صارف

دی -p اگر ضرورت ہو تو فلیگ کا استعمال پیرنٹ ڈائرکٹری بنانے کے لیے کیا جاتا ہے۔ دی ~ مقامی صارف کی ہوم ڈائریکٹری کی نشاندہی کرتا ہے اور اس کے برابر ہے۔ /گھر/صارف جب کہ config فائل سے پہلے کا ڈاٹ اسے چھپا دیتا ہے۔ آئیے ایک سادہ bash اسکرپٹ فائل بنائیں جو ہر 30 منٹ میں میموری کے استعمال کو ٹیکسٹ میں لکھے گی۔ کے نام سے اسکرپٹ بنا رہا ہوں۔ script.sh .

#! /بن/بش

جبکہ سچ

کیا

مفت -m >> / گھر / صارف / myfile.txt

سونا 1800

ہو گیا

اس اسکرپٹ کو کہیں بھی بنایا جاسکتا ہے، لیکن اس بات کو یقینی بنائیں کہ اسکرپٹ کے اندر بیان کردہ راستہ ایک مطلق راستہ ہے۔

اب، آئیے ایک ایسی سروس بناتے ہیں جو اوپر والے اسکرپٹ کو پس منظر میں ایکسیکیوٹ کرے گی۔ کوئی بھی ٹیکسٹ ایڈیٹر لانچ کریں، جیسے نینو یا ویم، اور اس میں نیچے دی گئی لائنیں چسپاں کریں۔

[ یونٹ ]

تفصیل =میری خدمت

[ سروس ]

قسم = سادہ

ExecStart = / بن / bash / گھر / صارف / script.sh

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

[ انسٹال کریں۔ ]

WantedBy =default.target

[یونٹ] سیکشن میں، تفصیل ہدایت میں صرف سروس کا نام ہوتا ہے۔ نوٹ کریں کہ یہ 80 حروف سے زیادہ نہیں ہونا چاہیے۔

[سروس] سیکشن تین اہم ہدایات پر مشتمل ہے۔ سب سے پہلے، قسم ; کونسا سادہ ، پھر ExecStart ہمارے حسب ضرورت اسکرپٹ کے قابل عمل پر مشتمل ہے۔ سروس صرف اس وقت دوبارہ شروع ہوگی جب کوئی ناکامی ہو۔

[انسٹال] سیکشن پر مشتمل ہے۔ WantedBy ہدایت جو ہے default.target ، اس کا مطلب یہ ہے کہ سروس سسٹم کی حالت میں فعال ہو جائے گی جب یہ ڈیفالٹ رن لیول پر پہنچ جائے گی، جو عام طور پر multi-user.target یا graphical.target ہوتی ہے۔

اب فائل کو میں محفوظ کریں۔ ~/.config/systemd/user کسی بھی نام کے ساتھ ڈائریکٹری؛ میں اس کا نام دے رہا ہوں۔ myservice.service .

عام صارف کی خدمت کا انتظام کیسے کریں۔

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

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

systemctl --صارف ڈیمون دوبارہ لوڈ

اس سے تبدیلیاں لاگو ہوں گی۔

یہ جاننے کے لیے کہ سروس چل رہی ہے یا نہیں، سسٹم سی ٹی ایل کا استعمال کریں۔ - صارف پرچم اور اختیار.

systemctl --صارف حالت [ سروس کا نام ]

عام صارف کی خدمت کو منظم کرنے کے لئے دیگر احکامات ذیل میں ذکر کیے گئے ہیں:

systemctl --صارف شروع [ سروس کا نام ]

systemctl --صارف فعال [ سروس کا نام ]

systemctl --صارف روکو [ سروس کا نام ]

systemctl --صارف غیر فعال [ سروس کا نام ]

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

سسٹم ایڈمن کی اجازت کے ساتھ نارمل یوزر سروس کیسے بنائیں

بہت ساری خدمات ہیں جو صارف تخلیق کرتا ہے، لیکن انہیں چلانے کے لیے منتظم کی اجازت درکار ہوتی ہے۔ ایسی خدمات کو شامل کرکے تخلیق کی جاسکتی ہیں۔ صارف [سروس] سیکشن کو ہدایت۔

دی صارف ہدایت کا استعمال اس صارف کے نام کا ذکر کرنے کے لیے کیا جا سکتا ہے جس کی سروس چلانے کے لیے اجازت درکار ہے، جیسے منتظم . لہذا، اگر ایک عام صارف ایک ایسی خدمت بنانا چاہتا ہے جو منتظم کی اجازتوں کا مطالبہ کرتا ہے، تو صرف شامل کرنا صارف = منتظم [Service] سیکشن میں کام کرے گا۔ تاہم جب تک ایڈمن فعال رہے گا یہ سروس فعال رہے گی۔ نوٹ کریں کہ اس سروس کو منتظم براہ راست کنٹرول نہیں کر سکتا۔

نتیجہ

عام صارف سسٹمڈ سروس بھی بنا سکتا ہے، لیکن اسے اس میں رکھنا ہوگا۔ ~/.config/systemd/user ڈائریکٹری یہ سروس اس وقت تک چلتی ہے جب تک کہ صارف جس نے اسے بنایا ہے لاگ ان ہے۔ یہ سروسز سسٹم سی ٹی ایل کمانڈ کے ذریعے بھی چلائی جاتی ہیں لیکن - صارف پرچم جو سسٹم ڈی کو بتاتا ہے کہ سروس صارف کی طرف سے کال کی جا رہی ہے، سسٹم نہیں۔ اس گائیڈ میں، میں نے ایک حسب ضرورت عام صارف کی خدمت بنائی اور اس کا نظم کرنے کے لیے systemctl کمانڈز کا ذکر کیا۔ مزید برآں، میں نے ایک سروس بنانے کے طریقہ کار پر بھی روشنی ڈالی جس کے لیے انتظامی مراعات کی ضرورت ہوتی ہے۔