Задать вопрос

Завершение родительского процесса не завершает дочерние?

Запускаю:
sudo -u root bash -c 'cat /dev/random > /dev/null'

Получаю процессы:
root      7301  0.0  0.0   4708  1464 pts/3    S+   11:01   0:00 sudo -u root bash -c cat /dev/random > /dev/null
root      7302  0.0  0.0   3696  1072 pts/3    S+   11:01   0:00 bash -c cat /dev/random > /dev/null
root      7303  0.0  0.0   2832   436 pts/3    S+   11:01   0:00 cat /dev/random


Запускаю:
kill 7301
ps auxww | grep rand


cat всё еще висит:
root      7303  0.0  0.0   2832   436 pts/3    S    11:01   0:00 cat /dev/random


Ранее был уверен, что bash при завершении должен завершить и дочерние процессы.
  • Вопрос задан
  • 5725 просмотров
Подписаться 4 Оценить Комментировать
Решения вопроса 1
gaelpa
@gaelpa
kill -7301
man kill: Negative PID values may be used to choose whole process groups; see the PGID column in ps command output.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
kay
@kay Автор вопроса
Нашел неплохой мануал на тему riccomini.name/posts/linux/2012-09-25-kill-subprocesses-linux-bash/
Ответ написан
Комментировать
@Danismind
kill -9 PID
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы