سسٹم ڈی کے ساتھ اسٹارٹ اپ پر لینکس پروگرام کیسے چلائیں۔

لیپ ٹاپ پر ایک اسٹائلائزڈ ٹرمینل ونڈو۔

فاطموتی احمد زینوری/شٹر اسٹاک



بوٹ پر لینکس پروگرام شروع کرنے کی ضرورت ہے؟ سسٹمڈ سافٹ ویئر اسے کسی پر کرنے کا طریقہ فراہم کرتا ہے۔ سسٹم ڈی کے ساتھ لینکس ڈسٹرو - جو ان دنوں ان میں سے زیادہ تر ہے، بشمول اوبنٹو۔ ہم آپ کو ایک مربوط سروس بنانے کے عمل سے گزریں گے — اور یہ جرنل سے بھی بات کرتا ہے۔

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





سٹارٹ اپ پر پروگرام چلانا

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

شروع ہونے پر شروع ہونے والے پروگرامز |_+_|، کے ذریعے کنٹرول ہوتے ہیں۔ نظام اور خدمت مینیجر |_+_| آغاز پر چلنے والا پہلا عمل ہے۔ اس کے پاس ہمیشہ ہوتا ہے۔ عمل کی شناخت (PID) 1. آپ کے کمپیوٹر میں چلنے والا ہر دوسرا عمل |_+_|، یا اس عمل سے شروع ہوتا ہے جو |_+_| پہلے ہی شروع ہو چکا ہے.



پس منظر میں چلنے والے پروگرام کہلاتے ہیں۔ ڈیمن یا خدمات۔ |_+_| کے آخر میں d ڈیمون کے لئے کھڑا ہے. اس مضمون میں، ہم ایک مثالی خدمت بنائیں گے۔ تمام خانوں پر نشان لگانے کے لیے، ہماری سروس یہ ہونی چاہیے:

  • |_+_| کے ساتھ مربوط سروس یونٹ فائل کے ذریعے
  • اسٹارٹ اپ پر لانچ کیا گیا۔
  • |_+_|، کا استعمال کرتے ہوئے قابل کنٹرول کنٹرول انٹرفیس کے لیے |_+_|
  • جریدے کو لکھنے کے قابل

سروس پروگرام بنانا

ہمارے پاس ایک ایسا پروگرام ہونا چاہیے جو |_+_| شروع کرے گا. ہم ایک سادہ اسکرپٹ بنائیں گے، جسے htg.sh کہتے ہیں۔ اس ٹیوٹوریل میں Gedit ٹیکسٹ ایڈیٹر استعمال کیا گیا ہے، لیکن آپ جو بھی ٹیکسٹ ایڈیٹر چاہیں استعمال کر سکتے ہیں۔

|_ + _ | |_ + _ |



اشتہار

|_+_| ایڈیٹر کھل جائے گا۔ درج ذیل متن کو کاپی اور ایڈیٹر میں چسپاں کریں۔

|_ + _ |

اپنی تبدیلیاں محفوظ کریں اور ایڈیٹر کو بند کریں۔

gedit ایڈیٹر میں htg.sh اسکرپٹ

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

  • دو |_+_| لائنوں کو |_+_| کے ذریعے پائپ کیا جاتا ہے، ایک پروگرام جو لیتا ہے۔ ایک پروگرام سے آؤٹ پٹ اور اسے جرنل میں بھیجتا ہے۔ . جریدے کے اندراجات کو ترجیح دی جاتی ہے۔ ہم |_+_| استعمال کر رہے ہیں۔ (ترجیحی) آپشن اس بات کی نشاندہی کرنے کے لیے کہ ہمارے پیغامات صرف معلومات (معلومات) کے لیے ہیں۔ وہ اہم غلطیاں یا انتباہات نہیں ہیں۔
  • ایک لامتناہی ہے |_+_| لوپ
  • |_+_| متغیر موجودہ تاریخ اور وقت پر سیٹ ہے۔ یہ ایک پیغام میں فارمیٹ کیا جاتا ہے اور جریدے کو بھیجا جاتا ہے۔
  • اس کے بعد اسکرپٹ 60 سیکنڈ تک سوتا ہے۔
  • 60 سیکنڈ کے بعد لوپ کو دہرایا جاتا ہے۔ لہذا، یہ اسکرپٹ جریدے کو ایک بار فی منٹ میں ٹائم اسٹیمپڈ پیغام لکھتا ہے۔

