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

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

Запускаю:
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 при завершении должен завершить и дочерние процессы.
  • Вопрос задан
  • 5737 просмотров
Подписаться 4 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Инженер по тестированию
    8 месяцев
    Далее
  • Яндекс Практикум
    DevOps для эксплуатации и разработки
    6 месяцев
    Далее
  • Яндекс Практикум
    Go-разработчик с нуля
    8 месяцев
    Далее
Решения вопроса 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
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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