1 votos

¿Por qué hay procesos con mi ID de usuario después de cerrar sesión?

Estoy bastante estándar de Debian Sid sistema.

Después de cerrar la sesión, incluso después de suspender el DM (LightDM, si lo que importa) todavía veo toneladas de procesos que se ejecutan en mi nombre.

Sé que puedo contar con procesos "separado" y resistente a HANGUP, pero yo no explícitamente hacer nada de eso.

Algunos de los procesos que veo son: tracker-m, agent, evolution, gvfsd, applet.py.

No puedo ver ninguna razón por la que deberían seguir funcionando después de que yo cierre de sesión.

Debería estar preocupado acerca de la seguridad del sistema?

Puede alguien explicar?

2voto

Ljm Dullaart Puntos 136

Primero de todo: siempre debe estar preocupado acerca de la seguridad del sistema. Por lo tanto, independientemente de que el resto de tu pregunta, la respuesta es sí.

Ha habido un gran debate sobre si todos los procesos de un usuario debe ser terminado cuando el usuario cierra la sesión. Los desarrolladores de Systemd pensé que era una buena idea, el resto del mundo no lo hicieron (un poco de simplificación, pero ..)

Así que ahora una explicación. Cuando un shell interactivo muere, normalmente envía un SIGHUP (Señal HangUP) a todos sus procesos hijos. A menos que el proceso se ha hecho algo para manejar de manera diferente, SIGHUP termina a los niños.

Por lo tanto, si el proceso tiene un controlador para lidiar con el SIGHUP, se va a hacer probablemente algo más. Su proceso padre lo general se convertirá en 1 (init en mi Slackware).

Otra opción es que el proceso se divide un segundo proceso que hace el trabajo real. El proceso principal, y entonces muere. Esta es la forma en que muchos de los demonios de trabajo. El proceso padre es que ya está muerto, por lo que un SIGHUP nunca va a ir a través de la bifurcada-off demonio.

Hay un número de razones por las que un proceso debe ser mantenido en funcionamiento después de cerrar la sesión. Por ejemplo: un cliente de correo electrónico puede continuar para sondear el servidor de correo en su nombre, de modo que, cuando se de inicio de sesión de nuevo, a su buzón de correo es hasta la fecha, sin la necesidad de esperar. Un sistema de archivos demonio podría dispositivos de montaje en su nombre. Cuando hay un proceso que sigue utilizando ese sistema de archivos, el sistema de archivos demonio puede mantener montado, incluso a pesar de que el demonio puede ejecutar bajo su nombre.

Como para los procesos específicos: yo no sé acerca de tracker-m, pplet.py o agent. Podría ser cualquier cosa, como lo que yo sé. Probablemente algunos de gnome cosas.

evolution es probablemente su cliente de correo. Aunque no es realmente necesario para que se ejecute cuando se desconectan, se reducirá el tiempo de arranque de su cliente de correo si se mantiene en ejecución.

gvfsd es el Gnome sistema de archivos virtual de daemon.Mantenerlo en funcionamiento le permitirá mantener, por ejemplo, discos USB montado en su nombre.

Así que, en general, usted puede ver los procesos en su nombre se ejecuta después de cerrar la sesión. No hay problema con eso. Pero, como la seguridad consciente de la persona, usted debe investigar lo que se está ejecutando.

0voto

Nick Dixon Puntos 154

Los procesos específicos que figuran son normales – la mayoría de GNOME componentes, tales como el indexador de archivos, o en el correo/calendario de almacenamiento demonio. Que probablemente debería haber salido, pero el post no contiene suficiente información para responder si el sistema se suponía activamente matarlos.

Sé que puedo contar con procesos "separado" y resistente a COLGAR, pero yo no explícitamente hacer nada de eso.

La idea de "separar" un proceso sólo se aplica si el proceso fue conectado a un terminal en el primer lugar. Ninguno de la sesión gráfica de los procesos de empezar de esta manera; ellos nunca tienen un terminal de control, y su entrada/salida va a un archivo de registro, si en cualquier lugar en absoluto. Como la tara de la señal se genera cuando el control de tty desaparece (por ejemplo, es, literalmente, "hung up"), el no tener el control de tty, significa que nada será generado.

(Aunque incluso si usted comienza un proceso desde un terminal, esto no impide que de manera voluntaria "separar" a partir de ese terminal (lo que se llama 'daemonization'). Antes de integrado de gerentes de servicios tales como launchd o systemd, todos los servicios en segundo plano como sshd o inetd sería lanzado desde un terminal y desprenderse sin que se le pide explícitamente).

Para que el bruto de la mayoría de la sesión gráfica de los procesos, un equivalente cercano podría ser el servidor de X (Xorg). Podrían apoyar a un explícito "salga" de la señal a través de la SM, pero, en general, que acaba de salir al Xorg salidas y la conexión se pierde. Pero no es una señal; es voluntario por parte de el programa, y a veces el programa no inmediatamente porque está ocupado haciendo otra cosa y no se dio cuenta.

Una gran parte de sus procesos indicados son en realidad demonios de los servicios que incluso no usar X11. Por ejemplo, gvfsd es el GNOME sistema de archivos Virtual del demonio, que es normalmente utilizado por los programas de interfaz gráfica, pero no es X11-dependiente de su propio. Asimismo, tracker-minero es el archivo del servicio de indización – no usar X11. (Pero ambos son D-servicios de Autobús, así que hacen lo mismo cuando dbus-daemon y salidas de la conexión de bus se pierde.)

Aparte: Linux, tradicionalmente, ha tenido de todo el sistema concepto de "totalmente contenida inicio de sesión" hasta ... bueno, hasta que systemd-logind comenzó a usar cgroups para encapsular los procesos de sesión. Antes de eso, tener a un perro callejero proceso o dos después de cerrar la sesión fue una ocurrencia común. Ahora si configura logind a matar a todos los procesos de usuario al salir, va a matar a todos los procesos de usuario en cerrar sesión.

Sin embargo, no es raro que el mismo demonio proceso sería compartida entre sesiones de un mismo usuario – por ejemplo, entre una sesión gráfica y SSH login – más tarde logind versiones cambiado el enfoque de cada una de las sesiones de los usuarios. (De hecho, systemd incluso trajo un nuevo "usuario del servicio" concepto a través de 'yum --usuario'.) Ahora, incluso si la sesión de GNOME o KDE, pero todavía permanecer conectado a través de SSH, sus procesos no se mató porque usted todavía está conectado! (Este en particular afecta a la D-Bus de los servicios antes mencionados: el autobús ya no es específico para la sesión gráfica, pero es ahora compartida por la totalidad de la cuenta de usuario.)

Esto último significa que sólo se va a obtener resultados útiles si usted hace el proceso de verificación a través de una conexión que se registran directamente como root (o algún otro usuario).

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: