Computer >> कंप्यूटर >  >> प्रणाली >> Linux

प्रक्रिया को मारने के लिए लिनक्स में पीएस कमांड का उपयोग कैसे करें

प्रक्रिया को मारने के लिए लिनक्स में पीएस कमांड का उपयोग कैसे करें

जब आप काम कर रहे होते हैं, तो कभी-कभी आपके प्रोग्राम अचानक से फ़्रीज़ हो जाते हैं। दूसरी बार, प्रोग्राम अभी भी चल रहे हैं लेकिन उच्च प्रोसेसर या मेमोरी खपत के साथ। लिनक्स में ps . का उपयोग करके इसे ठीक करने का एक तरीका है (पी रोसे एस टाटस) कमांड। यहां हम आपको दिखाते हैं कि ps . का उपयोग कैसे करें वर्तमान में चल रही प्रक्रियाओं और उनके पीआईडी ​​को सूचीबद्ध करने के लिए लिनक्स में कमांड। फिर आप अपने संसाधनों का उपभोग करने वाली प्रक्रियाओं को ढूंढ और मार सकते हैं।

“ps” कमांड का उपयोग करना

ps कमांड का उपयोग स्वयं किया जा सकता है। यह सूचना के चार कॉलम आउटपुट करेगा:

  • PID :सिस्टम द्वारा परिभाषित प्रक्रिया की विशिष्ट पहचानकर्ता। यह वह मूल्य है जिसका उपयोग हम किसी प्रक्रिया को रोकने के लिए करते हैं।
  • टीटीवाई :टर्मिनल जहां से प्रक्रिया शुरू की गई थी।
  • समय :प्रक्रिया द्वारा उपयोग किए जाने वाले CPU समय की कुल राशि।
  • सीएमडी :आदेश जो प्रक्रिया उत्पन्न करता है
प्रक्रिया को मारने के लिए लिनक्स में पीएस कमांड का उपयोग कैसे करें

ध्यान दें कि जब आप बिना किसी विकल्प के कमांड का उपयोग करते हैं, तो यह आपको अधिक जानकारी नहीं दिखाता है। इसे और अधिक उपयोगी बनाने के कुछ तरीके यहां दिए गए हैं।

<एच2>1. सभी उपयोगकर्ताओं की प्रक्रिया की सूची बनाएं

जब कुछ प्रोग्राम स्थापित होते हैं, तो वे कभी-कभी प्रक्रिया को चलाने के लिए कुछ अतिरिक्त उपयोगकर्ता भी बनाते हैं। उपयोगकर्ताओं की प्रक्रियाओं को सूचीबद्ध करने के लिए, -e . का उपयोग करें विकल्प:

ps -e

और इसका आउटपुट:

PID TTY          TIME CMD
1 ?        00:00:02 systemd
2 ?        00:00:00 kthreadd
3 ?        00:00:00 kworker/0:0
4 ?        00:00:00 kworker/0:0H
5 ?        00:00:00 kworker/u256:0
6 ?        00:00:00 mm_percpu_wq

2. अधिक जानकारी के साथ सूची प्रक्रिया करें

जब आप चल रही प्रक्रिया को सूचीबद्ध करते हैं तो अधिक जानकारी प्राप्त करना संभव है। ऐसा करने के लिए, आप ef . का उपयोग कर सकते हैं विकल्प।

ps -ef

और इसका आउटपुट:

UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 21:34 ?        00:00:03 /sbin/init maybe-ubiquity
root          2      0  0 21:34 ?        00:00:00 [kthreadd]
root          3      2  0 21:34 ?        00:00:00 [kworker/0:0]
root          4      2  0 21:34 ?        00:00:00 [kworker/0:0H]
root          6      2  0 21:34 ?        00:00:00 [mm_percpu_wq]
root          7      2  0 21:34 ?        00:00:00 [ksoftirqd/0]

3. प्रक्रिया आईडी द्वारा प्रक्रिया को फ़िल्टर करें

यदि आप उस चल रही प्रक्रिया की प्रक्रिया आईडी जानते हैं जिसे आप दिखाना चाहते हैं, तो आप इसके लिए विशेष रूप से -p के साथ फ़िल्टर कर सकते हैं झंडा। यह कई पीआईडी ​​को तर्क के रूप में ले सकता है, एक अल्पविराम द्वारा अलग किया जाता है और कोई स्थान नहीं होता है।

ps -ef -p 1234,5678,9012

