এলএফসিএস: পরিচালনা সিস্টেম স্টার্টআপ প্রক্রিয়া এবং পরিষেবাদি (সিসভিনিট, সিস্টেমড এবং আপস্টার্ট) - পার্ট 7


কয়েক মাস আগে, লিনাক্স ফাউন্ডেশন এলএফসিএস (লিনাক্স ফাউন্ডেশন সার্টিফাইড সিসাদমিন) শংসাপত্র ঘোষণা করেছে, এটি একটি উত্তেজনাপূর্ণ নতুন প্রোগ্রাম, যার লক্ষ্য বিশ্বের সমস্ত প্রান্তের ব্যক্তিগণকে লিনাক্স সিস্টেমগুলিতে অন্তর্বর্তী সিস্টেম অ্যাডমিনিস্ট্রেশন কার্য সম্পাদনের ক্ষেত্রে সার্টিফিকেট পেতে দেয়। এর মধ্যে ইতিমধ্যে চলমান সিস্টেম এবং পরিষেবাদি সমর্থন সহ প্রথম হাতের সমস্যা-সন্ধান এবং বিশ্লেষণের পাশাপাশি ইঞ্জিনিয়ারিং দলগুলিতে কখন বিষয়টি উত্থাপন করা হবে তা সিদ্ধান্ত নেওয়ার ক্ষমতা অন্তর্ভুক্ত রয়েছে।

নিম্নলিখিত ভিডিওটিতে লিনাক্স ফাউন্ডেশন শংসাপত্র প্রোগ্রামের একটি সংক্ষিপ্ত পরিচিতির বর্ণনা দেওয়া হয়েছে।

এই পোস্টটি একটি 10-টিউটোরিয়াল সিরিজের 7 ম অংশ, এখানে এই অংশে, আমরা কীভাবে লিনাক্স সিস্টেমের স্টার্টআপ প্রক্রিয়া এবং পরিষেবাদি পরিচালনা করতে হবে, যা এলএফসিএস শংসাপত্র পরীক্ষার জন্য প্রয়োজনীয়।

লিনাক্স স্টার্টআপ প্রক্রিয়া পরিচালনা করা

লিনাক্স সিস্টেমের বুট প্রক্রিয়াটি বিভিন্ন ধাপে গঠিত হয়, প্রতিটি প্রত্যেকে আলাদা আলাদা উপাদান দ্বারা প্রতিনিধিত্ব করা হয়। নিম্নলিখিত চিত্রটি সংক্ষেপে বুট প্রক্রিয়াটির সংক্ষিপ্তসার জানায় এবং জড়িত সমস্ত প্রধান উপাদান দেখায়।

আপনি যখন আপনার মেশিনে পাওয়ার বোতাম টিপেন, তখন মাদারবোর্ডে EEPROM চিপে সঞ্চিত ফার্মওয়্যার পোষ্ট ( পাওয়ার-অন স্ব-পরীক্ষা ) সিস্টেমের হার্ডওয়্যার সংস্থানগুলির স্থিতি পরীক্ষা করতে। পোষ্ট শেষ হয়ে গেলে, ফার্মওয়্যারটি এমবিআর বা ইএফআইতে অবস্থিত 1 ম পর্যায় বুট লোডার অনুসন্ধান করে এবং লোড করে প্রথম উপলব্ধ ডিস্কের বিভাজন এবং এটিকে নিয়ন্ত্রণ দেয়।

এমবিআর বিআইওএস সেটিংসে বুটেবল হিসাবে চিহ্নিত ডিস্কের প্রথম সেক্টরে অবস্থিত এবং এটি 512 আকারে বাইট।

  1. প্রথম 446 বাইট : বুটলোডারটিতে এক্সিকিউটেবল কোড এবং ত্রুটি বার্তা পাঠ্য উভয়ই থাকে
  2. পরবর্তী by৪ বাইট : পার্টিশন টেবিলটিতে চারটি পার্টিশনের প্রতিটি (প্রাথমিক বা বর্ধিত) রেকর্ড রয়েছে। অন্যান্য জিনিসের মধ্যে প্রতিটি রেকর্ড প্রতিটি বিভাগের স্থিতি (সক্রিয়/সক্রিয় নয়), আকার এবং সূচনা/শেষ ক্ষেত্রগুলি নির্দেশ করে
  3. সর্বশেষ 2 বাইট : ম্যাজিক নম্বরটি এমবিআরের বৈধতা যাচাইয়ের কাজ করে