ہم اسکرپٹ کو |_+_| میں کاپی کریں گے۔ ڈائریکٹری

|_ + _ |

اور ہمیں اسے قابل عمل بنانے کی ضرورت ہے:

|_ + _ |

سروس یونٹ فائل بنانا

ہر پروگرام جو |_+_| سے شروع ہوتا ہے۔ ایک ڈیفینیشن فائل ہے، جسے سروس یونٹ فائل کہا جاتا ہے۔ یہ کچھ خاص صفات رکھتا ہے جو |_+_| پروگرام کو تلاش کرنے اور شروع کرنے کے لیے استعمال کر سکتے ہیں، اور اس کے کچھ رویے کی وضاحت کرنے کے لیے۔

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

|_ + _ |

آپ یونٹ فائلوں کی فہرست میں اسکرول کر سکتے ہیں، جسے حروف تہجی کے مطابق ترتیب دیا گیا ہے، اور چیک کر سکتے ہیں کہ آپ جو نام استعمال کرنا چاہتے ہیں وہ نہیں لیا گیا ہے۔

اشتہار

ہماری سروس کو htg.service کہا جائے گا۔ کسی بھی یونٹ فائل میں یہ نام نہیں ہے، لہذا ہم آگے بڑھ سکتے ہیں اور اپنی یونٹ فائل بنا سکتے ہیں۔

|_ + _ |

|_+_| ایڈیٹر کھل جائے گا۔ ایڈیٹر میں درج ذیل متن کو کاپی اور پیسٹ کریں:

|_ + _ |

اپنی تبدیلیاں محفوظ کریں اور ایڈیٹر کو بند کریں۔

gedit ایڈیٹر میں htg.service یونٹ فائل

اندراجات کے یہ معنی ہیں۔ یہ عام اندراجات ہیں۔ ہماری سادہ سروس کو درحقیقت ان میں سے زیادہ تر کی ضرورت نہیں ہے، لیکن ان کو شامل کرنا ہمیں ان کی وضاحت کرنے کی اجازت دیتا ہے۔

    تفصیل:یہ آپ کی خدمت کی متن کی تفصیل ہے۔ چاہتا ہے:ہماری سروس چاہتی ہے — لیکن اس کی ضرورت نہیں ہے — ہماری سروس شروع ہونے سے پہلے نیٹ ورک تیار ہو۔ بعد:یونٹ کے ناموں کی فہرست جو اس سروس کے کامیابی کے ساتھ شروع ہونے کے بعد شروع کیے جائیں، اگر وہ پہلے سے نہیں چل رہے ہیں۔ قسم:سادہ |_+_| اس سروس کو جلد از جلد شروع کرنے پر غور کرے گا جیسے ہی |_+_| کانٹا لگایا گیا ہے. ExecStart:اس عمل کا راستہ جو شروع کیا جانا چاہیے۔ دوبارہ شروع کریں:سروس کو کب اور اگر دوبارہ شروع کیا جائے۔ ہم نے اسے ناکامی پر سیٹ کیا ہے۔ RestartSec:سروس کو دوبارہ شروع کرنے کی کوشش کرنے سے پہلے کتنا انتظار کرنا ہے۔ یہ قدر سیکنڈوں میں ہے۔ KillMode:وضاحت کرتا ہے کہ کیسے |_+_| اگر ہم پوچھیں تو عمل کو ختم کر دینا چاہیے |_+_| سروس کو روکنے کے لئے. ہمارے پاس یہ عمل کرنے کا سیٹ ہے۔ یہ |_+_| کا سبب بنتا ہے۔ استعمال کرنے کے لیے |_+_| صرف اہم عمل پر سگنل. اگر ہماری سروس ایک سادہ اسکرپٹ کے بجائے ایک غیر معمولی پروگرام تھا، تو ہم اسے مخلوط پر سیٹ کریں گے تاکہ اس بات کو یقینی بنایا جا سکے کہ کوئی پیدا شدہ عمل بھی ختم ہو جائے۔ مطلوب:ہمارے پاس یہ multi-user.target پر سیٹ ہے، جس کا مطلب ہے کہ سروس اس وقت تک شروع کی جانی چاہیے جب تک کہ سسٹم ایسی حالت میں ہے جہاں متعدد صارفین لاگ ان کر سکتے ہیں، چاہے گرافیکل یوزر انٹرفیس دستیاب ہو یا نہ ہو۔

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

