আমি কিভাবে উবুন্টুতে প্রক্রিয়া হত্যা করব?

আমি কীভাবে আমার নিজের নন-রুট অ্যাকাউন্ট দ্বারা চলমান সমস্ত প্রক্রিয়া হত্যা করব?

আমি আমার উইন্ডোজ মেশিন থেকে সৃষ্ট এবং তাই আমি লিনাক্স সার্ভারের মধ্যে টেলনেট যে কিছু কাটনা এসএমবিডি প্রসেস আছে এবং আমি ঐ কাটনা প্রসেস হত্যা করতে চান. আমি সেবা পুনরায় আরম্ভ বা মেশিন পুনরায় বুট করার ক্ষমতা নেই.

আপনার হত্যা করার অনুমতি রয়েছে এমন সমস্ত প্রক্রিয়া হত্যা করতে, কেবল কমান্ডটি চালান

kill -15 -1 অথবা kill -9 -1 পছন্দসই আচরণের উপর নির্ভর করে (ব্যবহার man kill বিস্তারিত জানার জন্য)

একটি নির্দিষ্ট প্রক্রিয়া হত্যা করতে, ফায়ারফক্স বলুন, কেবল চালান

pkill firefox অথবা killall firefox আপনি যে আচরণ চান তার উপর নির্ভর করে: কি &#39 এর মধ্যে পার্থক্য'কিলাল 'এবং' পিকিল & #39;?

আপনি যদি দেখতে চান কোন প্রক্রিয়াগুলি চলছে কমান্ডটি ব্যবহার করুন

ps -ef

আপনি যদি ব্যবহারকারী বব দ্বারা সমস্ত প্রক্রিয়া সন্ধান করতে চান তবে এটি সহায়তা করতে পারে

pgrep -l -u bob

অথবা

ps -ef | grep bob

ব্যবহার করুন sudo kill <pid> অথবা sudo killall <process-name>

আপনি ব্যবহার করতে পারেন

ps -ax | grep application name 

ফায়ারফক্সের জন্য আপনার অনুসন্ধান যদি টার্মিনালে টাইপ করুন ps -ax | grep firefox, এটা সংশ্লিষ্ট আবেদন প্রক্রিয়া আইডি দেখায়. আপনি এই অ্যাপ্লিকেশনটি বন্ধ করতে পারেন kill প্রক্রিয়া আইডি=1317 যদি কমান্ড,

kill -9 1317

আরও কিছু চেষ্টা করা যাক:

sudo apt-get install htop 

দ্য top কমান্ড আপনার সিস্টেমের সম্পদ ব্যবহার দেখতে এবং সবচেয়ে সিস্টেম সম্পদ গ্রহণ করা হয় যে প্রসেস দেখতে প্রথাগত উপায়. শীর্ষ প্রক্রিয়াগুলির একটি তালিকা প্রদর্শন করে, শীর্ষে সর্বাধিক সিপিইউ ব্যবহার করে

htop একটি সহজ-থেকে-বুঝতে বিন্যাস সঙ্গে একই তথ্য প্রদর্শন করে. এটি আপনাকে তীর চিহ্নগুলির সাথে প্রক্রিয়াগুলি নির্বাচন করতে এবং ক্রিয়া সম্পাদন করতে দেয়, যেমন তাদের হত্যা করা বা তাদের অগ্রাধিকার পরিবর্তন করা F কী.

আমি ব্যবহার করব xkill. প্রবেশ করুন xkill একটি টার্মিনালে এবং উইন্ডোতে ক্লিক করুন, বা প্রবেশ করুন xkill এবং প্রক্রিয়া আইডি এবং এটি বন্ধ করা হবে.

সম্পর্কে আরো খুঁজে পাওয়া যায় নি xkill উপর x.org.

ব্যবহারকারীর মালিকানাধীন সমস্ত প্রক্রিয়া হত্যা করার চেষ্টা করা username, চালান:

pkill -U username

আমি আপনার সমস্যাটি 2 ভাগে ভাগ করব:

1) আমার দ্বারা শুরু হওয়া প্রক্রিয়াগুলি আমি কীভাবে খুঁজে পাব? এই চালান:

ps -u `whoami`

দ্য whoami অন্যথায় শুধু ফিরে কোট ছাড়া অ্যাকাউন্টের নাম টাইপ করুন, আপনি ব্যবহার করছেন অ্যাকাউন্টের নাম জানি না ক্ষেত্রে ঠিক হয়.

এটি আপনার অ্যাকাউন্ট দ্বারা মুছে ফেলা যেতে পারে এমন সমস্ত প্রক্রিয়া তালিকাভুক্ত করবে

2) দ্য ps কমান্ড প্রক্রিয়া সংখ্যা, টিটিওয়াই, সময়, এবং সিএমডি তালিকা প্রস্তুত করা হবে. প্রক্রিয়া আইডি প্রথম কলাম. প্রক্রিয়া বধ যে সংখ্যা ব্যবহার করুন. প্রক্রিয়া হত্যা করার সময় সতর্কতা অবলম্বন করা আবশ্যক. আপনি ভুল হত্যা যদি আপনি কিছু বিরতি হতে পারে process.To আপনি ব্যবহার করা হবে একটি প্রক্রিয়া হত্যা kill কমান্ড, যা প্রক্রিয়া একটি সংকেত পাঠায়. সংকেত প্রক্রিয়া কি নির্দেশ করে উচিত কর. উদাহরণস্বরূপ, একটি প্রেরণ -1 প্রক্রিয়া কনফিগারেশন ফাইল পুনরায় লোড করার অনুরোধ জানানো হবে; একটি পাঠানো হচ্ছে -2 যে প্রক্রিয়া নিয়ন্ত্রণ+সি টিপে সমতুল্য; -9 কার্নেল প্রক্রিয়া এটি যোগাযোগ ছাড়া, প্রক্রিয়া পরিত্যাগ হতে হবে.

