La pantalla GNU no responde, parece bloqueada


88

La pantalla GNU parece congelarse. No se puede ingresar la entrada del usuario.

Estaba usando la pantalla GNU y cuando presioné la pantalla dejó de responder. Puedo ejecutar todos los comandos de la pantalla GNU, pero no puedo ingresar la entrada del usuario. No quiero matar esta pantalla porque tengo un trabajo importante y no quiero perderlo.


Respuestas:


132

En los comandos a continuación, reemplace Ctrlcon la tecla de escape que sea para los comandos de pantalla.

Prueba Ctrl+ a q, que es la secuencia para desbloquear el desplazamiento.

Ctrl+ a ses la secuencia que bloquea el desplazamiento, lo que hace que parezca que la pantalla se congela.


Bueno, funcionó pero solo en una pantalla, en la otra se
cerró

7
Usted, señor, acaba de alegrarme el día :) La documentación de la pantalla GNU no apareció al buscar en Google "gnu screen freeze": /
david_p

1
Yo tuve el mismo problema. Solo una pantalla estaba congelada, lo que me hizo creer que el problema era "específico de la pantalla". De hecho, accidentalmente presioné Ctrl-A s.
smithfarm

Estoy tan acostumbrado a usar CTRL + A para ir al frente de la línea de comando para agregar sudo(ya que olvidé comenzar con él) que cuando estoy usando la pantalla, ¡la bloqueo todo el tiempo! Como dice el comentario anterior, CTRL+A qsobre todo funciona, a veces existe la pantalla. Ojalá CTRL + A no fuera el predeterminado, en los servidores que uso mucho, lo cambio a la tecla "ESC".
johnnyB

1
Combine esta pequeña bestia desagradable con el terrible Ctrl + S de PuTTY, que envía un XOFF y realmente me hace temer la "s" en mi teclado. Es malvado. Curiosamente, la pulsación de la tecla PuTTY es Ctrl + Q para enviar un XON ... "q" es el salvador. Gracias, respuesta de 6 años.
JNevill

67

Al usar PuTTY , puede obtener una pantalla aparentemente congelada si presiona Ctrl+ s. Esto envía una Xoffseñal que bloquea la salida del terminal.

La solución es presionar Ctrl + qpara enviar la Xonseñal.


También me funcionó en ROXTerm en Linux: la pantalla estaba bloqueada y me dio un mensaje de inicio de sesión.
Pockets y

Salvó mi día (y mi noche).
sk

8

Lo anterior funciona muy bien si ese es tu problema.

Esto también podría suceder si está conectado a otra máquina y no ha estado en la ventana por un tiempo, luego, cuando regresa, se congela. Para solucionar este problema, puede intentar lo siguiente:

1) Crea una nueva ventana

Ctrl-a c

2) ssh en el cuadro donde lo hiciste en el cuadro en la ventana que está congelado.

3) Busque el proceso en el que se ejecuta ssh:

ps aux | grep <remote_box_on_frozen_screen>

o

ps aux | grep <your_user_id>

4) Mata el proceso

kill <process_id>

No sé cómo llegué a que las cosas no respondieran, ya que normalmente ctrl-q me funciona, pero tuve que hacer esto y perder mi trabajo. +1 para el consejo de descanso aquí en caso de emergencia
taranaki

2
La mayoría de las veces, cualquier conexión SSH congelada se puede cerrar a la fuerza presionando Enter, luego ~y luego .(ver también aquí ).
fotNelton

3

Cuando lo hace, screen -lsel primer número del nombre de pantalla es la identificación del proceso. Entonces, si la salida es

There is a screen on:
    21605.pts-0.Random-server   (11/12/2017 11:44:15 PM)    (Detached)
1 Socket in /var/run/screen/S-kg.

Entonces esto lo matará:

kill 21605

Observe que el número del comando kill es el mismo que en la screen -lssalida.


2

Si está utilizando comandos de tilde invertida en la línea de estado, es decir, si su .screenrc tiene algo como esto:

backtick 1 0 60 /some/script.sh

entonces quiere estar seguro de que el script es rápido: aparentemente, la ejecución con comillas invertidas bloquea todas las E / S en la pantalla.

Si realiza cambios en la configuración, deberá reiniciar la sesión de pantalla (ya que la configuración se aplica solo a las nuevas sesiones).

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.