4. उपयोगकर्ता के स्वामित्व वाली प्रक्रियाओं की सूची बनाएं

आप u . के साथ उन प्रक्रियाओं को भी सूचीबद्ध कर सकते हैं जो उपयोगकर्ता के स्वामित्व में हैं उपयोगकर्ता के नाम के बाद विकल्प:

ps -u userName

और इसका आउटपुट:

PID TTY          TIME CMD
2832 ?        00:00:00 systemd
2842 ?        00:00:00 (sd-pam)
3043 ?        00:00:00 sshd
3044 pts/1    00:00:00 bash
18396 pts/1    00:00:00 ps

5. सक्रिय प्रक्रियाओं की सूची बनाएं

ax . का उपयोग करके सक्रिय सभी प्रक्रियाओं को सूचीबद्ध करना संभव है विकल्प:

ps -ax

और इसका आउटपुट:

PID TTY      STAT   TIME COMMAND
1 ?        Ss     0:02 /sbin/init maybe-ubiquity
2 ?        S      0:00 [kthreadd]
3 ?        I      0:00 [kworker/0:0]
4 ?        I<     0:00 [kworker/0:0H]
6 ?        I<     0:00 [mm_percpu_wq]
7 ?        S      0:00 [ksoftirqd/0]

6. उपयोगकर्ताओं के साथ सक्रिय प्रक्रियाओं की सूची बनाएं

जब आप -aux . जोड़ते हैं तो उपयोगकर्ताओं के साथ सभी सक्रिय प्रक्रियाओं को सूचीबद्ध करना संभव है झंडा:

ps -aux

और इसका आउटपुट:

USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.2  78132  9188 ?        Ss   21:34   0:02 /sbin/init maybe-ubiquity
root          2  0.0  0.0      0     0 ?        S    21:34   0:00 [kthreadd]
root          3  0.0  0.0      0     0 ?        I    21:34   0:00 [kworker/0:0]
root          4  0.0  0.0      0     0 ?        I<   21:34   0:00 [kworker/0:0H]
root          6  0.0  0.0      0     0 ?        I<   21:34   0:00 [mm_percpu_wq]
root          7  0.0  0.0      0     0 ?        S    21:34   0:00 [ksoftirqd/0]
root          8  0.0  0.0      0     0 ?        I    21:34   0:00 [rcu_sched]
root          9  0.0  0.0      0     0 ?        I    21:34   0:00 [rcu_bh]
root         10  0.0  0.0      0     0 ?        S    21:34   0:00 [migration/0]

7. प्रोग्राम के नाम से प्रक्रिया को फ़िल्टर करें

ps पर फ़िल्टर लगाकर चल रहे किसी विशिष्ट प्रोग्राम के बारे में जानकारी प्राप्त करना संभव है परिणाम:

ps -aux | grep docker

और इसका आउटपुट:

root       1508  0.0  2.2 1518156 90868 ?       Ssl  21:34   0:03 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
userkub+  18429  0.0  0.0  13144  1108 pts/1    S+   23:57   0:00 grep --color=auto docker

वैकल्पिक रूप से, आप C . का भी उपयोग कर सकते हैं प्रक्रिया को उसके नाम से फ़िल्टर करने का विकल्प:

ps -C name
प्रक्रिया को मारने के लिए लिनक्स में पीएस कमांड का उपयोग कैसे करें

8. विशिष्ट कॉलम प्रदर्शित करें

चार डिफ़ॉल्ट कॉलम के अलावा, आप ps . प्राप्त कर सकते हैं जानकारी का एक अतिरिक्त कॉलम प्रदर्शित करने के लिए। उदाहरण के लिए:

ps -e -o pid,uname,pcpu,pmem,comm
प्रक्रिया को मारने के लिए लिनक्स में पीएस कमांड का उपयोग कैसे करें

-o ध्वज ps . के लिए विशिष्ट आउटपुट प्रदर्शन विकल्प सेट करता है आदेश के परिणाम। पीएस के लिए मानक प्रदर्शन विकल्पों की पूरी सूची देखें।

9. पदानुक्रमित ट्री शैली में परिणाम प्रदर्शित करें

ps -e --forest

यह प्रक्रियाओं को प्रदर्शित करने के लिए ट्री-स्टाइल संरचना बनाने के लिए ASCII कला का उपयोग करता है। फोर्कड और बच्चों की प्रक्रियाओं को उपयुक्त मूल प्रक्रियाओं के वंशज के रूप में दिखाता है, मिलान करने के लिए क्रमबद्ध करता है। पेड़ की "शाखाओं" को छिपाने के लिए, -H . का उपयोग करें --forest . के स्थान पर ।

