আমার সিস্টেমে জম্বি প্রক্রিয়াটি মেরে ফেলা উচিত?


20

যেহেতু আমি লিনাক্স / ইউনিক্স সিস্টেমে নবাগত এবং কেবল জম্বি প্রক্রিয়াগুলি সম্পর্কে পড়েছি , আমার একটি প্রশ্ন রয়েছে। এই মুহূর্তে আমার মধ্যে 10 জন রয়েছে। আমার কি তাদের হত্যা করা দরকার এবং যদি হ্যাঁ, তবে কেন? এগুলি কি আমার সিস্টেমে বোঝা?

592 processes: 581 sleeping, 1 running, 10 zombie, 0 stopped

25
তাদের হত্যা করার দরকার নেই। তারা ইতিমধ্যে মারা গেছে।
মার্কো

2
সুতরাং তারা আমার সিস্টেমে আর লোড করে না। এবং তারা এই অবধি এখনও রিবুট সিস্টেমের মতোই থাকবে বা আমি তাদের হত্যা করব, তাই না?
জেসন প্যাডেল

7
@ মার্কো: ইতিমধ্যে যা মারা গেছে তা আপনি মারতে পারবেন না। তবে এর বাবা-মা মারা যাবে, হরহরহর!
wullxz

7
সমস্যাটি হ'ল তাদের পিতামাতা তাদের ফসল কাটেনি (যখন তারা মারা গেল)।
ypercubeᵀᴹ

3
10 জম্বি ??? আপনি আক্রান্ত! জেসন রান করুন।
লুক এম

উত্তর:


29

আপনি কোনও জম্বি মারতে পারবেন না, এটি ইতিমধ্যে মারা গেছে।

এই প্রক্রিয়াটির সংস্থানগুলি নিখরচায় এবং অন্যান্য প্রক্রিয়াগুলির জন্য উপলব্ধ। যা অবশিষ্ট রয়েছে তা প্রক্রিয়া সারণিতে একটি প্রবেশিকা। পারফরম্যান্সে এটির প্রভাব নেই, চিন্তা করবেন না।


হ্যাঁ, এটি বোধগম্য। আমি পিতামাতার প্রক্রিয়াটি মেরে ফেলতে পারি। তথ্যটির জন্য আপনাকে ধন্যবাদ। আমি কেবল জানতে চেয়েছিলাম যে তারা কোনও সিস্টেম লোড করে কিনা।
জেসন প্যাডেল

আমি বিশ্বাস করি যদিও জোম্বিদের একটি সীমা রয়েছে। আমি মনে করি এটি 1024, সুতরাং এটি পারফরম্যান্সের ক্ষতি করবে না তবে আমি মনে করি যে আপনার সংখ্যাটি থাকতে পারে তার সিলিং রয়েছে।
পেশাদার

@ প্রফেশনালঅ্যামেচার আপনি জম্বি সীমাতে (1024 বা যাই হোক না কেন) আঘাত করলে কী হবে?
ফ্রিজেন মটরশুটির রডি

@ রডোফিথফ্রোজেনপিস - সত্যি কথা বলতে আমি নিশ্চিত নই, আমি এই পর্যায়ে পৌঁছানোর আগে সবসময় তাদের পরিষ্কার করে দিয়েছি। আমি ধারণা করি সিস্টেমটি অন্য একটি জম্বি তৈরি করার চেষ্টা করবে এবং সম্ভবত একটি স্মৃতি লঙ্ঘন বা অন্য কোনও হার্ড ত্রুটি, ওভারফ্লো বা কোনও ধরণের বিভাজন ত্রুটি রয়েছে।
ProfessionalAmateur

2
@ প্রফেশনাল অ্যামেচার: লিনাক্সে জম্বি সীমা নেই । জম্বো পিআইডি হ'ল /proc/sys/kernel/pid_max, অন্য প্রতিটি পিআইডি-র মতো।
আরএসউ

16

PS এ প্রদর্শিত এই জম্বি প্রক্রিয়াগুলি কী কী? আমি তাদের হত্যা করি কিন্তু তারা যায় না!

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

যখন একটি প্রক্রিয়া মারা যায়, তার শিশু প্রক্রিয়াগুলি সমস্ত প্রসেস নম্বর 1-এর বাচ্চা হয়, যা আরআর প্রক্রিয়া। ইনস সবসময় বাচ্চাদের মৃত্যুর জন্য অপেক্ষা করে থাকে, যাতে তারা জম্বি হিসাবে না থাকে।

আপনার যদি জম্বি প্রক্রিয়া থাকে তবে এর অর্থ এই যে জম্বিগুলি তাদের পিতামাতার দ্বারা অপেক্ষা করা হয়নি (পিএসআইএল দ্বারা প্রদর্শিত পিপিআইডি দেখুন)। আপনার তিনটি পছন্দ রয়েছে: পিতামাতার প্রক্রিয়াটি ঠিক করুন (এটি অপেক্ষা করুন); পিতামাতাকে হত্যা; বা এটি সঙ্গে বাস করুন। মনে রাখবেন যে এর সাথে বসবাস করা এতটা কঠিন নয় কারণ জম্বিগুলি পিএস এর আউটপুটে একাধিক অতিরিক্ত লাইন গ্রহণ করে।

সূত্র: http://www.linuxsa.org.au/tips/zombies.html

এবং যদি আপনি একটি হত্যার স্প্রিতে থাকেন তবে এই সুপারসুর থ্রেডটি আপনার পক্ষে আকর্ষণীয় হতে পারে: আপনি একটি জম্বি প্রক্রিয়াটির পিতামাতাকে কীভাবে খুঁজে পাবেন?


নোট করুন যে পিতামাতাকে স্থির করা অতিরিক্ত ওভারকিল হতে পারে - সম্ভবত এটি এখনও তার বাচ্চাদের জন্য অপেক্ষা করার পর্যায়ে পৌঁছে নি। সম্ভবত এটি পরে এটি করবে (বা হ্যাঁ, সম্ভবত এটি হবে না)।
রোমেন

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

7

আপনার তাদের হত্যা করার দরকার নেই।

কিছু প্রাথমিক বোঝাপড়া তৈরি করতে:

প্রতিটি প্রক্রিয়া একটি পিতামাতার প্রক্রিয়ার সন্তানের (আরম্ভ প্রক্রিয়া ব্যতীত, তবে আমাদের এটি নিয়ে উদ্বিগ্ন হওয়ার দরকার নেই)।

যখন কোনও শিশু প্রক্রিয়া সম্পাদন শেষ করে, তখন এটিতে পিতামহী প্রক্রিয়াটি অ্যাক্সেস করতে চায় এমন ডেটা থাকতে পারে, সাধারণত একটি প্রস্থান কোড যা শিশু প্রক্রিয়াটির ফলাফল বর্ণনা করে (এটি সফল হয়েছে? এটি ত্রুটি হয়েছিল? ত্রুটি কোডটি কী ছিল?)

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


3

এই প্রক্রিয়াটি হত্যার দরকার নেই।

আপনি যেভাবেই হোক না কেন এটি হত্যা করতে চান (যে কারণেই হোক না কেন) আপনি নিজের মাথায় গুলি করেছেন তা নিশ্চিত করুন, এখানে একটি দরকারী আদেশ রয়েছে:

kill -HUP `ps -A -ostat,ppid | grep -e '^[Zz]' | awk '{print $2}'`

Https://www.erianna.com/kill-a-linux-zombie-process থেকে


1
জন্য +1 shoot at the head
বেনজিউইবি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.