Я ищу утилиту, которая могла бы показать мне, сколько пропускной способности использует каждый процесс. Он должен просто распечатать данные и выйти, так как я хочу передать этот список в conky.
56
Я ищу утилиту, которая могла бы показать мне, сколько пропускной способности использует каждый процесс. Он должен просто распечатать данные и выйти, так как я хочу передать этот список в conky.
Вы можете попробовать NetHogs .
NetHogs - это небольшой инструмент для работы с сеткой. Вместо того, чтобы разбивать трафик на протокол или подсеть, как это делают большинство инструментов, он группирует пропускную способность по процессам . NetHogs не требует загрузки специального модуля ядра. Если внезапно появляется большой сетевой трафик, вы можете запустить NetHogs и сразу увидеть, какой PID вызывает это. Это позволяет легко идентифицировать программы, которые вышли из строя и внезапно занимают вашу пропускную способность.
sudo nethogs -p eth2
, Вы должны указать свой Ethernet, если это не eth0 по умолчанию.Существует немало перечисленных здесь .
Мои любимые, однако, остаются iftop и tcpdump . Wireshark также очень хороший вариант.
источник
Попробуйте
atop
... чтобы получить максимальную отдачу от этого, вам, возможно, придется включить некоторые дополнительные исправления ядра (исправления учета ввода / вывода).Если
atop
это не вариант, используйтеnetstat -anp --inet
(от имени root), чтобы получить список того, какие порты TCP / UDP используются какими процессами (или, возможно, использоватьlsof
для этого). Оттуда просто переберите каждый процесс, у которого есть открытый сокет, и либо подключитесь к нему, используяltrace -S
илиstrace
для просмотра операций чтения, записи, отправки и получения, либо используйтеtcpdump
с фильтром, указывающим ваш локальный IP-адрес (а) и порты TCP / UDP. которые были перечислены.atop
безусловно, самый удобный из них ... если он у вас есть и установлена необходимая поддержка ядра. В прошлом у меня были клиенты и работодатели, которые настраивали специальные системы (отличные от их производственных образов) с единственной целью поддержки использования профилирования ввода / выводаatop
. Однако эти другие методы доставят вас туда.Я уверен, что мы могли бы также сделать что-то, используя SystemTap ... но я не знаю каких-либо простых заранее приготовленных рецептов для этого. SystemTap - это инструмент анализа программ.
источник
netstat -anp --inet
, и проверитьRecv-Q
иSend-Q
столбцы