¿Cómo puedo CTRL ^ C fuera de una solicitud de contraseña?


8

Digamos que comencé un sucomando y quiero cancelarlo. Control+ Cno funciona sucomo lo hace para sudo... Tengo que terminar el mensaje (ya sea equivocando la contraseña varias veces o bien).

¿Hay algo que pueda escribir para eliminar una solicitud de contraseña?



@DisplayName No puedes controlar-c desde un su como puedes hacerlo con un sudo ... este es un escenario diferente.
— Questionmark

la respuesta es control-D.
— DisplayName

@DisplayName Sí, vea la respuesta de Gilles. Mi punto es que esto no debe marcarse como un duplicado ...
— Questionmark

Es un duplicado. La respuesta para la publicación que vinculé también dice control-D.
— DisplayName

Respuestas:


5

suse ejecuta con privilegios elevados y no está viendo cómo responde ^C(lo que envía una señal con sus privilegios). Podrías usar su otro proyectil y matarlo del otro proyectil. Además (según el sistema), podría responder a SIGHUP(una señal de bloqueo) si cerró la sesión de terminal donde suestá ocurriendo lo incómodo .

Hay más de una forma que supuede ignorar su ^C, por ejemplo,

  • establecer manejadores de señal o
  • corriendo bajo una terminal de control diferente.

Una lectura rápida de Debiansu parece que usa este último. Su sistema, por supuesto, puede ser diferente.

Otras lecturas:


Si ejecuto sucomo un usuario normal y está esperando una entrada de contraseña del usuario, ¿se está "ejecutando con privilegios elevados" en este momento?
— techraf

1
Sí: puede verlo usted mismo haciendo un ps -efdesde otra terminal. Eso sucede automáticamente porque suestá configurado como root .
— Thomas Dickey

7

Puedes CTRL-D suavisar.
Este acceso directo señala un final de archivo en la consola, cerrando el indicador; se mostrará la consola Authentication error, lo cual es de esperar.


3
Control-D sería un EOF (QUIT es una cosa diferente, y generalmente se detecta ). Pero sí, EOF podría funcionar.
— Thomas Dickey

2

He encontrado que la mejor manera de matar sudurante el ingreso de una contraseña incorrecta es Control+ Useguido de Control+ D. Esto debería evitar retrasos molestos. También puede borrar la entrada con Control+ Uy volver a intentar escribir la contraseña.

Control+ Ues un comando que borra la línea de texto actual y también funciona en un shell (y probablemente también en otros lugares). También es bueno que parezca funcionar supara borrar la contraseña ingresada actualmente.

Usar Control+ Cno parece funcionar, parece que por alguna razón susimplemente lo ignora. No es cierto que el usuario que inició el proceso ya no pueda matarlo debido a setuid; sumuere perfectamente bien si lo matas con SIGTERMo SIGQUITdesde otro terminal (como un usuario que lo inició). SIGINTno funciona, así que suprobablemente solo lo ignore.

Control+ Dcon una entrada de contraseña vacía parece ser la única forma de eliminar instantáneamente una ejecución su: si se ingresa algún texto, presionar Control+ Dprovocará un retraso de 3 segundos (a menos que haya ingresado la contraseña correcta, en cuyo caso. .. iniciará un shell de raíz).

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.