নিম্নলিখিত কমান্ডটি এমবিআর এর একটি ব্যাকআপ সম্পাদন করে (এই উদাহরণে /dev/sda প্রথম হার্ড ডিস্ক)। পার্টিশন টেবিলটি দুর্নীতিগ্রস্থ হয়ে উঠলে, উদাহরণস্বরূপ, সিস্টেমটিকে অজুগনযোগ্য রেন্ডারিংয়ের ফলে << mbr.bkp ফলাফল পাওয়া যাবে file

অবশ্যই, যদি প্রয়োজন দেখা দেয় তবে পরে এটি ব্যবহার করার জন্য, আমাদের এটি সংরক্ষণ এবং এটি অন্য কোথাও সংরক্ষণ করতে হবে (উদাহরণস্বরূপ ইউএসবি ড্রাইভ)। এই ফাইলটি আমাদের এমবিআর পুনরুদ্ধার করতে সহায়তা করবে এবং এর মধ্যে আমরা যদি হার্ড ড্রাইভের লেআউটটি পরিবর্তন না করি তবে কেবল আবার আমাদের যেতে হবে।

# dd if=/dev/sda of=mbr.bkp bs=512 count=1
# dd if=mbr.bkp of=/dev/sda bs=512 count=1

ইএফআই / ইউইএফআই পদ্ধতি ব্যবহার করা সিস্টেমগুলির জন্য, ইউইএফআই ফার্মওয়্যারটি কোন ইউইএফআই অ্যাপ্লিকেশন চালু করতে হবে এবং কোথা থেকে (যেমন, কোন ডিস্কে এবং ডিস্কে বিভাজন করবে) তা নির্ধারণের জন্য তার সেটিংস পড়ছে EFI পার্টিশনটি অবস্থিত)।

এরপরে, ২ য় পর্যায় বুট লোডার (ওরফে বুট পরিচালক) লোড হয়ে চালিত হয়। GRUB [ গ্র্যান্ড ইউনিফাইড বুট ] লিনাক্সের মধ্যে প্রায়শই ব্যবহৃত বুট ম্যানেজার। আজ ব্যবহৃত বেশিরভাগ সিস্টেমে দুটি স্বতন্ত্র সংস্করণের একটি পাওয়া যায়।

  1. GRUB লিগ্যাসি কনফিগারেশন ফাইল : /boot/grub/menu.lst (পুরানো বিতরণ, EFI/UEFI ফার্মওয়্যার দ্বারা সমর্থিত নয়)
  2. GRUB2 কনফিগারেশন ফাইল : সম্ভবতঃ,/ইত্যাদি/ডিফল্ট/গ্রাব

যদিও আপনি এলএফসিএস পরীক্ষার উদ্দেশ্যগুলি GRUB ইন্টার্নাল সম্পর্কে স্পষ্টভাবে জ্ঞানের অনুরোধ জানায় না, যদি আপনি সাহসী হন এবং আপনার সিস্টেমে গণ্ডগোলের সামর্থ্য রাখেন (আপনি এটি চেষ্টা করতে চাইতে পারেন) প্রথমে ভার্চুয়াল মেশিনে, কেবল ক্ষেত্রে), আপনাকে চালানো দরকার।

# update-grub

পরিবর্তনগুলি প্রয়োগ করার জন্য GRUB এর কনফিগারেশনটি সংশোধন করার পরে রুট হিসাবে।

মূলত, GRUB ডিফল্ট কার্নেল এবং initrd বা initramfs চিত্র লোড করে। কয়েকটি কথায়, initrd বা initramfs হার্ডওয়্যার সনাক্তকরণ, কর্নেল মডিউল লোডিং এবং রিয়েল ফাইল সিস্টেমটি মাউন্ট করার জন্য প্রয়োজনীয় ডিভাইস আবিষ্কার সম্পাদন করতে সহায়তা করে।

আসল রুট ফাইল সিস্টেমটি শেষ হয়ে গেলে, সাধারণ ব্যবহারকারীর শুরু করার জন্য কার্নেল সিস্টেম এবং পরিষেবা পরিচালক ( init বা systemd , যার প্রক্রিয়া সনাক্তকরণ বা পিআইডি সর্বদা 1) চালায় exec একটি ইউজার ইন্টারফেস উপস্থাপন করার জন্য স্পেস বুট প্রক্রিয়া।

