аᶘ
Size: a a a
аᶘ
VP
аᶘ
VP
VP
#!/usr/bin/env python2
# -*- coding: utf8 -*-
import subprocess
import time
import threading
# Порождаем процесс 'ls' с параметром '-l'
proc = subprocess.Popen(['ls','-l'])
# Останавливаем главный поток программы на 500 секунд. На их протяжении процесс будет иметь
# статус "зомби", хоть процесс уже и завершился, поскольку не была выполнена обработка
# результата процесса
time.sleep(500)
# В этом месте зомби исчезнет, т.к. программа очистит буферы ввода-вывода для процесса
# и считает код его завершения
proc.communicate()
time.sleep(5)
И можно в соседнем терминале цапануться к процессу родителю по его PID
(Ессесно от рута) gdb -p ParentPID
(пид процесса родителя) и в нём, после запуска, пишем wait(PID_of_children_zombie)
После чего зомбак успешно завершается.VP
F
$ cat /etc/redhat-release
CentOS release 6.10 (Final)
$ uname -a
Linux **.sea 2.6.32-754.22.1.el6.x86_64 #1 SMP Tue Sep 17 16:24:44 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
VP
$ cat /etc/redhat-release
CentOS release 6.10 (Final)
$ uname -a
Linux **.sea 2.6.32-754.22.1.el6.x86_64 #1 SMP Tue Sep 17 16:24:44 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
F
VP
F
$ cat /proc/sys/net/ipv4/tcp_available_congestion_controlкек.
cubic reno
F
F
F
VP
VP
cat /proc/sys/net/ipv4/tcp_available_congestion_control
reno cubic
F
cat /proc/sys/net/ipv4/tcp_available_congestion_control
reno cubic
VP
аᶘ
$ cat /etc/redhat-release
CentOS release 6.10 (Final)
$ uname -a
Linux **.sea 2.6.32-754.22.1.el6.x86_64 #1 SMP Tue Sep 17 16:24:44 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux