71 lines
2.7 KiB
Python
71 lines
2.7 KiB
Python
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
|
|
"""
|
|
Este script finaliza el proceso "btlaunchmany.bittornado" (correspondiente al seeder P2P) y el proceso "bttrack" (correspondiente al tracker P2P),
|
|
lo que en la práctica hará que se cancelen las transmisiones P2P activas en el momento de ejecutarlo.
|
|
|
|
No he encontrado la forma de cancelar una transferencia P2P concreta, ya que "bttrack" hace tracking de todos los torrents de ogRepo,
|
|
y es el proceso que es necesario finalizar para cancelar las transferencias P2P (con el seeder no bastaría, porque los clientes también hacen seed).
|
|
|
|
No recibe ningún parámetro.
|
|
"""
|
|
# --------------------------------------------------------------------------------------------
|
|
# IMPORTS
|
|
# --------------------------------------------------------------------------------------------
|
|
|
|
import subprocess
|
|
|
|
|
|
# --------------------------------------------------------------------------------------------
|
|
# FUNCTIONS
|
|
# --------------------------------------------------------------------------------------------
|
|
|
|
|
|
def kill_seeder():
|
|
""" Finaliza cualquier proceso activo de "btlaunchmany.bittornado",
|
|
que corresponde al seeder P2P.
|
|
"""
|
|
try:
|
|
subprocess.run(f"sudo pkill -9 btlaunchmany".split(), check=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
print("Process btlaunchmany.bittornado finalized")
|
|
except Exception as error_description:
|
|
print(f"No btlaunchmany.bittornado process running? Returned error: {error_description}")
|
|
|
|
|
|
|
|
def kill_tracker():
|
|
""" Finaliza cualquier proceso activo de "bttrack",
|
|
que corresponde al tracker P2P.
|
|
"""
|
|
try:
|
|
subprocess.run(f"sudo pkill -9 bttrack".split(), check=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
print("Process bttrack finalized")
|
|
except Exception as error_description:
|
|
print(f"No bttrack process running? Returned error: {error_description}")
|
|
|
|
|
|
|
|
# --------------------------------------------------------------------------------------------
|
|
# MAIN
|
|
# --------------------------------------------------------------------------------------------
|
|
|
|
|
|
def main():
|
|
"""
|
|
"""
|
|
# Finalizamos cualquier proceso activo de "btlaunchmany.bittornado" (seeder):
|
|
kill_seeder()
|
|
|
|
# Finalizamos cualquier proceso activo de "bttrack" (tracker):
|
|
kill_tracker()
|
|
|
|
|
|
|
|
# --------------------------------------------------------------------------------------------
|
|
|
|
if __name__ == "__main__":
|
|
main()
|
|
|
|
# --------------------------------------------------------------------------------------------
|