লিনাক্সে একটি প্রক্রিয়া কীভাবে হত্যা করবেন

How Kill Process Linux



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

একটি প্রক্রিয়া হত্যা

একটি প্রক্রিয়া হত্যা করার জন্য, আমরা মুষ্টিমেয় সরঞ্জাম ব্যবহার করব: হত্যা , pkill , এবং সব হত্যা করো । তাদের সবাই মূলত একই ভাবে কাজ করে।







এই সরঞ্জামগুলি নিজেই প্রক্রিয়াটি শেষ করে না। পরিবর্তে, তারা টার্গেট প্রক্রিয়া বা প্রক্রিয়া গোষ্ঠীতে একটি মনোনীত সংকেত পাঠায়। আপনি যদি কোন নির্দিষ্ট সিগন্যাল উল্লেখ না করেন, তাহলে SIGTERM ডিফল্ট সিগন্যাল হিসেবে পাঠানো হয়। যাইহোক, বেশ কয়েকটি সমর্থিত সংকেত রয়েছে, উদাহরণস্বরূপ, SIGKILL, SIGHUP ইত্যাদি।



এখানে জন্য মৌলিক কমান্ড কাঠামো হত্যা , pkill এবং সব হত্যা করো



$হত্যা <signal_or_options> <পিআইডি(গুলি)>
$ pkill<signal_or_options> <প্রক্রিয়ার নাম>
$সব হত্যা করো <বিকল্প> <প্রক্রিয়ার নাম>

যখনই সম্ভব, এটি ব্যবহার করার পরামর্শ দেওয়া হয় হত্যা





হত্যা , pkill এবং সব হত্যা করো অবস্থান

একটি প্রক্রিয়া শেষ করার জন্য কিল হল ডিফল্ট কমান্ড।



$হত্যা -সাহায্য

এটি /usr /bin ডিরেক্টরি থেকে চালানো হয়।

$যা হত্যা

সুবিধা হল, এটি pkill অ্যাক্সেসের অনুমতি দেয়, আরেকটি কমান্ড যা তাদের নামের উপর ভিত্তি করে সমাপ্তির প্রক্রিয়া অনুমোদন করে।

$pkill-সাহায্য

$যাpkill

কিছু অ্যাপ একই এক্সিকিউটেবলের একাধিক প্রসেস চালায়। আপনি যদি একই নামের সাথে বেশ কয়েকটি প্রক্রিয়া বন্ধ করতে চান, তাহলে কিলাল টুল ব্যবহার করুন।

$সব হত্যা করো -সাহায্য

$যা সব হত্যা করো

সমস্ত চলমান প্রক্রিয়াগুলির তালিকা

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

$পুনশ্চ -প্রতি

বেশিরভাগ কাজের জন্য, আমাদের লক্ষ্য প্রক্রিয়ার PID জানতে হবে। যাইহোক, নির্দিষ্ট পরিস্থিতিতে, প্রক্রিয়ার নাম ব্যবহার করা আরও উপযুক্ত।

আপনি যদি টার্গেট প্রক্রিয়ার সঠিক নাম জানেন, তাহলে আপনি সরাসরি PID ব্যবহার করে পেতে পারেন pidof

$pidof <প্রক্রিয়ার নাম>

টার্গেট প্রক্রিয়া সম্পর্কে তথ্য সংগ্রহ করার আরেকটি আকর্ষণীয় হাতিয়ার হল pgrep। এটি বিশেষভাবে এই উদ্দেশ্যে ডিজাইন করা হয়েছে।

$pgrep<বিকল্প> <প্রক্রিয়ার নাম>

সংকেত হত্যা

এখন, কিল টুলস যে সিগন্যালগুলিকে সমর্থন করে সেগুলো দেখে নেওয়া যাক। এটি একটি বিশাল তালিকা। অবশ্যই, তাদের সবগুলি প্রতিটি একক পরিস্থিতির জন্য প্রয়োজনীয় নয়। প্রকৃতপক্ষে, বেশিরভাগ পরিস্থিতিতে শুধুমাত্র হাতে গোনা সংকেত প্রয়োজন।

প্রথমে, কিল সাপোর্টগুলির তালিকাটি একবার দেখে নেওয়া যাক।

$হত্যা -দ্য

আপনি কোন সংকেত পাঠাতে চান তা নির্ধারণ করার 2 টি উপায় রয়েছে। আপনি সম্পূর্ণ সংকেত নাম বা তার সমতুল্য মান ব্যবহার করতে পারেন।

