⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.144
Server IP:
157.245.143.252
Server:
Linux www 6.11.0-9-generic #9-Ubuntu SMP PREEMPT_DYNAMIC Mon Oct 14 13:19:59 UTC 2024 x86_64
Server Software:
nginx/1.26.0
PHP Version:
8.3.11
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
lib
/
python3
/
dist-packages
/
landscape
/
sysinfo
/
View File Name :
processes.py
import os from twisted.internet.defer import succeed class Processes: def __init__(self, proc_dir="/proc"): self._proc_dir = proc_dir def register(self, sysinfo): self._sysinfo = sysinfo def run(self): num_processes = 0 num_zombies = 0 for pid in os.listdir(self._proc_dir): if not pid.isdigit(): continue status_path = os.path.join(self._proc_dir, pid, "stat") try: with open(status_path, "rb") as fd: data = fd.read() except IOError: continue num_processes += 1 if b"Z" == data.split(b" ", 3)[2]: num_zombies += 1 if num_zombies: if num_zombies == 1: msg = "There is 1 zombie process." else: msg = f"There are {num_zombies:d} zombie processes." self._sysinfo.add_note(msg) self._sysinfo.add_header("Processes", str(num_processes)) return succeed(None)