Як переглянути запущені процеси в Linux

У Windows переглянути запущені процеси на сервері так само просто, як натиснути ctrl+shift+esc, але в Linux це трохи складніше, адже Linux за замовчуванням не має графічного інтерфейсу і зазвичай ним керують через термінал. Дізнайтеся, як відстежувати запущені процеси в Linux, з нашої статті нижче.

Що таке процес у Linux

Будь-який процес в операційній системі, чи то Linux, чи Windows, - це завдання, над яким працює сервер. Кожен застосунок, який ви відкриваєте, зокрема провідник, браузер, калькулятор чи блокнот, - це безперервний процес, який працюватиме, доки ви його не закриєте, тобто доки завдання не буде завершено й процес не закриється. Багато програм можуть відкривати кілька процесів, зокрема різні браузери або навіть служби аудіодрайверів. 

Процеси можна запускати як фонові (наприклад, VPN, що працюють у фоновому режимі), так і як активні (foreground). Це може бути застосунок, яким ви користуєтеся саме зараз. 

Linux славиться своєю послідовністю, тому кожен процес має власний ідентифікаційний номер процесу (PID). 

Розуміння того, що саме зараз перевантажує ваш сервер і як завершити процес або знизити його пріоритет, - важливий крок до стабільної роботи сервера. 

Як вивести список усіх процесів у Linux

Для цього є три команди

ps

Дає статичний знімок процесів на вашому сервері.

top

Надає зведення про стан системи в реальному часі: RAM, відсоток завантаження CPU, пам'ять SWAP, час роботи процесу тощо. 

htop

Надає детальніше зведення про всі системні процеси. Ви можете вибирати певні процеси мишею, що неможливо з двома попередніми командами. 

Знайомство з командою ps

Команда ps схожа на Диспетчер завдань Windows, за винятком того, що вона статична, тобто дані з часом не змінюються, бо це лише знімок. Хоча вміст може відрізнятися в різних UNIX-подібних ОС, зазвичай вона показує PID, назву термінала, час роботи та команду, яка запустила процес. Якщо використати аргумент aux ось так:

ps aux

Ви отримаєте всі запущені процеси, зокрема ті, які використовують користувачі на вашому сервері. Додаючи інші аргументи, можна отримати різні дані. 

ps -A

Показує всі процеси, запущені в системі (те саме, що ps -e).

ps u

Використовує орієнтований на користувача формат, що показує відсоток завантаження CPU, споживання RAM, власника процесу та команду, яка його запустила.

ps x

Показує процеси, запущені не з термінала, як-от демони та різні системні процеси, що запускаються за замовчуванням під час завантаження системи.

Знайомство з командою top

Ця команда вже дуже близька до того, що пропонує Windows. Якщо ви хочете знайти процес, який надмірно споживає ресурси сервера, то це саме те, що вам потрібно. Найресурсоємніший процес завжди буде вгорі. 

Дані тут не статичні, як у ps, а динамічні й оновлюються в реальному часі. Ось невелика шпаргалка гарячих клавіш. Увага: регістр має значення!

  • k - завершує процес
  • M -  сортує список за використанням пам'яті.
  • N -  сортує список за PID.
  • r -  змінює пріоритет процесу.
  • h - відкриває вікно довідки.
  • z - виділяє запущені процеси кольором.
  • d - змінює інтервал оновлення.
  • c - показує абсолютний шлях процесу.
  • q - зупиняє команду top.

Знайомство з командою htop

htop - це вдосконалена версія команди top, яка дає змогу використовувати мишу, а це в деяких випадках набагато швидший спосіб виконувати рутинну роботу з керування сервером: прокручування, клацання тощо. Також вона має кольорове кодування, яке допомагає виділяти певну корисну інформацію і швидко розуміти, що саме виведено. Якщо її немає на вашому сервері, ви можете швидко встановити її командою:

sudo apt install htop

Зазвичай потрібно вказати процес, який ви хочете завершити, але htop дає змогу зробити це, просто клацнувши потрібний процес

Ось ще одна шпаргалка гарячих клавіш. 

  • F1 - відкрити меню довідки.
  • F2 - відкрити налаштування htop.
  • F3 - знайти процес.
  • F4 - відфільтрувати процеси за назвою.
  • F5 - показати процеси у вигляді дерева.
  • F6 - відсортувати процеси за будь-яким стовпцем.
  • F7 - знизити пріоритет процесу.
  • F8 - підвищити пріоритет процесу.
  • F9 - завершити процес.

Висновок

Як бачите, це не здається таким складним, як користування Диспетчером завдань у Windows, просто має інший вигляд і трохи інший підхід. Можемо стверджувати, що, попрацювавши з ним деякий час, ви почнете думати, що Windows не така зручна у використанні, як Linux. Сподіваємося, ця стаття була для вас корисною!



Blog