$হত্যা-<সংকেত> <পিআইডি>

অথবা,

$হত্যা-<সংকেত_মূল্য> <পিআইডি>

সর্বাধিক জনপ্রিয় সংকেত হল SIGHUP (1), SIGKILL (9) এবং SIGTERM (15)। সাধারণত, SIGTERM একটি টার্গেট প্রক্রিয়া শেষ করার জন্য ডিফল্ট এবং নিরাপদ উপায়।

পিকিলের ক্ষেত্রে, সমর্থিত সিগন্যাল কিল এর মতই। যাইহোক, কিল্লালের ক্ষেত্রে, সমর্থিত সংকেতের সংখ্যা এবং সংকেতের নাম ভিন্ন।

$সব হত্যা করো -দ্য

একটি প্রক্রিয়া হত্যা

একটি প্রক্রিয়াকে হত্যা করার জন্য, আমাদের সেই লক্ষ্য প্রক্রিয়ার PID প্রয়োজন। ধরে নিচ্ছি যে আপনার PID আছে, এটি হত্যা করার জন্য নিম্নলিখিত কমান্ডটি চালান।

$হত্যা <বিকল্প> <পিআইডি>

এখানে, কিল PID (গুলি) -এ ডিফল্ট সিগন্যাল SIGTERM পাঠাবে। আপনি যদি একাধিক প্রক্রিয়া বন্ধ করতে চান, তাহলে স্থান দ্বারা পৃথক করা সমস্ত PID গুলি উল্লেখ করুন।

$হত্যা <বিকল্প> <PID_1> <PID_2>

কোন টার্গেটে আপনি কোন সংকেত পাঠাতে চান তা নির্দিষ্ট করা যাক।

একটি প্রক্রিয়া শুধুমাত্র তার নাম ব্যবহার করে শেষ করতে চান? Pkill ব্যবহার করুন।

$pkill<বিকল্প> <প্রক্রিয়ার নাম>

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

$সব হত্যা করো <বিকল্প> <প্রক্রিয়ার নাম>

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

$সব হত্যা করোফায়ারফক্স

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

$সব হত্যা করো -উ <ব্যবহারকারী>

অনুমতির দ্বন্দ্ব

লিনাক্স ব্যবহারকারীর শ্রেণিবিন্যাসের অন্তর্নিহিত বৈশিষ্ট্যগুলিও প্রযোজ্য যখন আপনি একটি অ্যাপ্লিকেশন বন্ধ করতে চলেছেন। একজন ব্যবহারকারী উচ্চতর বিশেষাধিকার নিয়ে চলমান প্রক্রিয়াগুলি বন্ধ করতে পারে না, কেবল সমান/নিম্ন সুযোগ -সুবিধার একটি প্রক্রিয়া। তদুপরি, একজন ব্যবহারকারী বিভিন্ন ব্যবহারকারীর অধীনে চলমান প্রক্রিয়াগুলিকে কাজে লাগাতে পারে না।

উদাহরণস্বরূপ, হ্যাঁ কমান্ডটি বিবেচনা করা যাক। যদি এটিকে বর্তমান ব্যবহারকারী বলা হয়, এটি সহজেই কিল ব্যবহার করে বন্ধ করা যেতে পারে।

$হত্যা হ্যাঁ

এখন, যদি হ্যাঁ অধীনে চলছিল মূল ? বর্তমান ব্যবহারকারীকে কিল বলা কাজ করবে না।

একইভাবে, যদি একটি প্রক্রিয়া অন্য ব্যবহারকারীর অধীনে চলতে থাকে, তাহলে আপনি এটি একটি ভিন্ন ব্যবহারকারীর অ্যাকাউন্ট থেকে শেষ করতে পারবেন না।

সর্বশেষ ভাবনা

এই প্রবন্ধে, শুধুমাত্র এই বুনিয়াদি এবং সাধারণ আদেশগুলি ব্যবহার করা হয়েছে। এই কিল টুলস এর চেয়ে বেশি সক্ষম। যেকোনো টুলের দক্ষতা সম্পর্কে গভীর জ্ঞান অর্জনের জন্য, আমি ম্যান পৃষ্ঠাটি পরীক্ষা করার পরামর্শ দিই।

$মানুষ হত্যা

$মানুষpkill

উপভোগ করুন!