یہ کمانڈ مالک کو پڑھنے اور لکھنے کی اجازت دے گا، اور گروپ کو پڑھنے کی اجازت دے گا۔ دوسروں کو کوئی اجازت نہیں ہوگی۔

|_ + _ |

ہمارے پاس |_+_| ہو سکتا ہے۔ ہمارے لیے ہماری یونٹ فائل کا نحو چیک کریں، چاہے سروس ابھی تک نہیں چل رہی ہے۔ کسی بھی غلطی کی اطلاع دی جائے گی۔ (دراصل، .service حصہ زیادہ تر کمانڈز کے لیے اختیاری ہے۔)

|_ + _ |

اشتہار

کوئی غلطی نمایاں نہیں کی گئی ہے، جس کا مطلب ہے کہ ہماری یونٹ فائل مصنوعی طور پر درست ہے۔

سروس شروع کر رہا ہے۔

جب آپ ایک نئی یونٹ فائل شامل کرتے ہیں یا موجودہ فائل میں ترمیم کرتے ہیں، تو آپ کو |_+_| بتانا چاہیے۔ یونٹ فائل کی تعریفیں دوبارہ لوڈ کرنے کے لیے۔

|_ + _ |

اگر آپ چاہتے ہیں کہ کوئی سروس اسٹارٹ اپ پر شروع کی جائے تو آپ کو لازمی ہے۔ فعال یہ:

|_ + _ |

کسی سروس کو فعال کرنے سے یہ شروع نہیں ہوتا ہے، یہ صرف اسے بوٹ کے وقت شروع کرنے کے لیے سیٹ کرتا ہے۔ سروس شروع کرنے کے لیے ابھی آپ کو استعمال کرنا چاہیے |_+_| |_+_| کے ساتھ اختیار

|_ + _ |

سروس کی تصدیق کرنا

دستی طور پر سروس شروع کرنے کے بعد یا کمپیوٹر کو ریبوٹ کرنے کے بعد، ہم تصدیق کر سکتے ہیں کہ ہماری سروس صحیح طریقے سے چل رہی ہے۔

|_ + _ |

سروس کی حیثیت ہمارے لیے ظاہر ہوتی ہے۔

ٹرمینل وڈنو میں htg.service کی حیثیت

  • سبز نقطے کا مطلب ہے کہ ہماری سروس چل رہی ہے اور آسانی سے چل رہی ہے۔
  • سروس کا نام htg.service ہے، اور لمبی تفصیل وہی ہے جو ہم نے یونٹ فائل میں فراہم کی ہے۔
  • ہمیں دکھایا گیا ہے کہ کون سی یونٹ فائل لوڈ کی گئی ہے /etc/systemd/system/htg.service۔
  • سروس فعال ہے، اور سروس کے شروع ہونے کا وقت ہمارے لیے درج ہے۔
  • اس کا پی آئی ڈی 7762 ہے۔
  • خدمت سے وابستہ دو کام ہیں۔
  • کل 928 کیبی بائٹس میموری سروس کی طرف سے استعمال کیا جا رہا ہے.
  • کنٹرول گروپ میں htg.sh اسکرپٹ اور |_+_| شامل ہیں۔ کمانڈ، جسے htg.sh کے ذریعے شروع کیا گیا ہے۔ زیادہ تر وقت، |_+_| کمانڈ اس سروس کے لیے کام کرے گی۔

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

