লিনাক্সে একটি প্রক্রিয়া শেষ করার জন্য কিল, পিল এবং কিল্লাল কমান্ডের গাইড Guide


একটি প্রক্রিয়া শেষ করতে লিনাক্স অপারেটিং সিস্টেম কিল কমান্ড সহ আসে। কমান্ডটি কোনও বড় পরিবর্তন/আপডেটের পরে পুনরায় বুট করার প্রয়োজন ছাড়াই সার্ভারটি চালিয়ে যাওয়া সম্ভব করে তোলে। এখানে লিনাক্সের দুর্দান্ত শক্তি আসে এবং এটি গ্রহটিতে 90% সার্ভারে লিনাক্স কেন চালাচ্ছে তার অন্যতম কারণ।

কিল কমান্ড একটি প্রক্রিয়া আরও নিখুঁত হতে একটি সংকেত, একটি নির্দিষ্ট সংকেত প্রেরণ। কিল কমান্ডটি সরাসরি বা শেল স্ক্রিপ্ট থেকে বিভিন্ন উপায়ে কার্যকর করা যেতে পারে।

/ Usr/বিন থেকে কমান্ড কমান্ড ব্যবহার করে পিকেল ব্যবহার করে প্রক্রিয়া নাম দ্বারা কোনও প্রক্রিয়া হ্রাস করতে আপনাকে কিছু অতিরিক্ত বৈশিষ্ট্য সরবরাহ করে।

কমান্ড কমান্ডের জন্য সাধারণ বাক্য গঠন:

# kill [signal or option] PID(s)

একটি কিল কমান্ডের জন্য একটি সিগন্যাল নাম হতে পারে:

Signal Name		Signal Value			Behaviour

SIGHUP			      1				Hangup
SIGKILL			      9				Kill Signal
SIGTERM			      15			Terminate

স্পষ্টত উপরের আচরণ থেকে SIGTERM হল একটি প্রক্রিয়াটি মেরে ফেলার ডিফল্ট এবং নিরাপদতম উপায়। সাইনআপ হিসাবে কোনও প্রক্রিয়াটি হত্যার নিরাপদ উপায় সাইনআপ নয় UP উপরোক্ত তিনজনের মধ্যে সিক্কিল সবচেয়ে নিরাপদ উপায়, কোনও প্রক্রিয়া হত্যা করার জন্য যা কোনও সংরক্ষণ ছাড়াই কোনও প্রক্রিয়া বন্ধ করে দেয়।

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

লিনাক্সে প্রতিটি প্রক্রিয়া, একটি পিড আছে। লিনাক্স সিস্টেম বুট করার পরে প্রথম যে প্রক্রিয়া শুরু হয় তা হ'ল - ডিআইডি প্রক্রিয়া, তাই বেশিরভাগ ক্ষেত্রে এটির জন্য "1" এর মান নির্ধারিত হয়।

ইনিশ হ'ল মাস্টার প্রক্রিয়া এবং এইভাবে হত্যা করা যায় না, যা নিশ্চিত করে যে মাস্টার প্রক্রিয়াটি দুর্ঘটনাক্রমে মারা যায় না। আরিন সিদ্ধান্ত নেয় এবং নিজেকে হত্যা করতে দেয়, যেখানে হত্যা নিছক বন্ধের অনুরোধ for

সমস্ত প্রক্রিয়া এবং সেই অনুসারে তাদের নির্ধারিত পিড জানতে, নীচের পিএস কমান্ডটি চালান।

# ps -A
PID TTY          TIME CMD
    1 ?        00:00:01 init
    2 ?        00:00:00 kthreadd
    3 ?        00:00:00 migration/0
    4 ?        00:00:00 ksoftirqd/0
    5 ?        00:00:00 migration/0
    6 ?        00:00:00 watchdog/0
    7 ?        00:00:01 events/0
    8 ?        00:00:00 cgroup
    9 ?        00:00:00 khelper
   10 ?        00:00:00 netns
   11 ?        00:00:00 async/mgr
   12 ?        00:00:00 pm
   13 ?        00:00:00 sync_supers
   14 ?        00:00:00 bdi-default
   15 ?        00:00:00 kintegrityd/0
   16 ?        00:00:00 kblockd/0
   17 ?        00:00:00 kacpid
   18 ?        00:00:00 kacpi_notify
   19 ?        00:00:00 kacpi_hotplug
   20 ?        00:00:00 ata/0
   21 ?        00:00:00 ata_aux
   22 ?        00:00:00 ksuspend_usbd

