Digamos que comencé un su
comando y quiero cancelarlo. Control+ Cno funciona su
como 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?
bash
shell
command-line
kill
authentication
Questionmark
fuente
fuente
Respuestas:
su
se ejecuta con privilegios elevados y no está viendo cómo responde^C
(lo que envía una señal con sus privilegios). Podrías usarsu
otro proyectil y matarlo del otro proyectil. Además (según el sistema), podría responder aSIGHUP
(una señal de bloqueo) si cerró la sesión de terminal dondesu
está ocurriendo lo incómodo .Hay más de una forma que
su
puede ignorar su^C
, por ejemplo,Una lectura rápida de Debian
su
parece que usa este último. Su sistema, por supuesto, puede ser diferente.Otras lecturas:
fuente
su
como un usuario normal y está esperando una entrada de contraseña del usuario, ¿se está "ejecutando con privilegios elevados" en este momento?ps -ef
desde otra terminal. Eso sucede automáticamente porquesu
está configurado como root .Puedes
CTRL-D
su
avisar.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.fuente
He encontrado que la mejor manera de matar
su
durante 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
su
para borrar la contraseña ingresada actualmente.Usar Control+ Cno parece funcionar, parece que por alguna razón
su
simplemente lo ignora. No es cierto que el usuario que inició el proceso ya no pueda matarlo debido a setuid;su
muere perfectamente bien si lo matas conSIGTERM
oSIGQUIT
desde otro terminal (como un usuario que lo inició).SIGINT
no funciona, así quesu
probablemente 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).fuente