<एच2>10. प्रदर्शन प्रक्रिया धागे
ps -p 4041 -L
प्रक्रिया को मारने के लिए लिनक्स में पीएस कमांड का उपयोग कैसे करें

-L पीएस की किसी भी कार्यक्षमता के लिए थ्रेडेड डिस्प्ले पर फ़्लैग टॉगल करता है। किसी विशिष्ट प्रक्रिया के थ्रेड्स को ट्रैक करते समय यह सबसे उपयोगी होता है।

11. सभी रूट प्रक्रियाएं दिखाएं

ps -f -U root -u root
प्रक्रिया को मारने के लिए लिनक्स में पीएस कमांड का उपयोग कैसे करें

वास्तविक और प्रभावी मूल पहचान के साथ चलने वाली सभी प्रक्रियाओं की खोज करें। यह उन्हें पूर्ण-लंबाई वाले प्रारूप में दिखाता है, इसके लिए धन्यवाद -f झंडा। आप इसे -o . के साथ जोड़ सकते हैं आउटपुट को कस्टमाइज़ करने के लिए फ़्लैग करें।

किसी प्रक्रिया को रोकने के लिए किल कमांड का उपयोग करें

एक बार जब आप दुर्व्यवहार की प्रक्रिया का पता लगा लेते हैं, तो आप चल रही प्रक्रिया को मारने के लिए किल कमांड का उपयोग कर सकते हैं। आदेश एक प्रक्रिया को एक संकेत भेजता है जो इसे समाप्त करता है। जब आपके प्रोग्राम फ़्रीज़ हो जाते हैं, तो अधिकांश समय आपको उन्हें -9 . के साथ बलपूर्वक मारने की आवश्यकता होगी विकल्प।

प्रक्रिया को मारने के लिए लिनक्स में पीएस कमांड का उपयोग कैसे करें

पीएस का आउटपुट एक त्वरित दृश्य है। htop के विपरीत , यह स्वयं को गतिशील रूप से अद्यतन नहीं करता है। इसका मतलब यह है कि कौन सी प्रक्रिया गलत व्यवहार कर रही है, इसकी स्पष्ट तस्वीर प्राप्त करने के लिए आपको इसे कई बार चलाना पड़ सकता है। प्रक्रियाओं का अप-टू-डेट दृश्य प्राप्त करने के लिए, आप Linux सिस्टम के लिए कुछ अन्य कमांड आज़मा सकते हैं।


  1. लिनक्स में नेटवर्क कनेक्शन की निगरानी के लिए ss कमांड का उपयोग कैसे करें

    यदि आप Linux का उपयोग करते हैं, तो संभवत:एक समय आएगा जब आपको अपने नेटवर्क के बारे में अधिक जानने की आवश्यकता होगी। कई उपकरण ऐसा करने में आपकी सहायता कर सकते हैं, और कुछ अन्य की तुलना में अधिक जटिल हैं। ss कमांड एक ऐसी चीज है जिस पर आप कई मशीनों पर इंस्टाल होने पर भरोसा कर सकते हैं, इसलिए इसे जानना आ

  1. लिनक्स में एक प्रक्रिया को कैसे मारें

    ऐसी कई विधियाँ हैं जिनका उपयोग Linux में किसी प्रक्रिया को समाप्त करने के लिए किया जा सकता है। यह ट्यूटोरियल आपको सिखाएगा कि टूटी हुई प्रक्रियाओं को कैसे खोजना और मारना है। एक प्रक्रिया आसानी से अनाथ हो सकती है। उद्देश्य पर या नहीं, एक मूल प्रक्रिया क्रैश हो सकती है और एक बच्चे की प्रक्रिया चल रही

  1. उदाहरण के साथ, लिनक्स में वॉच कमांड का उपयोग कैसे करें

    लिनक्स में वॉच कमांड एक काम करता है - एक कमांड को दोहराता है और परिणाम को बार-बार आउटपुट करता है, जिससे आप परिवर्तनों को देख सकते हैं। यहां इसका उपयोग करने का तरीका बताया गया है। कमांड सिंटैक्स देखें वॉच कमांड का सिंटैक्स इस प्रकार है: watch OPTIONS COMMAND ध्यान दें कि: विकल्प नीचे दी गई तालिका