কিভাবে লিনাক্সে "Systemctl Command Not Found" ত্রুটি ঠিক করবেন

'systemctl' কমান্ড এবং এর কিছু দক্ষ বিকল্প প্রবর্তনের মাধ্যমে সমস্যাটি সমাধান করার জন্য একটি দ্রুত সমাধান

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

আপনার কাছে যে সমস্যাটি ঘটছে তা একটি খুব সাধারণ সমস্যা এবং সহজেই ঠিক করা যেতে পারে। সুতরাং, চিন্তা করবেন না এবং দ্রুত এবং সহজ সমাধান খুঁজে পেতে সম্পূর্ণ টিউটোরিয়ালটি দেখুন।

আমরা প্রথমে সমস্যাটি বোঝার চেষ্টা করব এবং তারপরে এটি ঠিক করব।

মধ্যে অর্ন্তদৃষ্টি systemctl এবং সিস্টেমড

যেহেতু ত্রুটিটি রেফারেন্স সহ systemctl কমান্ড, এই ত্রুটির সমাধানটি আরও ভালভাবে বুঝতে এই কমান্ডের মূল বিষয়গুলি জানা ভাল হবে।

systemctl লিনাক্স একটি কমান্ড-লাইন ইউটিলিটি অফার করে, যা 'নামক অন্য একটি কমান্ড-লাইন ইউটিলিটি নিরীক্ষণ ও নিয়ন্ত্রণ করতে ব্যবহৃত হয়।সিস্টেমড' এটি 'সহ সিস্টেম ম্যানেজারকে পরিদর্শন ও নিয়ন্ত্রণ করেসিস্টেমড'উপযোগিতা।

সাধারণ বাক্য গঠন:

systemctl [বিকল্প] [নাম]

সিস্টেমড এটি একটি ডেমন, লাইব্রেরি এবং ইউটিলিটিগুলির একটি বান্ডিল যা আপনার সিস্টেম বুট আপ হলে চালানো প্রোগ্রামগুলিকে নিয়ন্ত্রণ করে। সিস্টেমড সিস্টেম কার্যকলাপের একটি জার্নাল শুরু করার মতো একটি গুরুত্বপূর্ণ কাজ শুরু করতেও পরিচালনা করে।

এই ইউটিলিটি লিনাক্স-ভিত্তিক অপারেটিং সিস্টেমের অধিকাংশের জন্য কেন্দ্রীয় ব্যবস্থাপনা ইউটিলিটি হিসাবে কাজ করে।

ত্রুটির মূল কারণ

এই ত্রুটির সবচেয়ে সম্ভাব্য কারণ হতে পারে যে আপনি লিনাক্স ডিস্ট্রিবিউশনের একটি পুরানো সংস্করণ ব্যবহার করছেন। অনেক পুরানো সংস্করণ ব্যবহার করে SysV init পরিবর্তে সিস্টেমড ইউটিলিটি

সিস্টেমড পূর্ববর্তী লিনাক্স সংস্করণগুলিতে ইউটিলিটি অনুপস্থিত কারণ এটি লিনাক্স দ্বারা প্রদত্ত ইউটিলিটিগুলির ঝুড়িতে একটি সাম্প্রতিক সংযোজন। systemctl সঙ্গে ফাংশন এবং নিরীক্ষণ সামঞ্জস্যপূর্ণ সিস্টেমড ইউটিলিটি এবং আগের কনফিগারেশনগুলির সাথে কাজ করতে ব্যর্থ হবে SysVএটা বা আপস্টার্ট.

আপনি যদি ব্যবহার না করেন সিস্টেমড, তারপর এই ত্রুটি প্রত্যাশিত. এটা যেমন সহজ এবং সোজা.

আপনি নিম্নলিখিত উপায়ে এই ত্রুটি সম্মুখীন হতে পারে.

gaurav@ubuntu:~$ sudo systemctl start ufw [sudo] পাসওয়ার্ড গৌরবের জন্য: sudo: systemctl: কমান্ড পাওয়া যায়নি gaurav@ubuntu:~$ 

