Доступ до Інтернету необхідний, але вам може бути цікаво, які процеси Linux найбільше використовують ваше з’єднання на вашому комп’ютері. На щастя, за допомогою деяких звичайних утиліт Linux відстежувати, які процеси використовують вашу пропускну здатність, легко. Ось деякі з них:
MUO ВІДЕО ДНЯ
ПРОКРУТЬТЕ, ЩОБ ПРОДОВЖИТИ ВМІСТ
1. нетоги
nethogs це програма, яка робить для підключення до Інтернету те ж саме, що htop або top робить для процесора та використання пам’яті. Він показує знімок того, які процеси отримують доступ до мережі.
Подібно до top, htop або atop, nethogs — це повноекранна програма, яка оновлюється через кілька секунд, щоб показати вам поточні мережеві підключення за процесами.
Встановити nethogs просто. Ви просто проходите через менеджер пакетів.
Наприклад, у Debian і Ubuntu:
sudo apt install nethogs
І в Arch Linux:
sudo pacman -S nethogs
Про сімейство Red Hat:
sudo dnf install nethogs
Щоб запустити nethogs, вам потрібно бути root:
sudo nethogs
Можна налаштувати так, щоб ви могли запускати nethogs як звичайний користувач, використовуючи цю команду:
sudo setcap "cap_net_admin,cap_net_raw+pe" /path/to/nethogs
Вам слід замінити «/path/to/nethogs» на абсолютний шлях до nethogs. Ви можете знайти це за допомогою команди which:
which nethogs
2. lsof
Хоча lsof є утилітою для переліку відкритих файлів, вона також може виводити список відкритих мережевих з’єднань. Параметр -i містить список підключень до Інтернету, підключених до запущених процесів у системі. Зрештою, у Linux все є файлом.
Щоб переглянути поточні підключення до Інтернету, скористайтеся цією командою:
lsof -i
lsof покаже вам назву будь-якої команди з відкритими підключеннями до Інтернету, PID, дескриптор файлу, тип підключення до Інтернету, розмір, протокол і офіційну назву файлу підключення.
Використання параметрів -i4 і -i6 дозволяє переглядати підключення за допомогою IPv4 або IPv6.
Цілком імовірно, що ви вже встановили lsof. Його також легко встановити на основних дистрибутивах Linux, якщо це не так.
У Debian і Ubuntu введіть:
sudo apt install lsof
І на Арці:
sudo pacman -S lsof
Про сімейство дистрибутивів Red Hat:
sudo dnf install lsof
3. netstat
netstat сама по собі є потужною програмою, яка дозволяє бачити мережеві підключення у вашій системі. Він не показує, до яких процесів приєднані мережеві підключення. Як і у випадку з lsof, ви можете побачити це за допомогою параметра командного рядка.
netstat є частиною пакету net-tools. Ви можете встановити його на більшість дистрибутивів Linux за допомогою менеджера пакетів за замовчуванням.
Наприклад, у Debian або Ubuntu:
sudo apt install net-tools
В Arch Linux:
sudo pacman -S net-tools
Щоб інсталювати netstat у Fedora, CentOS і RHEL, виконайте:
sudo dnf install net-tools
Ви можете запустити netstat у командному рядку. За замовчуванням він показуватиме таку інформацію, як протокол, адреса та стан з’єднання, але параметр -p додає стовпець, який показує ідентифікатор процесу та назву команди.
netstat -p
Коли ви запускаєте його, netstat просто перерахує всі мережеві підключення, а потім вийде. За допомогою параметра -c ви можете бачити постійно оновлюваний список підключень:
netstat -pc
Це було б схоже на використання екранно-орієнтованої програми, як-от nethogs, але перевага цього способу полягає в тому, що ви можете передавати вихідні дані в іншу програму, наприклад grep або пейджер, щоб перевірити його:
netstat -p | grep 'systemd'
Щоб побачити всі процеси з мережевими підключеннями у вашій системі, вам, можливо, доведеться запустити netstat від імені користувача root:
sudo netstat
Тепер ви можете бачити, які програми Linux з’їдають вашу пропускну здатність
Linux, як і багато сучасних ОС, тісно пов’язаний з Інтернетом. Часом може бути важко відстежити, які процеси використовують вашу пропускну здатність. За допомогою таких інструментів, як nethogs, lsof і netstat, ви можете відстежувати процеси, які мають відкриті з’єднання.
Процеси іноді йдуть з ладу, навіть із підключеннями. У Linux ви можете легко припинити будь-які шахрайські процеси.