42 votos

Cerrar la sesión de otro usuario sin cambiar primero a ese usuario

Mi mujer utiliza cuentas separadas y cambio rápido de usuario en un MBP con 10.6. A veces quiero cerrarle la sesión para liberar algo de RAM, pero me gustaría evitar iniciar sesión como ella, cerrar sesión y volver a iniciarla como yo.

He visto una solución terminal... ¿hay alguna mejor? Gracias.

5 votos

Tienes que definir mejor "hay una forma mejor". Para mí, no hay mucho mejor (informáticamente hablando) que un terminal. Si quieres una aplicación, simplemente envuelve el comando de terminal en una aplicación automator o applescript.

2 votos

@mankoff, ¡buen punto! Pero esto no es un foro de Arch Linux, así que vamos a suponer que quiero una GUI / solución incorporada :). Pero, tienes razón, puedo escribir un shell script.

2 votos

Aquí está el enlace a la solución script (lo vi antes de publicarlo, pero es de 2005, así que supuse que a estas alturas esta sencilla función ya debía estar incorporada en la GUI). forums.macrumors.com/showthread.php?t=118545

31voto

Gareth Jenkins Puntos 1480

Usando el Terminal, puedes matarla loginwindow proceso y cualquier programa que tenga abierto se cerrará... pero ¡esto le hará perder cualquier trabajo no salvado que tenga! De hecho, esta es la razon por la que necesitas entrar como ella para salir: Cuando inicias sesión como ella, todos sus programas vuelven a tener acceso a la interfaz gráfica de usuario, por lo que pueden pedirte que confirmes el cierre, guardes los cambios o realices otra acción antes de cerrar la sesión.

Si estás seguro de que sólo tiene abiertas cosas como un navegador web, iTunes, etc., y no Pages, Word, Photoshop o cualquier otra cosa con documentos, entonces podrías intentarlo desde el terminal:

kill `ps awwwwux | grep her_short_username | grep loginwindow | grep -v grep | awk "{ print \$2 }"`

En OSX 10.10.4: (ligera modificación del último comentario):

export pn=`ps awwwwux | awk '/her_short_username/ && /loginwind[o]w/ { print $2 }'`
sudo kill -9 $pn

1 votos

De acuerdo con la advertencia de que si no te conectas para ver lo que está haciendo, entonces no sabes lo que le puedes costar al desconectarla.

0 votos

Sí, tienes razón. La mayoría de las veces es navegación web... ¡Pero una vez no será! Gracias.

4 votos

Si la fuerza a terminar loginwindow a través de Activity Monitor.app podrías echar un vistazo convenientemente al mismo tiempo a qué otros procesos ha dejado abiertos.

28voto

Bennett McElwee Puntos 211

Puede utilizar el Monitor de actividad para cerrar la sesión de otro usuario matando su proceso de inicio de sesión:

  1. Ejecutar el monitor de actividad
  2. En el filtro de la parte superior derecha, escriba loginwindow
  3. Haga clic en la fila con el nombre del usuario en el campo Usuario columna
  4. Haga clic en Proceso de renuncia entonces Forzar salida e introduzca su contraseña.

Se trata de una versión GUI más agradable de Respuesta de Josh .

Antes del paso 2, puedes revisar los procesos en ejecución del otro usuario para ver si está ejecutando alguna aplicación que pueda perder datos al cerrar la sesión.

1 votos

He probado esto y sigo viendo los procesos del otro usuario ejecutándose en el Monitor de Actividad. Es cierto que la cuenta aparece desconectada en el menú de cambio de usuario, pero no parece ser realmente lo mismo que cerrar la sesión.

0 votos

Igual. Tal vez esto no funciona en un sistema operativo más actual que Bennet estaba usando

0 votos

A partir de macOS Mojave sigue funcionando. Me doy cuenta de que incluso cuando realmente cerrar la sesión del otro usuario normalmente, todavía hay más de 20 procesos que se ejecutan bajo ese usuario. Lo mismo ocurre si se fuerza la salida de loginwindow.

21voto

Torstein Hønsi Puntos 541

Este comando es más simple que el sugerido y tendrá el resultado deseado de matar todos los procesos del usuario (tuve que ejecutarlo dos veces)

sudo pkill -9 -u user

Si sólo quieres matar el proceso loginwindow para que nos

sudo pkill -9 -u user loginwindow

-2voto

Sam McAfee Puntos 4615

En mi opinión, la posible pérdida de datos supera con creces la posible ganancia de RAM.

Además, hace mucho tiempo que Unix no puede intercambiar memoria a disco cuando un proceso está inactivo.

2 votos

Un problema es que cuando un usuario se da de baja, sus procesos pueden no estar inactivos. Pueden estar masticando CPU y memoria. Los juegos parecen especialmente malos en este sentido.

2 votos

La pregunta menciona a la esposa, pero en realidad hay un caso aún mejor: cuando tienes un hijo que ha excedido su límite de tiempo para el día y sólo juega y hace otras cosas que no necesitan ser guardadas. Ahora no sólo tienes que iniciar sesión como el niño, pero añadir tiempo sólo para cerrar la sesión.

0 votos

@Michael Eso es exactamente mi caso de uso. :)

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