মনে করা হচ্ছে যে পিএস-ইউ whoami কিছু মত ফিরে

  PID TTY          TIME CMD 4333 pts/1    00:00:00 fish 4335 ?        00:00:00 fishd 4816 ?        00:00:00 intellij 4868 ?        00:50:42 java 4939 ?        00:00:19 fsnotifier64 7667 ?        02:49:08 firefox 7698 ?        00:00:00 unity-webapps-s

এবং আপনি হত্যা করতে চেয়েছিলেন firefox তার প্রক্রিয়া আইডি দ্বারা প্রক্রিয়া, তারপর আপনি করতে হবে:

kill -1 7667

তারপর আপনি একই পুনরায় চালানো চাই ps কমান্ড এবং প্রক্রিয়া এখনও চলমান ছিল কিনা পরীক্ষা. যদি এটি এখনও চলছে, তাহলে একটি করুন

kill -2 7667

আপনার উপায় পর্যন্ত কাজ -9.

আপনার অ্যাকাউন্ট দ্বারা শুরু হওয়া সমস্ত প্রক্রিয়া হত্যা করতে, প্রবেশ করুন kill <level> -1. আগের মতোই: আপনার পথে কাজ করুন -9.

আপনি যদি প্রক্রিয়াটির নামটি জানেন তবে আপনি কেবল যেতে পারেন killall <processname>, যেখানে আপনি হত্যা করার চেষ্টা করছেন কি. উদাহরণ স্বরূপ: killall fish (মাছ, এই অর্থে, বন্ধুত্বপূর্ণ ইন্টারেক্টিভ শেল).

জন্য ডকুমেন্টেশন killall এখানে পাওয়া যাবে: http://manpages.ubuntu.com/manpages/hardy/man1/killall.1.html

এই অ্যাপ্লিকেশন দিয়ে আপনি প্রোগ্রাম তালিকা দেখতে পারেন

এইচটিওপি ইনস্টল করুন

sudo apt-get install htop

দেখুন প্রক্রিয়া এবং হত্যা প্রক্রিয়ার জন্য আপনি এটি ইনস্টল এবং সহজভাবে মুছে ফেলতে পারেন

enter image description here

আমি একটি ছোট স্ক্রিপ্ট লিখেছি আমি হত্যা করার জন্য লিখেছি (আমার ক্ষেত্রে) স্কাইপ:

kill -s 9 `ps aux | grep skype | head -n 1 | cut -f4 -d" "`

কিন্তু আমি দেখতে পেলাম যে তখন যতটা কাজ করেছিল, পরের দিন এটি কাজ করে না কারণ পিআইডি একটি ভিন্ন দৈর্ঘ্য ছিল এবং সেখানে স্পেসের পরিমাণ আলাদা ছিল

তারপর আমি এই সাইট জুড়ে এসে চেষ্টা

pgrep -l -u justin

যা সুবিধামত বিন্যাসে প্রসেস আউটপুট

[pid] [name]

তাই আমি এই স্ক্রিপ্ট আমার কোড সামঞ্জস্য:

kill -s 9 `pgrep -l -u justin | grep skype | cut -f1 -d" "`

এটি যা করে তা হ ' ল সমস্ত প্রক্রিয়া পাইপ justin (যে কোনো ব্যবহারকারীর নাম পরিবর্তন করা যাবে) চলমান grep যা জন্য দেখায় skype (এই আপনার প্রক্রিয়া পরিবর্তন করা যাবে) এবং তারপর পাইপ যে লাইন cut যা তখন কেবল পিআইডি পড়ে এবং অবশেষে সেই পিআইডি ব্যবহার করে kill কমান্ড এটি হত্যা করতে.

...লিনাক্সের সমস্ত প্রক্রিয়া সংকেতগুলিতে সাড়া দেয় সংকেত বিনষ্ট বা তাদের আচরণ পরিবর্তন করতে প্রোগ্রাম বলার একটি অপারেটিং সিস্টেম-স্তর উপায়.

পিআইডি দ্বারা প্রক্রিয়া সংকেত পাঠাতে কিভাবে

একটি প্রোগ্রাম সংকেত ক্ষণস্থায়ী সবচেয়ে সাধারণ উপায় বধ কমান্ড দিয়ে হয়.

আপনি যেমন আশা করতে পারেন, এই ইউটিলিটির ডিফল্ট কার্যকারিতা হ ' ল একটি প্রক্রিয়া হত্যা করার চেষ্টা করা:

kill PID_of_target_process

এই প্রক্রিয়া শব্দ সংকেত পাঠায়. শব্দ সংকেত প্রক্রিয়া বলে বিনষ্ট দয়া করে. এই প্রোগ্রাম মসৃণ পরিষ্কার আপ অপারেশন সম্পাদন এবং প্রস্থান করতে পারবেন.

যদি প্রোগ্রামটি খারাপ আচরণ করে এবং শব্দ সংকেত দেওয়া হলে প্রস্থান না করে, আমরা কিল সিগন্যালটি পাস করে সিগন্যালটি বাড়িয়ে তুলতে পারি:

kill -KILL PID_of_target_process

এই প্রোগ্রাম পাঠানো হয় না যে একটি বিশেষ সংকেত.

পরিবর্তে, এটি অপারেটিং সিস্টেম কার্নেলকে দেওয়া হয়, যা প্রক্রিয়াটি বন্ধ করে দেয় এই প্রোগ্রাম যে তাদের পাঠানো সংকেত উপেক্ষা বাইপাস করতে ব্যবহার করা হয়...