ค้นหาเว็บไซต์

Nethogs – ตรวจสอบการใช้งานการรับส่งข้อมูลเครือข่าย Linux ต่อกระบวนการ


มีเครื่องมือตรวจสอบเครือข่ายโอเพ่นซอร์สมากมายสำหรับระบบปฏิบัติการ Linux บนเว็บ สมมติว่าคุณสามารถใช้คำสั่ง iftop เพื่อตรวจสอบการใช้แบนด์วิดท์ คำสั่ง netstat หรือคำสั่ง ss เพื่อดูรายงานเกี่ยวกับสถิติอินเทอร์เฟซ หรือคำสั่งด้านบนเพื่อดูกระบวนการทำงานบนระบบของคุณ

แต่หากคุณกำลังมองหาบางสิ่งบางอย่างที่สามารถให้สถิติแบบเรียลไทม์ของแบนด์วิดท์เครือข่ายของคุณต่อการใช้งานกระบวนการ NetHogs เป็นเพียงยูทิลิตี้เดียวที่คุณควรมองหา

NetHogs คืออะไร?

NetHogs เป็นโปรแกรมบรรทัดคำสั่งโอเพ่นซอร์ส (คล้ายกับคำสั่งบนสุดของ Linux) ที่ใช้ในการตรวจสอบแบนด์วิดท์การรับส่งข้อมูลเครือข่ายแบบเรียลไทม์ที่ใช้โดยแต่ละกระบวนการหรือแอปพลิเคชันใน Linux

จากหน้าโครงการ NetHogs

NetHogs เป็นเครื่องมือ 'net top' ขนาดเล็ก แทนที่จะแบ่งทราฟฟิกตามโปรโตคอลหรือต่อซับเน็ต เช่นเดียวกับที่เครื่องมือส่วนใหญ่ทำ มันจะจัดกลุ่มแบนด์วิดท์ตามกระบวนการ NetHogs ไม่ต้องพึ่งพาโมดูลเคอร์เนลพิเศษที่จะโหลด หากมีการรับส่งข้อมูลเครือข่ายจำนวนมากอย่างกะทันหัน คุณสามารถเปิดใช้งาน NetHogs และดูว่า PID ใดที่ทำให้เกิดปัญหานี้ได้ทันที สิ่งนี้ทำให้ง่ายต่อการระบุโปรแกรมที่แพร่หลายและใช้งานแบนด์วิดท์ของคุณกะทันหัน

ในบทความนี้ คุณจะได้เรียนรู้วิธีติดตั้งและดูการใช้แบนด์วิดท์เครือข่ายแบบเรียลไทม์ต่อกระบวนการด้วยยูทิลิตี nethogs ภายใต้ระบบปฏิบัติการ Unix/Linux

วิธีการติดตั้ง NetHogs ในระบบ Linux

โซลูชันการตรวจสอบแบนด์วิธของ NetHogs นี้มีอยู่ในระบบปฏิบัติการ Linux จำนวนมาก ขึ้นอยู่กับการกระจาย Linux ที่คุณใช้อยู่ คุณสามารถติดตั้ง nethogs ได้จากวิธีใดวิธีหนึ่งต่อไปนี้:

ติดตั้ง NetHogs ใน RHEL, CentOS, Rocky Linux และ AlmaLinux

หากต้องการติดตั้ง nethogs คุณต้องเปิดพื้นที่เก็บข้อมูล EPEL ภายใต้การแจกจ่าย Linux ที่ใช้ RedHat จากนั้นเรียกใช้คำสั่ง yum ต่อไปนี้เพื่อดาวน์โหลดและติดตั้งแพ็กเกจ nethogs ดังที่แสดง

yum install epel-release
yum install nethogs

บน Fedora Linux ให้ใช้คำสั่ง dnf ดังที่แสดง

dnf install nethogs

ติดตั้ง NetHogs ใน Ubuntu, Linux Mint และ Debian

