32 votos

¿Cómo salir del comando "sudo -s" en la Terminal?

Entré sudo -s en el terminal, y el cambió de

shameek@shameek-K55VD:~$ 

a

root@shameek-K55VD:~#. 

Ahora, cuando hago clic en el icono de cerrar la ventana del terminal, dice: "Todavía hay un proceso en ejecución en el terminal, cerrarlo puede matarlo".

Close this terminal? dialog box

Soy completamente nuevo en Ubuntu, por favor sugiera un comando para volver de

root@shameek-K55VD:~# 

a

shameek@shameek-K55VD:~$

y luego puedo cerrar la terminal.

1 votos

Si estás seguro de que has terminado lo que estabas haciendo en la terminal, simplemente cierra matando el [posible] proceso...

0 votos

Al utilizar "exit" o Ctrl-D, se le advertirá si hay algún proceso en segundo plano que necesite un terminal. El cierre forzado del terminal puede hacer que se pierda el trabajo en caso contrario.

64voto

sosytee Puntos 1203

Pulse Ctrl + D le hará salir del Super Usuario y le devolverá al estado de usuario normal. Como alternativa, puede escribir exit

11 votos

Con una ligera salvedad: si $IGNOREEOF está activo el control-d no es utilizable.

4 votos

Para añadir una explicación de lo que está sucediendo: sudo -s realmente sólo inicia un nuevo Shell como el root como subproceso, en lugar de cambiar las credenciales del Shell existente. Para la Terminal, esto es indistinguible de cualquier otro comando que aún se esté ejecutando. Se sale de la Shell interna como se saldría de cualquier otra. Esto también significa que los shells son apilables -- puedes simplemente invocar bash y obtener un nuevo Shell dentro del antiguo.

1 votos

Además, si no la has restablecido, la variable de entorno SHLVL te dirá cuántas capas de Shell tienes en ejecución.

35voto

dedunumax Puntos 1686

Tipo exit entonces se cerrará la sesión como usuario normal. A continuación, escriba exit de nuevo para cerrar el terminal o simplemente cerrarlo con el ratón.

GNOME Terminal showing exit command to escape from a subshell

0 votos

@EliahKagan ¿cuál es exactamente la diferencia entre sudo su y sudo -s ?

0 votos

Sudo -s no ejecutará el entorno Shell que se especifica en el archivo passwd. Pero no cambiará algunas variables de entorno ex: $HOME

14voto

Ken Liu Puntos 123

Si no estás haciendo nada importante en el terminal, puedes hacer clic en Cerrar Terminal en el ¿Cerrar esta terminal? ("Cerrar el terminal lo matará").

Esto enviará SIGHUP a la Shell que se está ejecutando, la cual se cerrará, al igual que si se utiliza el exit comando o Ctrl + D (también buenas maneras).

-9voto

zakmck Puntos 83

Una alternativa más, para procesos atascados que no quieren morir, es 'kill -9 -1'. Tenga en cuenta que esto mata cualquier proceso que posea el usuario actual y causa un desastre si es 'root'. Otra alternativa es ver lo que tienes con 'ps ux' para comprobar lo que todavía tienes en ejecución y matarlo (posiblemente con la opción -9).

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: