ব্যাকগ্রাউন্ডে চলা প্রচুর পরিসেবা দিয়ে আরও বেশি বেশি অপারেটিং সিস্টেম ফুলে যায়। যদিও তারা বেশি CPU সময় ব্যবহার নাও করতে পারে, তারা বুট সময় এবং RAM ব্যবহার বাড়ায়। সৌভাগ্যবশত, ওপেন সোর্স অপারেটিং সিস্টেমগুলি আপনাকে আপনার উপযুক্ত মনে করার ক্ষমতা এবং স্বাধীনতা দেয়। এর মানে আপনি আপনার প্রয়োজন নেই এমন কিছু নিষ্ক্রিয় বা সরাতে পারেন। এখানে আমরা আপনাকে দেখাচ্ছি কিভাবে আপনার লিনাক্স বুট টাইম উন্নত করতে অপ্রয়োজনীয় পরিষেবাগুলি অক্ষম করতে হয়৷
দ্রষ্টব্য :আমরা আপনাকে দেখাই যে কীভাবে পরিষেবাগুলি অপসারণ করার পরিবর্তে অক্ষম করা যায়। পরিষেবাগুলি অক্ষম করলে স্থায়ীভাবে জিনিসগুলি ভেঙে যাওয়ার ঝুঁকি কম থাকে৷ এবং আপনি যদি দেখেন যে উপকারী কিছু কাজ করা বন্ধ হয়ে গেছে তবে আপনি শুধুমাত্র একটি পরিষেবা পুনরায় সক্রিয় করার মাধ্যমে এটি আগের মতোই ফিরে যেতে পারেন৷
বিষয়বস্তুর সারণী
প্রতিটি পরিষেবা লোড হতে যে সময় লাগে তা বিশ্লেষণ করুন
বেশিরভাগ লিনাক্স-ভিত্তিক অপারেটিং সিস্টেম ডিফল্টরূপে Systemd ব্যবহার করে। ইউটিলিটিগুলির স্যুটের মধ্যে এটি অন্তর্ভুক্ত, একটি প্রোগ্রাম রয়েছে যা আপনাকে বিশ্লেষণ করতে দেয় যে আপনার সিস্টেম কত দ্রুত বুট হয়। বিশেষত, এটি আপনাকে বুট করার জন্য প্রয়োজনীয় মোট সময় এবং প্রতিটি পরিষেবা লোড হতে কতটা সময় লাগে তা দেখায়। মনে রাখবেন কিছু পরিষেবা সমান্তরালভাবে লোড হয়। সুতরাং, যদি একটি লোড করতে দুই সেকেন্ড এবং অন্য তিন সেকেন্ডের প্রয়োজন হয়, তবে এর অর্থ এই নয় যে মোট পাঁচ সেকেন্ড প্রয়োজন। এটা তার থেকে অনেক কম হতে পারে।
একটি টার্মিনাল এমুলেটর খুলুন এবং এই কমান্ডটি লিখুন:
systemd-analyze
এটি দেখায় যে লিনাক্স কার্নেল এবং মূল সিস্টেম পরিষেবাগুলি শুরু হতে কতক্ষণ লাগে৷ এটি ডেস্কটপ অ্যানিমেশন বা ব্যবহারকারী অ্যাপ্লিকেশনের লোডিং শেষ করার জন্য প্রয়োজনীয় সময়ের জন্য হিসাব করে না৷
যাইহোক, আপনি এই কমান্ডের সাথে শুরু করার জন্য গ্রাফিক্যাল ইন্টারফেসের প্রয়োজনীয় সময় দেখতে পারেন:
systemd-analyze critical-chain graphical.target
এটি গ্রাফিকাল লক্ষ্যে পৌঁছানো পর্যন্ত পরিষেবার শৃঙ্খল দেখায়। উপযোগী থাকাকালীন, এটি ডেস্কটপ সম্পূর্ণ নিষ্ক্রিয় থাকা মুহূর্তটির পরিবর্তে একটি প্রযুক্তিগত মাইলফলক উপস্থাপন করে, কারণ কিছু পটভূমি উপাদান পরে লোড হতে পারে।
দ্রষ্টব্য :ডেস্কটপ পরিবেশের মধ্যে স্বয়ংক্রিয়ভাবে শুরু হওয়া প্রোগ্রামগুলি সাধারণত ডেস্কটপ-নির্দিষ্ট অটোস্টার্ট সেটিংস বা সিস্টেমড ব্যবহারকারী পরিষেবার মাধ্যমে পরিচালিত হয়৷
অবশেষে, এই টিউটোরিয়ালের উদ্দেশ্যে সম্ভবত সবচেয়ে দরকারী কমান্ড হল:
systemd-analyze blame
আপনি আপনার তীর কী দিয়ে তালিকাটি নেভিগেট করতে পারেন বা পেজ আপ এবং পেজ ডাউন। প্রস্থান করতে q টিপুন।
অপ্রয়োজনীয় পরিষেবাগুলি নিষ্ক্রিয় করতে Systemctl ব্যবহার করুন
আপনি আগের ছবিতে দেখতে পাচ্ছেন, কিছু পরিষেবা যেমন snapd লোড হতে কয়েক সেকেন্ড সময় লাগে। একটি SSD তে, এটি নগণ্য। কিন্তু একটি ঐতিহ্যবাহী হার্ডডিস্কে, এই ধরনের সময়গুলি একাধিক সেকেন্ডের ক্রমানুসারে হবে এবং শেষ পর্যন্ত তারা অনেক বেশি যোগ করবে৷
বলুন আপনার স্ন্যাপডি পরিষেবার প্রয়োজন নেই, যা কন্টেইনারাইজড অ্যাপ্লিকেশন স্ন্যাপগুলিতে অ্যাক্সেস সরবরাহ করে। আপনি এই কমান্ড দিয়ে এটি নিষ্ক্রিয় করতে পারেন:
sudo systemctl disable snapd.service রিবুট করার পরে, আপনি এখনও কিছু শর্তে স্ন্যাপডি শুরু দেখতে পারেন। এটি ঘটে কারণ snapd সকেট অ্যাক্টিভেশন ব্যবহার করে, এটিকে চাহিদা অনুযায়ী শুরু করার অনুমতি দেয় এমনকি যখন পরিষেবাটি নিজেই অক্ষম থাকে।
আপনি এর সাথে সম্পর্কিত ইউনিট সনাক্ত করতে পারেন:
systemd-analyze blame | grep snap
এটি আপনাকে কোন স্ন্যাপ-সম্পর্কিত ইউনিটগুলি স্টার্টআপ কার্যকলাপে অবদান রাখছে তা সনাক্ত করতে সহায়তা করে৷
সকেট-অ্যাক্টিভেটেড পরিষেবা নিয়ে কাজ করা
Snapd সহ কিছু পরিষেবা সকেট অ্যাক্টিভেশন ব্যবহার করে। এর অর্থ হল পরিষেবাটি এখনও চালু হতে পারে যখন কিছু এটির সাথে যোগাযোগ করার চেষ্টা করে, এমনকি যদি এটি অক্ষম করা হয়।
যদি রিবুট করার পরেও স্ন্যাপড প্রদর্শিত হতে থাকে, তাহলে সম্পর্কিত ইউনিট যেমন snapd.socket অথবা snapd.seeded.service দায়ী হতে পারে। এই ধরনের ক্ষেত্রে, পরিষেবা এবং এর সকেট মাস্ক করা আরও কার্যকর:
sudo systemctl mask snapd.service
sudo systemctl mask snapd.socket মাস্কিং পরিষেবাটিকে সম্পূর্ণরূপে অবরুদ্ধ করে তাই নির্ভরতা বা সকেট এটি শুরু করতে পারে না। যাইহোক, এই পদ্ধতিটি সাবধানে ব্যবহার করুন, বিশেষ করে ডিস্ট্রিবিউশনের ক্ষেত্রে যা সিস্টেম আপডেট বা অ্যাপ্লিকেশনের জন্য স্ন্যাপ প্যাকেজের উপর নির্ভর করে।
এছাড়াও, এই প্রসঙ্গে "মাস্কিং" এর সাথে "অক্ষম" কে বিভ্রান্ত না করার বিষয়ে সতর্ক থাকুন। একটি পরিষেবা নিষ্ক্রিয় করা সিস্টেমডকে বলে যে এটি স্বয়ংক্রিয়ভাবে শুরু হবে না। মাস্কিং পরিষেবাটিকে একেবারে শুরু করা থেকে বাধা দিয়ে আরও এগিয়ে যায়। বেশিরভাগ পরিস্থিতিতে, অক্ষম করা যথেষ্ট। মাস্কিং এমন পরিষেবাগুলির জন্য উপযোগী যা একগুঁয়েভাবে পুনরায় চালু হয় বা আপনার সিস্টেমে স্পষ্টভাবে অপ্রয়োজনীয়৷
আরও, আপনার সেটআপের উপর নির্ভর করে, আপনি অতিরিক্ত পরিষেবাগুলি খুঁজে পেতে পারেন যা আপনি নিরাপদে অক্ষম করতে পারেন, যেমন:
avahi-daemon.service
ModemManager.service
thermald.service যাইহোক, নিশ্চিত করুন যে আপনি সর্বদা একটি পরিষেবা অক্ষম করার আগে গবেষণা করুন। ডেস্কটপ সিস্টেমে যা অপ্রয়োজনীয় তা ল্যাপটপ বা সার্ভারে অপরিহার্য হতে পারে।
চূড়ান্ত চিন্তা
অপ্রয়োজনীয় পরিষেবাগুলি নিষ্ক্রিয় করা বুট সময় কমাতে পারে এবং সিস্টেম সংস্থানগুলি খালি করতে পারে, বিশেষত ঐতিহ্যগত হার্ড ড্রাইভ ব্যবহার করে সিস্টেমগুলিতে। এমনকি আধুনিক SSD-ভিত্তিক সিস্টেমেও, অব্যবহৃত পরিষেবাগুলি ছাঁটাই করা আপনার সিস্টেমকে পরিষ্কার এবং দক্ষ রাখতে সাহায্য করে৷
উপরন্তু, গ্রাফিকাল টুলস, যেমন Stacer, পরিষেবাগুলি পরিচালনার জন্য বিদ্যমান, কিন্তু তারা প্রায়ই সীমিত নিয়ন্ত্রণ বা পুরানো কার্যকারিতা প্রদান করে। ডিস্ট্রিবিউশন জুড়ে সামঞ্জস্যপূর্ণ এবং সুনির্দিষ্ট ব্যবস্থাপনার জন্য, systemctl কমান্ড-লাইন টুলটি সবচেয়ে নির্ভরযোগ্য বিকল্প হিসেবে রয়ে গেছে।