سروس کو روکنا اور غیر فعال کرنا

اگر آپ کو سروس بند کرنے کی ضرورت ہے، تو آپ اس کمانڈ کے ساتھ ایسا کر سکتے ہیں:

|_ + _ |

اشتہار

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

|_ + _ |

اگر سروس چل رہی ہے، تو یہ کمانڈ اسے نہیں روکتی ہے۔ یہ صرف بتاتا ہے |_+_| اگلے ریبوٹ پر سروس شروع نہ کریں۔

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

سروس ٹپ

اس بات کو یقینی بنائیں کہ آپ کا پروگرام سروس کے طور پر شروع کرنے کی کوشش کرنے سے پہلے توقع کے مطابق چلتا ہے۔

لینکس کمانڈز
فائلوں ٹار · pv · کیٹ · tac · chmod · گرفت · فرق · sed · کے ساتھ · آدمی · pushd · پاپ ڈی · fsck · ٹیسٹ ڈسک · seq · fd · پانڈوک · سی ڈی · $PATH · awk · شمولیت · jq · گنا · uniq · journalctl · دم · حالت · ls · fstab · باہر پھینک دیا · کم · chgrp · chown · rev · دیکھو · تار · قسم · نام تبدیل کریں · زپ · ان زپ · پہاڑ · umount · انسٹال کریں · fdisk · mkfs · rm · rmdir · rsync · ڈی ایف · جی پی جی · ہم · نینو · mkdir · سے · ln · پیچ · تبدیل · rcone · ٹکڑا · ایس آر ایم
عمل عرف · سکرین · سب سے اوپر · اچھا · رینس · ترقی · اسٹریس · نظام · tmux · chsh · تاریخ · پر · بیچ · مفت · کونسا · dmesg · usermod · پی ایس · کروٹ · xargs · tty · گلابی · lsof · vmstat · وقت ختم · دیوار · جی ہاں · مار ڈالو · سونا · sudo · اس کا · وقت · گروپ ایڈ · usermod · گروپس · lshw · بند · دوبارہ شروع کریں · روکو · بجلی بند · پاس ڈبلیو ڈی · lscpu · کرونٹاب · تاریخ · bg · fg
نیٹ ورکنگ netstat · پنگ · ٹریسروٹ · آئی پی · ss · کون ہے · fail2ban · bmon · تم · انگلی · nmap · ایف ٹی پی · curl · wget · ڈبلیو ایچ او · میں کون ہوں · میں · iptables · ssh-keygen · ufw

متعلقہ: ڈویلپرز اور شائقین کے لیے بہترین لینکس لیپ ٹاپ

اگلا پڑھیں ڈیو میکے کی پروفائل تصویر ڈیو میکے
ڈیو میکے نے سب سے پہلے کمپیوٹر کا استعمال اس وقت کیا جب پنچڈ پیپر ٹیپ کا رواج تھا، اور وہ تب سے پروگرامنگ کر رہا ہے۔ آئی ٹی انڈسٹری میں 30 سال سے زیادہ کے بعد، اب وہ کل وقتی ٹیکنالوجی صحافی ہیں۔ اپنے کیریئر کے دوران، اس نے ایک فری لانس پروگرامر، ایک بین الاقوامی سافٹ ویئر ڈویلپمنٹ ٹیم کے مینیجر، ایک IT سروسز پروجیکٹ مینیجر، اور حال ہی میں، ڈیٹا پروٹیکشن آفیسر کے طور پر کام کیا ہے۔ ان کی تحریر howtogeek.com، cloudsavvyit.com، itenterpriser.com، اور opensource.com نے شائع کی ہے۔ ڈیو لینکس کے مبشر اور اوپن سورس کے وکیل ہیں۔
مکمل بائیو پڑھیں

دلچسپ مضامین