init এবং সিস্টেমযুক্ত উভয়ই ডেমন (পটভূমি প্রক্রিয়া) যা অন্যান্য ডেমন পরিচালনা করে, প্রথম পরিষেবা (বুট চলাকালীন) শুরু হয় এবং শেষ করার জন্য (শাটডাউনের সময়) শেষ পরিষেবা হিসাবে।

প্রারম্ভিক পরিষেবাগুলি (SysVinit)

লিনাক্সে রানলেভেল ধারণাটি কোন পরিষেবাগুলি চলছে তা নিয়ন্ত্রণ করে একটি সিস্টেম ব্যবহারের বিভিন্ন উপায় নির্দিষ্ট করে। অন্য কথায়, একটি রানলেভেল বর্তমান কার্য সম্পাদন অবস্থায় = রানলেভেল (এবং কোনটি না পারে) কোন কাজ সম্পাদন করতে পারে তা নিয়ন্ত্রণ করে।

Ditionতিহ্যগতভাবে, এই স্টার্টআপ প্রক্রিয়াটি সিস্টেম ভি ইউনিক্স এর সাথে উদ্ভূত কনভেনশনগুলির উপর ভিত্তি করে সঞ্চালিত হয়েছিল, মেশিনটি নির্দিষ্ট রানলেলে প্রবেশ করার সাথে সাথে পরিষেবাগুলি শুরু ও বন্ধ করে দেওয়া পরিষেবাগুলি স্ক্রিপ্টগুলির সংগ্রহ সম্পাদন করে (যা, অন্য কথায়) , সিস্টেম চালনার একটি পৃথক পদ্ধতি)।

প্রতিটি রানলেভেলের মধ্যে, স্বতন্ত্র পরিষেবাগুলি চালনার জন্য সেট করা যেতে পারে, বা চলমান থাকলে বন্ধ করতে হবে। কিছু বড় বিতরণের সর্বশেষ সংস্করণ সিস্টেম ভি স্ট্যান্ডার্ড থেকে সিস্টেমড নামক একটি নতুন পরিষেবা এবং সিস্টেম ম্যানেজারের পক্ষে চলেছে, তবে সাধারণত সামঞ্জস্যের উদ্দেশ্যে sysv কমান্ডগুলি সমর্থন করুন। এর অর্থ হ'ল আপনি সিস্টেম-ভিত্তিক বিতরণে বেশিরভাগ সুপরিচিত সিএসভি init সরঞ্জাম চালাতে পারেন।

আরও পড়ুন : কেন ‘সিস্টেমেড’ লিনাক্সে ‘থিম’ প্রতিস্থাপন করে

সিস্টেম প্রক্রিয়া শুরু করা ছাড়াও, কোন রানলেভেল প্রবেশ করাতে হবে তা সিদ্ধান্ত নেওয়ার জন্য ফাইলটি /etc/inittab ফাইলের দিকে চেয়ে থাকে।

রানলেভেলের মধ্যে স্যুইচ করার জন্য, আমরা init কমান্ডটি ব্যবহার করে কেবল একটি রানলেভেল পরিবর্তন করতে পারি: init N (যেখানে এন উপরে তালিকাভুক্ত রানলেভেলের মধ্যে একটি) is দয়া করে মনে রাখবেন যে এটি কোনও চলমান সিস্টেমকে আলাদা রানলেভলে নিয়ে যাওয়ার প্রস্তাবিত উপায় নয় কারণ এটি বিদ্যমান লগ-ইন ব্যবহারকারীদের কোনও সতর্কতা দেয় না (ফলে তারা কাজটি হারাতে এবং প্রক্রিয়াগুলি অস্বাভাবিকভাবে শেষ করতে পারে)।

পরিবর্তে শাটডাউন কমান্ডটি সিস্টেমটি পুনঃসূচনা করতে ব্যবহার করা উচিত (যা প্রথমে সমস্ত লগ-ইন করা ব্যবহারকারীদের জন্য একটি সতর্কতা বার্তা প্রেরণ করে এবং আরও লগইনগুলিকে অবরুদ্ধ করে; এটি রানলেভেলগুলি স্যুইচ করার জন্য সংকেত দেয়); তবে, ডিফল্ট রানলেভেল (যার দ্বারা সিস্টেম বুট করবে) অবশ্যই প্রথমে /etc/inittab ফাইলটিতে সম্পাদনা করতে হবে।

