1 votos

¿Existe una forma de restringir la aparición de un proceso con un nombre determinado?

Al iniciarse, la aplicación Reverso genera dos procesos: Reverso (la propia aplicación) y el molesto Reverso Helper, que ocupa la barra de menús con su icono y permanece activo incluso después de cmd+Q -de la aplicación principal.

killall "Reverso Helper" mata el proceso no deseado mientras mantiene el programa principal intacto. Sin embargo, si la aplicación principal permanece abierta durante una docena de segundos, el proceso Helper se genera de nuevo.

ps -o ppid=, -p $(pgrep "Reverso Helper") | xargs ps -p nos dice que el proceso padre tanto de Reverso como de Helper es 1 /sbin/launchd , "el marco de gestión de servicios utilizado por MacOS, similar en algunos aspectos a systemd en Linux" , que se interconecta a través de una herramienta de terminal launchctl.

Estudié el manual de launchctl bastante superficialmente y busqué los archivos de Reverso Job Defenitions en directorios específicos, pero no encontré ninguno. No quise profundizar en esta dirección.

Siento que me falta una forma más obvia y elegante de evitar que un proceso con cierto nombre se inicie en cualquier sistema tipo Unix, lo cual sería mucho más útil de conocer que algunas cosas específicas de MacOS. Por favor, comparte tus ideas.

0voto

Aunque se podría (en teoría) envolver el exec() para evitar que se ejecuten ciertas rutas/nombres, esto sería una protección bastante débil ya que cualquier binario puede ser fácilmente renombrado para evitar el bloqueo.

Lo que podría ayudar es simplemente pausar/detener el proceso ejecutando

killall -STOP "Reverso Helper"

El proceso se mantendrá, pero ya no ocupará tiempo de la CPU. Sin embargo, el icono en la barra de menú seguirá siendo visible.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X