Команди для управління процесами в Linux
Вступ
Управління процесами є важливим аспектом адміністрування системи Linux. Розуміння того, як переглядати, створювати, керувати та завершувати процеси, є ключовим для ефективного виконання завдань. У цій статті ми розглянемо широкий спектр команд, які можна використовувати для керування процесами в Linux. Ми охопимо команди для перегляду інформації про процес, керування розподілом ресурсів, синхронізації процесів та багато іншого.
Перегляд інформації про процеси
Команда ps
Команда ps
є одним з найпоширеніших інструментів для перегляду інформації про процеси. Вона надає базову інформацію, таку як ідентифікатор процесу (PID), ім’я користувача, час ЦП, стан та запущену команду.
bash
ps aux
Команда top
Команда top
надає більш докладну інформацію про процеси, працюючи в режимі реального часу. Вона показує використання ЦП, пам’яті та інші важливі показники для всіх активних процесів.
bash
top
Команда free
Команда free
використовується для відображення використання пам’яті, включаючи інформацію про буфери, кэш та файл підкачки. Ця інформація корисна для виявлення проблем з пам’яттю та оптимізації використання ресурсів.
bash
free -m
Керування розподілом ресурсів
Команда nice
Команда nice
дозволяє встановлювати пріоритет процесу. Це корисно для налаштування розподілу ресурсів процесам, яким потрібна додаткова потужність ЦП або менш важливим процесам, які можна уповільнити.
bash
nice -n 10 <command>
Команда renice
Команда renice
дозволяє змінити пріоритет процесів, які вже працюють. Це може бути корисно для налаштування розподілу ресурсів на льоту.
bash
renice 10 <pid>
Команда ulimit
Команда ulimit
дозволяє встановлювати обмеження на ресурси для конкретних користувачів або процесів. Це може бути корисним для обмеження використання пам’яті або відкритих файлових дескрипторів.
bash
ulimit -u 1000
встановити обмеження на використання пам'яті 1 ГБ
Синхронізація процесів
Команда sleep
Команда sleep
призупиняє виконання поточного процесу на певну кількість секунд. Це корисно для затримки виконання або синхронізації процесів.
bash
sleep 10
затримати виконання на 10 секунд
Команда wait
Команда wait
чекає завершення дочірнього процесу. Це корисно для синхронізації батьківського та дочірнього процесів.
bash
wait $pid
чекати завершення процесу з PID $pid
Команда kill
Команда kill
відправляє сигнал процесу для його завершення. Це може бути корисно для примусового завершення завислих або проблемних процесів.
bash
kill -9 <pid>
примусово завершити процес з PID $pid
Інші команди управління процесами
Команда bg
Команда bg
використовується для переведення процесу в фоновий режим. Це дозволяє продовжити виконання сценаріїв або команд, навіть якщо термінал закрито.
bash
bg <pid>
перевести процес з PID $pid у фоновий режим
Команда fg
Команда fg
повертає процес у фоновому режимі на передній план. Це дозволяє взаємодіяти з процесом безпосередньо через термінал.
bash
fg <pid>
повернути процес з PID $pid на передній план
Команда disown
Команда disown
від’єднує процес від поточного сеансу. Це запобігає завершенню процесу при виході з оболонки.
bash
disown <pid>
від'єднати процес з PID $pid від поточного сеансу
Висновок
Управління процесами є невід’ємною частиною адміністрування системи Linux. Розуміння команд, описаних у цій статті, дасть вам можливість ефективно переглядати, створювати, керувати та завершувати процеси. Ці знання дозволять вам ефективно керувати ресурсами системи, оптимізувати продуктивність та вирішувати проблеми з процесами.
Часті запитання
Що таке PID?
PID (ідентифікатор процесу) є унікальним числом, яке ідентифікує кожен процес у системі Linux.
Яка команда використовується для перегляду всіх запущених процесів?
Для перегляду всіх запущених процесів використовуйте команду ps aux
.
Як завершити процес примусово?
Для примусового завершення процесу використовуйте команду kill -9 <pid>
, де <pid>
— PID процесу.
Як перевести процес у фоновий режим?
Щоб перевести процес у фоновий режим, використовуйте команду bg <pid>
, де <pid>
— PID процесу.
Як повернути процес з фонового режиму на передній план?
Щоб повернути процес із фонового режиму на передній план, використовуйте команду fg <pid>
, де <pid>
— PID процесу.
Як отримати інформацію про використання пам’яті?
Для отримання інформації про використання пам’яті використовуйте команду free -m
.
Як встановити пріоритет процесу?
Для встановлення пріоритету процесу використовуйте команду nice -n <priority> <command>
, де <priority>
— пріоритет процесу, а <command>
— виконувана команда.
Як затримати виконання процесу на певну кількість секунд?
Для затримки виконання процесу на певну кількість секунд використовуйте команду sleep <seconds>
, де <seconds>
— кількість секунд для затримки.
Як синхронізувати батьківський та дочірній процеси?
Для синхронізації батьківського та дочірнього процесів використовуйте команду wait $pid
, де <pid>
– PID дочірнього процесу.