সেই কারণে, রানলেভের মধ্যে সঠিকভাবে স্যুইচ করতে এই পদক্ষেপগুলি অনুসরণ করুন, মূল হিসাবে /etc/inittab এ নিম্নলিখিত লাইনটি সন্ধান করুন।

id:2:initdefault:

এবং আপনার পছন্দের পাঠ্য সম্পাদক হিসাবে পছন্দসই রানলেভেলের জন্য 2 নম্বরটি পরিবর্তন করুন, যেমন ভিম (লিনাক্সে vi/vim সম্পাদকটি কীভাবে ব্যবহার করবেন - এই সিরিজের অংশ 2) এ বর্ণিত)।

এরপরে, রুট হিসাবে চালান।

# shutdown -r now

সর্বশেষ কমান্ডটি সিস্টেমটি পুনরায় চালু করবে, এটি পরবর্তী বুটের সময় নির্দিষ্ট রানলেভেলে শুরু হবে এবং /etc/rcrcrrrrlelelele.d কোন পরিষেবাগুলি শুরু করা উচিত এবং কোনটি করা উচিত নয় তা সিদ্ধান্তের জন্য ডিরেক্টরি। উদাহরণস্বরূপ, নিম্নলিখিত সিস্টেমে রানলেভেল 2 এর জন্য।

বুটে সিস্টেম পরিষেবাদি সক্ষম বা অক্ষম করতে, আমরা সেন্টোস/ওপেনসুএসে এবং চেককনফিগ কমান্ডটি ডেবিয়ান এবং ডেরাইভেটিভসে sysv-rc-conf ব্যবহার করব। এই সরঞ্জামটি আমাদের এটিও প্রদর্শন করতে পারে যে কোনও নির্দিষ্ট রানলেভেলের জন্য কোনও পরিষেবার পূর্বনির্ধারিত অবস্থা কী।

আরও পড়ুন : কীভাবে লিনাক্সে অযাচিত পরিষেবাদি বন্ধ এবং অক্ষম করবেন

কোনও পরিষেবার জন্য রানলেভেল কনফিগারেশন তালিকাভুক্ত করা হচ্ছে।

# chkconfig --list [service name]
# chkconfig --list postfix
# chkconfig --list mysqld

উপরের চিত্রটিতে আমরা দেখতে পাচ্ছি যে পোস্টফিক্স যখন সিস্টেম রান বামন 5 এর মাধ্যমে প্রবেশ করে b> 2 র মাধ্যমে রানলেভের 2 এর জন্য ডিফল্টরূপে চলবে। এখন ধরা যাক এটি প্রত্যাশিত আচরণ নয়।

উদাহরণস্বরূপ, রানলেভেল 5 এর জন্য আমাদের মাইএসকিএলডি চালু করতে হবে, এবং রানলেভেল 4 এবং 5 এর জন্য পোস্টফিক্সটি বন্ধ করতে হবে (প্রতিটি রান করুন) রুট হিসাবে নিম্নলিখিত কমান্ড)।

# chkconfig --level [level(s)] service on
# chkconfig --level 5 mysqld on
# chkconfig --level [level(s)] service off
# chkconfig --level 45 postfix off

আমরা এখন ডেবিয়ান-ভিত্তিক সিস্টেমে sysv-rc-conf ব্যবহার করে একই ধরণের কাজগুলি করব।

একটি নির্দিষ্ট রানলেভলে স্বয়ংক্রিয়ভাবে শুরু করার জন্য পরিষেবাটি কনফিগার করা এবং এটি অন্য সকলের থেকে শুরু হওয়া থেকে বিরত।

1. আসুন << এমডিএডএম শুরু করার জন্য কনফিগার করা রানলেভেলগুলি কী কী তা দেখতে নীচের কমান্ডটি ব্যবহার করুন।

# ls -l /etc/rc[0-6].d | grep -E 'rc[0-6]|mdadm'

২. আমরা mddm 2 ব্যতীত সমস্ত রানলেভেল থেকে শুরু করতে প্রতিরোধ করতে sysv-rc-conf ব্যবহার করব। পছন্দসই হিসাবে কেবল (স্পেস বারের সাহায্যে) পরীক্ষা করুন বা আনচেক করুন (তীর কীগুলির সাহায্যে আপনি উপরে, নীচে, বাম এবং ডানদিকে যেতে পারেন)।