এখানে, আমরা উবুন্টু ফায়ার ওয়াল শুরু করার চেষ্টা করেছি (ufw) ব্যবহার করে systemctl কমান্ড এবং "systemctl: কমান্ড পাওয়া যায়নি" ত্রুটির সম্মুখীন হয়েছে।

সুতরাং, এখন কি করবেন যদি আপনি আপনার বর্তমান লিনাক্স ডিস্ট্রিবিউশন পরিবর্তন করতে না চান যা অন্য কিছু কেন্দ্রীয় ব্যবস্থাপনা ইউটিলিটি ব্যবহার করছে সিস্টেমড? ঠিক আছে, আমাদের কাছে আপনার জন্য একটি দ্রুত সমাধান রয়েছে যা আপনাকে আপনার বর্তমান লিনাক্স বিতরণকে রাখতে এবং সাথে সাথে আপনার ত্রুটিটি কিছুক্ষণের মধ্যেই ঠিক করতে দেয়।

আমাদের এখন সংশোধন পর্যবেক্ষণ করা যাক.

"systemctl: কমান্ড পাওয়া যায়নি" ত্রুটি সংশোধন করা হচ্ছে

পরিশেষে, আসুন এখন সমস্যাটির কারণ ও মৌলিক তথ্য বিশ্লেষণ করার পর প্রশ্নে সমস্যাটির সমাধান দেখি।

ফিক্স 1: প্রতিস্থাপন systemctl সঙ্গে সেবা আদেশ

প্রশ্নে ত্রুটির জন্য একটি সহজ সমাধান হল ব্যবহার করা সেবা কারণ ত্রুটির পরিবর্তে কমান্ড systemctl আদেশ

সেবা কমান্ড চালাতে সাহায্য করে সিস্টেমভি ইনিট স্ক্রিপ্ট যা পুরানো লিনাক্স বিতরণ দ্বারা ব্যবহৃত হয়। আপনি যদি ইন্সটল করতে না চান সিস্টেমড আপনার সিস্টেমে ইউটিলিটি, এই ফিক্সটি অবশ্যই আপনার জন্য কাজ করবে।

আপনি ব্যবহার করে আপনার লিনাক্স ডিস্ট্রিবিউশনে যেকোনো পরিষেবা এবং ডেমন শুরু, পুনরায় চালু বা বন্ধ করতে পারেন সেবা আদেশ

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

আমাদের দেখতে দিন সেবা একটি দৃষ্টান্ত সহ আদেশ.

সাধারণ সিনট্যাক্স:

sudo পরিষেবা [পরিষেবা_নাম] [কর্ম]

উপরের সিনট্যাক্সে, the [কর্ম] স্থান মত কর্ম অন্তর্ভুক্ত হতে পারে শুরু, থামা, আবার শুরু বা অবস্থা.

আমরা শুরু করতে একই কমান্ড চালাব ufw ব্যবহার করে পরিষেবা সেবা আদেশ

sudo পরিষেবা ufw শুরু

আউটপুট:

gaurav@ubuntu:~$ sudo service ufw start gaurav@ubuntu:~$ sudo পরিষেবা ufw স্থিতি ● ufw.service - জটিল ফায়ারওয়াল লোড করা হয়েছে: লোড করা হয়েছে (/lib/systemd/system/ufw.service; সক্রিয়; বিক্রেতা প্রিসেট: সক্রিয়: সোম 2020-09-28 11:22:34 IST থেকে সক্রিয় (প্রস্থান করা হয়েছে) =0/SU প্রধান PID: 333 (code=exited, status=0/SUCCESS) Sep 28 11:22:34 ubuntu systemd[1]: শুরু হয়েছে জটিল ফায়ারওয়াল। সতর্কতা: ইউনিট শুরু হওয়ার পর থেকে জার্নাল ঘোরানো হয়েছে। লগ আউটপুট হল অসম্পূর্ণ

এখানে সেবা কমান্ডের পরিবর্তে ব্যবহার করা হয় systemctl কমান্ড এবং এটা একেবারে জরিমানা কাজ.

এর আরও একটি উদাহরণ দেখা যাক সেবা এটি একটি সঠিক বোঝার পেতে আদেশ.

sudo পরিষেবা apache2 শুরু

আউটপুট:

gaurav@ubuntu:~$ sudo service apache2 status ● apache2.service - Apache HTTP সার্ভার লোড হয়েছে: লোড হয়েছে (/lib/systemd/system/apache2.service; সক্ষম; বিক্রেতা প্রিসেট: ড্রপ-ইন: /lib/systemd/system/ apache2.service.d └─apache2-systemd.conf সক্রিয়: সক্রিয় (চলছে) সোম থেকে 2020-09-28 11:22:47 IST; 1 ঘন্টা 16 মিনিট আগে প্রক্রিয়া: 1172 ExecStart=/usr/sbin/apachectl start (code= প্রস্থান করা হয়েছে, অবস্থা=0/SUCCE প্রধান পিআইডি: 1248 (apache2) কাজগুলি: 55 (সীমা: 4456) CGroup: /system.slice/apache2.service ├─1248 /usr/sbin/apache2 -k শুরু ├─/usr/usr sbin/apache2 -k শুরু └─1250 /usr/sbin/apache2 -k শুরু 28 সেপ্টেম্বর 11:22:43 ubuntu systemd[1]: Apache HTTP সার্ভার শুরু হচ্ছে... Sep 28 11:22:47 ubuntu apachectl[1172 ]: AH00112: সতর্কতা: DocumentRoot [/var/www Sep 28 11:22:47 ubuntu apachectl[1172]: AH00558: apache2: নির্ভরযোগ্যভাবে det করা যায়নি সেপ্টেম্বর 28 11:22:47: ubuntu সিস্টেমে স্টার করা হয়েছে। সার্ভার। gaurav@ubuntu:~$ 

আমরা ব্যবহার করেছি সেবা apache2 ইউটিলিটি শুরু করার জন্য কমান্ড। ব্যবহার করে অবস্থা সঙ্গে বিকল্প সেবা কমান্ড পরিষেবার বর্তমান অবস্থা প্রদর্শন করবে। এটি চলমান বা মৃত (নিষ্ক্রিয়) কিনা তা আমরা বিস্তারিত জানতে পারব।

আমাদের এখন ব্যবহার করা যাক থামা ব্যবহার করে apache2 পরিষেবা বন্ধ করার জন্য অ্যাকশন সেবা আদেশ

gaurav@ubuntu:~$ sudo service apache2 stop gaurav@ubuntu:~$ sudo service apache2 স্ট্যাটাস লাইন 1--1...skipping... ● apache2.service - Apache HTTP সার্ভার লোড হয়েছে: লোড হয়েছে (/lib/systemd/ system/apache2.service; সক্ষম; বিক্রেতা প্রিসেট: সক্ষম) ড্রপ-ইন: /lib/systemd/system/apache2.service.d └─apache2-systemd.conf সক্রিয়: নিষ্ক্রিয় (মৃত) সোম 2020-09-28 12 @42:06 IST; 1s আগে প্রক্রিয়া: 4928 ExecStop=/usr/sbin/apachectl stop (code=exited, status=0/SUCCESS) প্রক্রিয়া: 1172 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) প্রধান পিআইডি : 1248 (code=exited, status=0/SUCCESS) Sep 28 11:22:43 ubuntu systemd[1]: Apache HTTP সার্ভার শুরু হচ্ছে... Sep 28 11:22:47 ubuntu apachectl[1172]: AH00112: সতর্কতা : DocumentRoot [/var/www/html] এর অস্তিত্ব নেই Sep 28 11:22:47 ubuntu apachectl[1172]: AH00558: apache2: ::1 ব্যবহার করে সার্ভারের সম্পূর্ণ যোগ্য ডোমেন নাম নির্ভরযোগ্যভাবে নির্ধারণ করা যায়নি। 'S Sep 28 11:22:47 ubuntu systemd[1] সেট করুন: Apache HTTP সার্ভার শুরু হয়েছে।

উপরে বর্ণিত বিশদ উদাহরণ থেকে, আমরা উপসংহারে আসতে পারি যে আমরা এর পরিবর্তে এই কমান্ডটি ব্যবহার করতে পারি systemctl লিনাক্স ডিস্ট্রিবিউশনের অধীনে অন্যান্য ডেমন এবং পরিষেবাগুলি নিয়ন্ত্রণ ও নিরীক্ষণ করার জন্য কমান্ড।

ফিক্স 2: চেক করা হচ্ছে সিস্টেমড প্যাকেজ

কোনো কোনো সময় এমনও হতে পারে যে শুধু সিস্টেমড প্যাকেজ ইনস্টলেশন সমস্যার সমাধান করতে পারে। প্রথমত, আপনাকে ইনস্টলেশনের স্থিতি পরীক্ষা করতে হবে সিস্টেমড আপনার সিস্টেমে প্যাকেজ।

আপনার সিস্টেমে প্যাকেজ চেক করতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন।

sudo dpkg -l | grep systemd

যদি সিস্টেমড ইউটিলিটি ইতিমধ্যেই ইনস্টল করা আছে আপনি নীচের মত একটি আউটপুট পাবেন।

gaurav@ubuntu:~$ sudo dpkg -l | grep systemd [sudo] পাসওয়ার্ড গৌরবের জন্য: ii dbus-user-session 1.12.2-1ubuntu1.2 amd64 সাধারণ ইন্টারপ্রসেস মেসেজিং সিস্টেম (systemd --user integration) ii libnss-systemd:amd64 237-3ubuntu10.42 amd64 dbus-user-session ব্যবহারকারী এবং গোষ্ঠীর নাম রেজোলিউশন ii libpam-systemd:amd64 237-3ubuntu10.42 amd64 সিস্টেম এবং পরিষেবা ম্যানেজার - PAM মডিউল ii libsystemd0:amd64 237-3ubuntu10.42 amd64 systemd ইউটিলিটি লাইব্রেরি ii libsiystemd64 systemd ইউটিলিটি লাইব্রেরি ii libsiystemd6428320882018. ii networkd-dispatcher 1.7-0ubuntu3.3 systemd-networkd সংযোগের স্থিতির জন্য সমস্ত ডিসপ্যাচার পরিষেবা পরিবর্তন করে ri python3-systemd 234-1build1 amd64 Python 3 বাইন্ডিং systemd ii systemd 237-3ubuntu10.42 amd-systemd 237-3ubuntu10.42 systemd-systemd 237-3ubuntu10.42 systemd-systemd 234-1build1. 3ubuntu10.42 amd64 সিস্টেম এবং সার্ভিস ম্যানেজার - SysV লিঙ্ক gaurav@ubuntu:~$ 

আপনি যদি এর মতো একটি আউটপুট পান তবে এর অর্থ হল সিস্টেমড আপনার সিস্টেমে ইনস্টল করা আছে।

এটি ইনস্টল করা না থাকলে, আপনি নিম্নলিখিত উপায়ে এটি ইনস্টল করতে পারেন।

sudo apt- আপডেট পান
sudo apt-get install systemd

যদি এটি ইনস্টল করা থাকে এবং এখনও ত্রুটিটি থেকে যায়, তাহলে নিম্নলিখিত কমান্ডটি ব্যবহার করে এটি পুনরায় ইনস্টল করার চেষ্টা করুন।

sudo apt-get install --reinstall systemd

এটি ইনস্টল করে আপনার সমস্যার সমাধান করবে সিস্টেমড ইউটিলিটি

উপসংহার

আমরা এই টিউটোরিয়ালে "systemctl: command not found" ঠিক করতে শিখেছি। আমরা নিরাপদে উপসংহার করতে পারেন যে ব্যবহার করে সেবা এর পরিবর্তে কমান্ড systemctl একটি ভাল ধারণা এবং সমস্যাটি খুব ভালভাবে সমাধান করে। আমরা সহজেই ব্যবহার করতে পারি সেবা টিউটোরিয়ালে দেখানো দৃষ্টান্তমূলক উদাহরণ বোঝার পরে কমান্ড দিন।