‘পিডোফ প্রক্রিয়া’ হিসাবে সিনট্যাক্স ব্যবহার করে উপরের আউটপুটটি কাস্টমাইজ করার বিষয়ে।

# pidof mysqld
1684

উপরের লক্ষ্য অর্জনের অন্য উপায়টি হ'ল নীচের বাক্য গঠনটি অনুসরণ করা।

# ps aux | grep mysqld
root      1582  0.0  0.0   5116  1408 ?        S    09:49   0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql
mysql     1684  0.1  0.5 136884 21844 ?        Sl   09:49   1:09 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock
root     20844  0.0  0.0   4356   740 pts/0    S+   21:39   0:00 grep mysqld

আমরা এগিয়ে যাওয়ার আগে এবং কিল কমান্ড কার্যকর করার আগে, কয়েকটি গুরুত্বপূর্ণ বিষয় লক্ষণীয়:

  1. কোনও ব্যবহারকারী তার সমস্ত প্রক্রিয়াটি হত্যা করতে পারে
  2. কোনও ব্যবহারকারী অন্য ব্যবহারকারীর প্রক্রিয়াটিকে হত্যা করতে পারে না
  3. কোনও ব্যবহারকারী সিস্টেম ব্যবহার করছে এমন প্রক্রিয়াগুলি হত্যা করতে পারে না
  4. একটি রুট ব্যবহারকারী সিস্টেম-স্তর-প্রক্রিয়া এবং যে কোনও ব্যবহারকারীর প্রক্রিয়াটিকে হত্যা করতে পারে।

একই ফাংশনটি সম্পাদন করার আরেকটি উপায় হ'ল 'pgrep' কমান্ড কার্যকর করা।

# pgrep mysql
3139

উপরের প্রক্রিয়া পিআইডি মারতে, প্রদর্শিত কমান্ডটি ব্যবহার হিসাবে ব্যবহার করুন।

kill -9 3139

উপরের কমান্ডটি পিড = 3139 থাকা প্রক্রিয়াটিকে হত্যা করবে, যেখানে পিআইডি প্রক্রিয়াটির একটি সংখ্যাগত মান।

একই ফাংশনটি সম্পাদন করার অন্য একটি উপায়, হিসাবে আবারও লেখা যেতে পারে।

# kill -SIGTERM 3139

একইভাবে ‘কিল -9 পিআইডি’ ‘কিল-সিগ্কিল পিআইডি’ এবং তদ্বিপরীত এর অনুরূপ।

প্রক্রিয়া নাম সম্পর্কে আপনাকে অবশ্যই সচেতন হতে হবে, ভুল প্রক্রিয়া নাম মেরে ফেলার আগে এবং আপনাকে ভুল করতে পারে।

# pkill mysqld

একসাথে একাধিক প্রক্রিয়া হত্যা করুন।

# kill PID1 PID2 PID3

or

# kill -9 PID1 PID2 PID3

or

# kill -SIGKILL PID1 PID2 PID3

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

# killall [signal or option] Process Name

শিশু প্রক্রিয়াগুলির সাথে সমস্ত মাইএসকিএল দৃষ্টান্তগুলি মুছে ফেলার জন্য, নিম্নলিখিত হিসাবে কমান্ডটি ব্যবহার করুন।

# killall mysqld

নীচের কোনও কমান্ড ব্যবহার করে প্রক্রিয়াটি চলমান আছে কি না তা আপনি সর্বদা যাচাই করতে পারবেন।

# service mysql status
# pgrep mysql
# ps -aux | grep mysql

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