# sysv-rc-conf

তারপরে প্রস্থান করতে কি টিপুন।

৩. আমরা সিস্টেমটি পুনরায় চালু করব এবং পদক্ষেপ ১ থেকে আবার কমান্ডটি চালাব।

# ls -l /etc/rc[0-6].d | grep -E 'rc[0-6]|mdadm'

উপরের চিত্রটিতে আমরা দেখতে পাচ্ছি যে এমডিএমডিএম কেবল রানলেভেল এ শুরু করার জন্য কনফিগার করা হয়েছে।

সিস্টেমড সম্পর্কে কি?

systemd হ'ল আরও একটি পরিষেবা এবং সিস্টেম ম্যানেজার যা বেশ কয়েকটি বড় লিনাক্স ডিস্ট্রিবিউশন গ্রহণ করে। এটি সিস্টেম প্রারম্ভকালে সমান্তরালভাবে আরও প্রসেসিংয়ের অনুমতি দেওয়ার লক্ষ্য রাখে ( সিসভিনিট এর বিপরীতে যা সর্বদা ধীর হতে থাকে কারণ এটি একবারে প্রক্রিয়া শুরু করে, অন্যটির উপর নির্ভর করে কিনা তা পরীক্ষা করে এবং অপেক্ষা করে ডেমনগুলি আরও বেশি পরিষেবা চালু করতে পারে), এবং একটি চলমান সিস্টেমে ডায়নামিক রিসোর্স ম্যানেজমেন্ট হিসাবে পরিবেশন করা।

সুতরাং, বুট চলাকালীন কোনও দৃ reason় কারণ ছাড়াই প্রবর্তন করার পরিবর্তে পরিষেবাগুলি শুরু করা হয় (সিস্টেমের উত্স গ্রহণ করা এড়াতে)।

আপনার সিস্টেমে চলছে সমস্ত প্রসেসের স্থিতি দেখতে সিস্টেমড নেটিভ এবং এসআইএসভি উভয় পরিষেবা, নিম্নলিখিত কমান্ডটি চালান।

# systemctl

এলওএডি কলামটি ইউনিট সংজ্ঞা ( ইউএনআইটি কলামে উল্লেখ করে, যা পরিষেবা বা সিস্টেমের দ্বারা রক্ষণাবেক্ষণ করা কিছু দেখায়) সঠিকভাবে লোড হয়েছিল কিনা, ACTIVE এবং এসইউ কলামগুলি এ জাতীয় ইউনিটের বর্তমান অবস্থা দেখায়।

অ্যাক্টিভ কলাম যখন ইঙ্গিত দেয় যে ইউনিটের স্থিতি সক্রিয় ছাড়া অন্য কোনও বিষয় রয়েছে তখন আমরা কী ব্যবহার করে যাচ্ছিলাম তা পরীক্ষা করতে পারি।

# systemctl status [unit]

উদাহরণস্বরূপ, উপরের চিত্রটিতে মিডিয়া-সাম্বা.মাউন্ট ব্যর্থ অবস্থায় রয়েছে। চলুন চলুন।

# systemctl status media-samba.mount

আমরা দেখতে পাচ্ছি মিডিয়া-সাম্বা.মাউন্ট হোস্ট <<< এ মাউন্ট প্রক্রিয়া //192.168.0.10/gacanepa ।

পরিষেবাগুলি শুরু করা বা বন্ধ করা

একবার নেটওয়ার্ক ভাগ //192.168.0.10/gacanepa উপলব্ধ হয়ে ওঠে, আসুন শুরু করার চেষ্টা করি, তারপরে থামি, এবং অবশেষে মিডিয়া-সাম্বা.মઉન્ટ ইউনিটটি পুনরায় চালু করুন। প্রতিটি ক্রিয়া সম্পাদন করার পরে, এর স্ট্যাটাসটি যাচাই করার জন্য সিস্টেমেস্টেল স্ট্যাটাস মিডিয়া-সাম্বা.মাউন্ট চালান।

# systemctl start media-samba.mount
# systemctl status media-samba.mount
# systemctl stop media-samba.mount
# systemctl restart media-samba.mount
# systemctl status media-samba.mount

সিস্টেমড এর অধীনে আপনি কোনও পরিষেবা বুট হয়ে গেলে সক্ষম বা অক্ষম করতে পারবেন।

