आसानी से पता लगाएं कि कौन सी प्रक्रिया लिनक्स में बहुत अधिक बैंडविड्थ का उपयोग कर रही है
हालांकि लिनक्स के लिए कई नेटवर्क निगरानी उपकरण उपलब्ध हैं, उनमें से अधिकतर आपके कंप्यूटर या किसी विशेष इंटरफ़ेस से नेटवर्क ट्रैफ़िक की निगरानी करते हैं। हालांकि, ऐसे समय होते हैं जब आप किसी विशेष प्रक्रिया को कम करना चाहते हैं जो बैंडविड्थ का अधिक उपयोग कर रहा है, और नेटहॉग नामक एक उपकरण है, जो आपको ऐसा करने देता है।
इस लेख में, हम NetHogs की मूल बातें और साथ ही साथ प्रदान की जाने वाली सुविधाओं पर चर्चा करेंगे।
NetHogs
उपयोगिता के मैन पेज के अनुसार, नेटहोग्स एक छोटा "नेट टॉप" टूल है। प्रति प्रोटोकॉल या प्रति सबनेट के नीचे नेटवर्क यातायात को तोड़ने के बजाय, अधिकांश टूल करते हैं, यह प्रक्रिया द्वारा बैंडविड्थ समूह करता है।
यदि अचानक बहुत सारे नेटवर्क यातायात हैं, तो आप नेटहॉग को आग लगा सकते हैं और तुरंत देख सकते हैं कि कौन सा पीआईडी इसका कारण बन रहा है, जिससे जंगली चले गए कार्यक्रमों की पहचान करना आसान हो गया है और अचानक आपकी बैंडविड्थ ले रही है। चूंकि NetHogs "/ proc" पर भारी निर्भर करता है, यह वर्तमान में केवल लिनक्स पर चलता है।
डाउनलोड / स्थापित करें
उबंटू जैसे डेबियन-आधारित सिस्टम के उपयोगकर्ता निम्न आदेश का उपयोग करके टूल को आसानी से डाउनलोड और इंस्टॉल कर सकते हैं:
sudo apt-nethogs स्थापित करें
यदि आप किसी अन्य वितरण का उपयोग कर रहे हैं, तो आप नेटहोग की आधिकारिक वेबसाइट पर दिए गए विवरण देख सकते हैं। ध्यान देने योग्य एक अन्य बिंदु यह है कि उपकरण को libpcap
और ncurses
आवश्यकता है, इसलिए सुनिश्चित करें कि आपके पास libncurses5-dev
और libpcap0.8-dev
स्थापित है।
प्रयोग
NetHogs उपयोग करने के लिए काफी सरल है; किसी भी कमांड लाइन विकल्प के बिना बस nethogs
कमांड nethogs
, और यह प्रत्येक प्रक्रिया द्वारा उपयोग की जाने वाली बैंडविड्थ प्रदर्शित करेगा। मेरे सिस्टम पर टूल द्वारा उत्पादित आउटपुट का स्नैपशॉट निम्न है:
जैसा कि आप स्क्रीनशॉट में देख सकते हैं, नेटहोग्स टूल पीआईडी, उपयोगकर्ता नाम, प्रक्रिया, नेटवर्क इंटरफ़ेस का उपयोग किया जा रहा विवरण, और जिस गति पर डेटा भेजा और प्राप्त किया जा रहा है, जैसे विवरण प्रदर्शित करता है।
कस्टम रीफ्रेश दर सेट करें
डिफ़ॉल्ट रूप से, नेटहोग का आउटपुट 1 सेकंड की देरी के बाद रीफ्रेश किया जाता है, लेकिन आप अपनी आवश्यकता के अनुसार इस विलंब को सेट करने के लिए -d
कमांड लाइन विकल्प का उपयोग कर सकते हैं। उदाहरण के लिए, 3 सेकंड की देरी सेट करने के लिए, निम्न आदेश का उपयोग करें:
सुडो नाथोग्स-डी 3
इंटरफ़ेस निर्दिष्ट करें
आप कमांड लाइन पर इंटरफ़ेस नाम निर्दिष्ट करके किसी विशेष नेटवर्क इंटरफ़ेस पर यातायात की निगरानी करने के लिए NetHogs से भी पूछ सकते हैं। उदाहरण के लिए, eth1
पर यातायात की निगरानी करने के लिए, आप निम्न आदेश का उपयोग कर सकते हैं:
सूडो नेथोग्स eth1
नोट : आप ट्रैफिक मोड में यातायात को स्नीफ करने के लिए -p
कमांड लाइन विकल्प का उपयोग कर सकते हैं, हालांकि इसकी अनुशंसा नहीं की जाती है।
कुंजीपटल अल्प मार्ग
टूल कुछ कीबोर्ड शॉर्टकट भी प्रदान करता है जिनका उपयोग आप आउटपुट के तरीके को नियंत्रित करने के लिए कर सकते हैं। उदाहरण के लिए, कमांड चल रहा है, आप इकाइयों को बदलने के लिए "एम" कुंजी दबा सकते हैं जिसमें भेजा गया और प्राप्त डेटा प्रदर्शित होता है - प्रत्येक बार जब आप कुंजी दबाते हैं, तो इकाई केबी / एस, केबी, बी, और एमबी।
यहां एक उदाहरण दिया गया है जहां एमबी में यातायात प्रदर्शित होता है:
इसी तरह, आप क्रमशः भेजे गए और प्राप्त डेटा द्वारा आउटपुट को सॉर्ट करने के लिए "एस" और "आर" दबा सकते हैं। और हमेशा के रूप में, "क्यू" आउटपुट छोड़ने के लिए है।
निष्कर्ष
NetHogs उन मामलों के लिए आदर्श है जब आप ऐसी प्रक्रिया को पकड़ना और मारना चाहते हैं जो बहुत सारी बैंडविड्थ खाने से अप्रत्याशित रूप से काम कर रही है। इसके अलावा, यह एक ओपन सोर्स यूटिलिटी है, जिसका मतलब है कि आप जिस तरह से काम करते हैं उसका अध्ययन कर सकते हैं, और जिस तरह से आप चाहते हैं उसे अनुकूलित भी कर सकते हैं।
क्या आपने कभी NetHogs या किसी अन्य समान टूल का उपयोग किया है? आपका अनुभव कैसा रहा? नीचे टिप्पणी में अपने विचारों को साझा करें।