Así que busqué en Google el error y verifiqué la falla del servidor, pero las soluciones no encajaban. La mayoría de los resultados fueron problemas con / dev / pts, pero eso está montado. Otros resultados son errores con git, pero no hay git en la máquina.
Mi cuenta no está bloqueada, todavía puedo iniciar sesión en la consola. Otros usuarios también tienen este problema, así que no creo que tenga algo que ver con algo que está en mi .ssh /
Recibo esta respuesta con ssh -vv:
<snip>
debug1: Next authentication method: password
rogier@server's password:
debug2: we sent a password packet, wait for reply
debug1: Authentication succeeded (password).
debug1: channel 0: new [client-session]
debug2: channel 0: send open
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug2: callback start
debug2: client_session2_setup: id 0
debug2: channel 0: request pty-req confirm 1
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
debug2: channel 0: request env confirm 0
debug2: channel 0: request shell confirm 1
debug2: fd 3 setting TCP_NODELAY
debug2: callback done
debug2: channel 0: open confirm rwindow 0 rmax 32768
debug2: channel_input_status_confirm: type 100 id 0
PTY allocation request failed on channel 0
debug2: channel 0: rcvd adjust 2097152
debug2: channel_input_status_confirm: type 99 id 0
debug2: shell request accepted on channel 0
Después de esto, la sesión se congela. ¿Alguien tiene alguna idea de lo que está pasando?
ssh user@host "/bin/bash -i"
para iniciar sesión?/dev/pt*
que los dispositivos debían eliminarse y volver a agregarse manualmente porque se corrompieron. Y en ese caso, usar la solución que enumeré anteriormente también funcionó.ssh user@host "/bin/bash -i
. ¿Podría ser más específico sobre qué comandos tengo que ejecutar para solucionar esto? ¿Cómo restauro/dev/pt*
? Gracias.mount
, una de las líneas de salida debe ser / dev / pts, tome nota de las opciones. Desmonteumount /dev/pts
y vuelva a montar conmount -t devpts -o OPTIONS devpts /dev/pts
OPCIONES de reemplazo con las opciones que observó antes de desmontar.Respuestas:
Ok, gracias a Tim. umounting / dev / pts y luego mount / dev / pts hicieron el truco.
fuente
ssh user@host "/bin/bash -i
. ¿Podría ser más específico sobre qué comandos tengo que ejecutar para solucionar esto? Gracias.mkdir /dev/pts
antes de que funcionara. De lo contrario, esto resolvió el problema para mí.déjame contarte toda mi experiencia, trato de conectarme desde linux a windows a través de ssh, tuve servidores con openssh y otros con freessh . Cuando el servidor tiene openssh funciona bien, pero desde ahora comienza a presentar un mensaje de "solicitud de shell fallida en el canal 0" cuando freessh está ejecutando el servicio (vino de un día para otro, solía funcionar mejor que openssh)
Una prueba realizada por mí fue intentar establecer la conexión de otro usuario, ya que veo que funciona bien, realizo una copia de seguridad de mi ~ / .ssh (el usuario que presenta el problema), y después de eso funciona bien.
Creo que el archivo involucrado era conocido_hosts, las permanentes se ven bien así como el contenido, pero así fue como lo solucioné.
fuente
El error solo significa que la apertura del pseudo terminal falló. Lo más probable es que no tenga nada que ver con ssh. Para depurarlo en el lado del servidor ssh, use una demostración PTY muy simple como mypty en http://rachid.koucha.free.fr/tech_corner/pty_pdip.html para ver si se puede asignar algún PTY. Si no, usa strace para investigar dónde falla. (Para mí, faltaba un enlace simbólico / dev / ptmx en un contenedor como se explica en https://www.kernel.org/doc/Documentation/filesystems/devpts.txt )
fuente
Podría depender de su LANG y su configuración de LC, pero esto funciona para mí:
fuente
LANG
yLC_*
variables de entorno?En mi caso, me estaba conectando a un host de Windows (ejecutando cygwin y otros softwares relacionados) desde una caja de Linux.
Extrañamente, los intentos de conectarse al servidor de Windows funcionaron pero fallaron al asignar un terminal interactivo. Verifique los
ssh -vv
registros a continuación.Mi colega descubrió que era debido a muchos procesos abiertos en el servidor de Windows que usaba las mismas credenciales de inicio de sesión que el mío y realizaba una operación por lotes automatizada.
Matarlo temporalmente, hizo el truco y permitió mi conexión ssh con éxito.
Lo más probable, windows + cygwin, tenía un límite máximo en ese sentido. Queda trabajo por desasignar recursos correctamente cuando esos procesos se terminen de ejecutar.
fuente
Al montar de nuevo me sale,
Pero,
Haz el truco
Referencia: http://www.iitk.ac.in/LDP/LDP/lfs/5.0/html/chapter06/proc.html
fuente