# systemctl enable [service] 		# enable a service 
# systemctl disable [service] 		# prevent a service from starting at boot

বুটে স্বয়ংক্রিয়ভাবে শুরু করার জন্য কোনও পরিষেবা সক্ষম বা নিষ্ক্রিয় করার প্রক্রিয়া /etc/systemd/system/m Multi-user.target.wants ডিরেক্টরিতে প্রতীকী লিঙ্কগুলি যুক্ত করা বা অপসারণের অন্তর্ভুক্ত।

বিকল্পভাবে, আপনি আদেশটির সাহায্যে কোনও পরিষেবার বর্তমান অবস্থান (সক্ষম বা অক্ষম) খুঁজে পেতে পারেন।

# systemctl is-enabled [service]

উদাহরণ স্বরূপ,

# systemctl is-enabled postfix.service

এছাড়াও, আপনি সিস্টেমটি পুনরায় বুট করতে বা বন্ধ করতে পারেন or

# systemctl reboot
# systemctl shutdown

আপস্টার্ট

আপস্টার্ট হ'ল /এসবিন/ইনি ডেমনের ইভেন্ট-ভিত্তিক প্রতিস্থাপন এবং কেবলমাত্র পরিষেবাগুলি শুরু করার প্রয়োজনে জন্মগ্রহণ করেছিল, যখন তাদের প্রয়োজন হয় (তারা যখন তাদের তত্ত্বাবধানও করেন তারা চলছে), এবং ইভেন্টগুলি হ্যান্ডলিং হওয়ার সাথে সাথে এটি ক্লাসিক, নির্ভরতা-ভিত্তিক সিস্টিনিট সিস্টেমকে ছাড়িয়ে যায়।

এটি মূলত উবুন্টু বিতরণের জন্য তৈরি হয়েছিল, তবে এটি রেড হ্যাট এন্টারপ্রাইজ লিনাক্স 6.0 এ ব্যবহৃত হয়। যদিও এটি সিস্টিনিট এর প্রতিস্থাপন হিসাবে সমস্ত লিনাক্স ডিস্ট্রিবিউশনগুলিতে মোতায়েনের উপযোগী হওয়ার উদ্দেশ্যে করা হয়েছিল, তবে সময়ের সাথে সাথে এটি সিস্টেমযুক্ত দ্বারা ছাপিয়ে যায়। ১৪ ই ফেব্রুয়ারী, ২০১ Mark, মার্ক শাটলওয়ার্থ (ক্যানোনিকাল লিমিটেডের প্রতিষ্ঠাতা) ঘোষণা করেছেন যে ভবিষ্যতে উবুন্টুর প্রকাশগুলি সিস্টেমডকে ডিফল্ট থিম ডিমন হিসাবে ব্যবহার করবে।

যেহেতু সিস্টেমের জন্য SysV স্টার্টআপ স্ক্রিপ্টটি এত দিন ধরে প্রচলিত ছিল, তাই প্রচুর পরিমাণে সফ্টওয়্যার প্যাকেজগুলিতে SysV স্টার্টআপ স্ক্রিপ্ট অন্তর্ভুক্ত রয়েছে। এই জাতীয় প্যাকেজ সামঞ্জস্য করার জন্য, আপস্টার্ট একটি সামঞ্জস্যতা মোড সরবরাহ করে: এটি স্বাভাবিক স্থানে ( /etc/rc.d/rc?.d , /etc/init.d/ এ SysV প্রারম্ভিক স্ক্রিপ্টগুলি চালায় আরসি?। ডি , /etc/rc?.d , বা অনুরূপ অবস্থান)। সুতরাং, আমরা যদি এমন প্যাকেজ ইনস্টল করি যা এখনও আপস্টার্ট কনফিগারেশন স্ক্রিপ্টটি অন্তর্ভুক্ত করে না তবে এটি এখনও স্বাভাবিক উপায়ে চালু করা উচিত।

তদ্ব্যতীত, আমরা যদি চককনফাইগের মতো ইউটিলিটিগুলি ইনস্টল করে থাকি তবে আপনি সিস্টেভিট ভিত্তিক সিস্টেমে ঠিক তেমনি আপনার এসআইএসভি-ভিত্তিক পরিষেবাদি পরিচালনা করার জন্য সেগুলি ব্যবহার করতে সক্ষম হবেন।