หากต้องการติดตั้ง nethogs ให้พิมพ์คำสั่ง apt ต่อไปนี้เพื่อติดตั้งแพ็คเกจ nethogs

sudo apt install nethogs

วิธีใช้ NetHogs เพื่อตรวจสอบแบนด์วิธตามกระบวนการ

หากต้องการเรียกใช้ยูทิลิตี้ nethogs ให้พิมพ์คำสั่งต่อไปนี้ใต้ระบบที่ใช้หมวกสีแดง

nethogs

บน Linux ที่ใช้ Debian คุณต้องมีสิทธิ์รูท ดังนั้นให้รันด้วยคำสั่ง sudo ดังที่แสดง

sudo nethogs
ตัวอย่างตัวอย่าง NetHogs:

ดังที่คุณเห็นด้านบนบรรทัด ส่ง และ รับ จะแสดงจำนวนการรับส่งข้อมูลที่ใช้ต่อกระบวนการ การใช้งานแบนด์วิธ ส่ง และ รับ ทั้งหมดจะถูกคำนวณที่ด้านล่าง คุณสามารถเรียงลำดับและเปลี่ยนลำดับได้โดยใช้การควบคุมแบบโต้ตอบที่กล่าวถึงด้านล่าง

ตัวเลือกบรรทัดคำสั่ง NetHogs

ต่อไปนี้คือตัวเลือกบรรทัดคำสั่ง nethogs การใช้ '-d' เพื่อเพิ่มอัตราการรีเฟรชและ 'ชื่ออุปกรณ์' เพื่อตรวจสอบอุปกรณ์ที่กำหนดหรือแบนด์วิดท์ของอุปกรณ์ (ค่าเริ่มต้นคือ eth0)

ตัวอย่างเช่น หากต้องการตั้งค่า 5 วินาที เป็นอัตราการรีเฟรช ให้พิมพ์คำสั่งเป็น

nethogs -d 5
sudo nethogs -d 5

หากต้องการตรวจสอบแบนด์วิดท์เครือข่ายของอุปกรณ์เฉพาะ (eth0) เท่านั้น ให้ใช้คำสั่ง as

nethogs eth0
sudo nethogs eth0

หากต้องการตรวจสอบแบนด์วิดท์เครือข่ายของอินเทอร์เฟซทั้ง eth0 และ eth1 ให้พิมพ์คำสั่งต่อไปนี้

nethogs eth0 eth1
sudo nethogs eth0 eth1

ตัวเลือกและการใช้งาน NetHogs

  • -d – ความล่าช้าสำหรับอัตราการรีเฟรช
  • -h – รายการการใช้งานคำสั่งที่มีอยู่
  • -p – สูดดมในโหมดสำส่อน (ไม่แนะนำ)
  • -t – โหมดติดตาม
  • -V – แสดงข้อมูลเวอร์ชัน

การควบคุมแบบโต้ตอบของ NetHogs

ต่อไปนี้เป็นการควบคุมเชิงโต้ตอบที่มีประโยชน์ (แป้นพิมพ์ลัด) ของโปรแกรม nethogs

  • -m – เปลี่ยนหน่วยที่แสดงสำหรับแบนด์วิธเป็นหน่วยเช่น KB/วินาที -> KB -> B-> MB
  • -r – จัดเรียงตามขนาดของการรับส่งข้อมูลตามลำดับ
  • -s – จัดเรียงตามขนาดของการรับส่งข้อมูลที่ส่ง
  • -q – กด Quit ไปที่พรอมต์ของเชลล์

สำหรับรายการตัวเลือกบรรทัดคำสั่งยูทิลิตี nethogs ทั้งหมด โปรดตรวจสอบหน้า man nethogs โดยใช้คำสั่ง 'man nethogs' หรือ 'sudo man nethogs<' จากเทอร์มินัล

สำหรับข้อมูลเพิ่มเติม โปรดไปที่หน้าแรกของโครงการ Nethogs