Команда kill у Linux (розташована в /bin/kill) є вбудованою командою, яка використовується для завершення процесів вручну. вбити команда надсилає сигнал процесу, який завершує процес. Якщо користувач не вказує жодного сигналу, який буде надіслано разом із командою kill, то це значення за замовчуванням ТЕРМІН надсилається сигнал, який завершує процес.
Базовий синтаксис команди kill у Linux
Основний синтаксис команди `kill` такий:
Синтаксис:
kill [signal] PID>
тут,
- PID = Для команди `kill` потрібен ідентифікатор процесу (PID) процесу, який ми хочемо завершити.
- [сигнал] = Ми повинні вказати сигнал, і якщо ми не вкажемо сигнал, сигнал за замовчуванням ` ТЕРМІН` надсилається для завершення процесу
Сигнали можна вказати трьома способами:
Сигнали можна задати трьома способами; вони такі:
1. За номером:
Ми можемо вказати сигнал за допомогою числа. Наприклад, у нас є PID ` 1212 ` і хочете надіслати сигнал `SIGKILL`, щоб знищити цей PID. SIGKILL має номер сигналу ` 9 ` (Щоб знайти номери сигналів, виконайте команду `kill -l`).
Синтаксис:
перетворити рядок на int java
kill -9 1212>
2. З префіксом SIG (наприклад, -SIGkill)
Ми також можемо вказати сигнал за допомогою префікса SIG. Наприклад, нам потрібно послати сигнал ` ТЕРМІН ` і PID є ` 1432 `. Щоб просто перевірити номер сигналу `SIGTERM`, ми можемо використати команду `kill -l`.
Синтаксис:
kill -SIGTERM 1432>
3. Без префікса SIG:
Ми також можемо вказати сигнали без використання префікса SIG. Наприклад, якщо потрібно надіслати сигнал ` ТЕРМІН` і PID ` 1234 `. Щоб просто перевірити номер сигналу `TERM`, ми можемо використати команду `kill -l`.
Синтаксис:
kill -TERM 1234>
Деякі загальні сигнали в команді kill
У таблиці нижче наведено деякі типові сигнали та відповідні їм номери.
| Назва сигналу | Номер сигналу | опис |
|---|---|---|
| РЕЄСТРАЦІЯ | 1 | Виявлено зависання на керуючих терміналах або смерть керуючого процесу. |
| SIGINT | 2 | Він переривається з клавіатури. |
| SIGKILL | 9 | Це вбиває сигнал. |
| ТЕРМІН | п'ятнадцять | Він завершує сигнал. |
Щоб перевірити назву та номер сигналу, ми можемо використовувати ` вбити -л ` команда.
Параметри та приклади команди kill у Linux
вбити -л Варіант
Щоб відобразити всі доступні сигнали, ви можете використати параметр команди нижче:
Синтаксис:
kill -l>
вбити -л
Примітка:
- Від’ємні значення PID використовуються для позначення ідентифікатора групи процесів. Якщо ви передаєте ідентифікатор групи процесів, тоді всі процеси в цій групі отримають сигнал.
- PID, рівний -1, є дуже особливим, оскільки він вказує на всі процеси, крім kill та init, які є батьківським процесом для всіх процесів у системі.
- Щоб відобразити список запущених процесів, використовуйте команду ps і це покаже вам запущені процеси з їхніми PID-номерами. Щоб вказати, який процес має отримати сигнал завершення, нам потрібно надати PID.
Синтаксис:
ps>
ps
вбити PID Варіант
Ця опція вказує ідентифікатор процесу, який буде ліквідовано.
Синтаксис:
kill pid>
вбити -s Варіант
Цей параметр визначає сигнал, який буде надіслано процесу.
Синтаксис:
kill -signal pid>
Команда kill в Linux - поширені запитання
Як вбити процес із командного рядка Linux?
Щоб припинити процес із командного рядка Linux, ви можете скористатися
kill>команду, за якою йде ідентифікатор процесу (PID) цільового процесу. Наприклад, щоб завершити процес з PID 1234, ви повинні використати таку команду:kill 1234>За замовчуванням,
kill>Команда надсилає сигнал SIGTERM, дозволяючи процесу виконувати операції очищення перед завершенням. Якщо процес не відповідає на SIGTERM або якщо потрібне негайне завершення, ви можете використати сигнал SIGKILL із-9>варіант:kill -9 1234>Важливо зауважити, що примусове завершення процесу за допомогою SIGKILL може призвести до втрати або пошкодження даних, тому рекомендується спочатку спробувати SIGTERM і використовувати SIGKILL лише за необхідності.
Як вбити кілька процесів одночасно?
Ми можемо використовувати команду kill, щоб вбити кілька процесів одночасно. Нам просто потрібно вказати декілька PID, розділених пробілами, або ми також можемо використати команду `killall`, щоб припинити всі процеси з певним іменем.
Наприклад:
Якщо ми хочемо вбити PID процесів, наприклад 1234, 4321 і 2342, ми можемо використати таку команду:
kill 1234 4321 2342>Якщо ми хочемо вбити всі процеси з назвою firefox. Ми можемо використати наступну команду.
killall firefox>
Чи безпечно вбивати системні процеси?
Ні, важливо зазначити, що вимикайте лише ті процеси, які, як ми знаємо, безпечні, а вимикання системних процесів може призвести до нестабільності системи. Завжди краще використовувати інші методи, як-от перезавантаження системи або визначення основної причини проблеми та її усунення.
Яка різниця між SIGTERM і SIGKILL у команді `kill` в Linux?
SIGTERM, він надсилає сигнал завершення процесу, який допомагає витончено вийти. У той час як SIGKILL надсилає процесу сигнал закриття, який припиняє процеси примусово та негайно.
Наприклад:
Щоб надіслати сигнал `SIGTERM` і PID `4321`, ми можемо використати таку команду.
суматор повнийkill -15 4321>Щоб надіслати сигнал `SIGKILL` і PID `4321`, ми можемо використати таку команду.
kill -9 4321>
Як я можу знайти ідентифікатор процесу (PID) певної програми в Linux?
Щоб знайти PID певної програми, ви можете скористатися
pgrep>команду, за якою йде назва програми. Наприклад, щоб знайти PID процесу firefox, потрібно ввести:pgrep firefox>
Яка метаpkill>і чим вона відрізняється від командиkill>команда?
The
pkill>Команда використовується для надсилання сигналів процесам на основі їх імені, забезпечуючи більш зручний спосіб завершення процесів. Він відрізняється відkill>дозволяючи користувачам вказувати процеси за назвою, а не PID.
Як я можу перевірити використання ресурсів (ЦП, пам’ять) певним процесом у Linux?
Щоб перевірити використання ресурсів певним процесом, ви можете використовувати
top>разом з ідентифікатором процесу (PID). Наприклад, щоб контролювати використання ресурсів процесом з PID 1234, ви повинні виконати:top -p 1234>
Висновок
Команда `kill` в Linux є дуже потужною утилітою для керування процесами. Ми зрозуміли різні способи визначення сигналів і доступних параметрів у команді kill, що може допомогти нам ефективно керувати системними ресурсами та швидко й ефективно вирішувати проблеми.
вбити -s