আপস্টার্ট স্ক্রিপ্টগুলি এসআইএসভি স্টার্টআপ স্ক্রিপ্টগুলির চেয়ে বিস্তৃত বিভিন্ন কর্মের ভিত্তিতে পরিষেবা শুরু করা বা বন্ধ করা সমর্থন করে; উদাহরণস্বরূপ, যখনই কোনও নির্দিষ্ট হার্ডওয়্যার ডিভাইস সংযুক্ত থাকে তখন আপস্টার্ট একটি পরিষেবা চালু করতে পারে।

একটি সিস্টেম যা আপস্টার্ট এবং এর নেটিভ স্ক্রিপ্টগুলি একচেটিভাবে /etc/inittab ফাইল এবং রানলেভেল-নির্দিষ্ট সিসভি স্টার্টআপ স্ক্রিপ্ট ডিরেক্টরিগুলির .conf দ্বারা প্রতিস্থাপন করে /etc/init ডিরেক্টরিতে স্ক্রিপ্টগুলি।

এই * .কনফ স্ক্রিপ্টগুলিতে (কাজের সংজ্ঞা হিসাবেও পরিচিত) সাধারণত নিম্নলিখিতটি নিয়ে থাকে:

    1. প্রক্রিয়াটির বিবরণ।
    2. প্রক্রিয়াটি চালানো উচিত এমন রানলেভেলগুলি বা ইভেন্টগুলি এটির ট্রিগার করা উচিত
    3. রানলেভেলগুলি যেখানে প্রক্রিয়াটি থামানো উচিত বা ইভেন্টগুলি যা এটি বন্ধ করে দেওয়া উচিত
    4. বিকল্পগুলি
    5. প্রক্রিয়া আরম্ভ করার আদেশ দিন।

    উদাহরণ স্বরূপ,

    # My test service - Upstart script demo description "Here goes the description of 'My test service'" author "Dave Null <[email >"
    # Stanzas
    
    #
    # Stanzas define when and how a process is started and stopped
    # See a list of stanzas here: http://upstart.ubuntu.com/wiki/Stanzas#respawn
    # When to start the service
    start on runlevel [2345]
    # When to stop the service
    stop on runlevel [016]
    # Automatically restart process in case of crash
    respawn
    # Specify working directory
    chdir /home/dave/myfiles
    # Specify the process/command (add arguments if needed) to run
    exec bash backup.sh arg1 arg2
    

    পরিবর্তনগুলি প্রয়োগ করতে, আপনাকে এর কনফিগারেশনটি পুনরায় লোড করতে আপস্টার্টকে বলতে হবে।

    # initctl reload-configuration
    

    তারপরে নিম্নলিখিত কমান্ডটি টাইপ করে আপনার কাজ শুরু করুন start

    $ sudo start yourjobname
    

    আপনার কাজের নাম আপনার কাজের নাম স্ক্রিপ্টের সাথে আগে যুক্ত হওয়া কাজের নাম Where

    আপস্টার্টের জন্য আরও একটি সম্পূর্ণ এবং বিস্তারিত রেফারেন্স গাইড প্রকল্পের ওয়েবসাইটে "কুকবুক" মেনুতে উপলব্ধ।

    সারসংক্ষেপ

    লিনাক্স বুট প্রক্রিয়া সম্পর্কে একটি জ্ঞান আপনার সমস্যার সমাধানের পাশাপাশি কম্পিউটারের পারফরম্যান্সটি খাপ খাইয়ে নিতে এবং আপনার প্রয়োজন অনুযায়ী পরিষেবাদি চালানোর ক্ষেত্রে সহায়তা করার জন্য প্রয়োজনীয়।

    আপনি নিখুঁতভাবে ব্যবহারযোগ্য ইউজার ইন্টারফেস না পাওয়া পর্যন্ত আপনি যখন পাওয়ার মেশিনটি চালু করতে চাপেন তখন মুহুর্তের মধ্যে কী ঘটে যায় তা এই নিবন্ধে আমরা বিশ্লেষণ করেছি। আমি আশা করি আপনি এটি একসাথে রাখার সময় যতটা করেছি তা পড়তে শিখেছি। আপনার মতামত বা প্রশ্ন নীচে ছেড়ে নির্দ্বিধায়। আমরা সবসময় আমাদের পাঠকদের কাছ থেকে শোনার জন্য উন্মুখ!