SSH y Message too long

Existe un problema bastante recurrente a la hora de conectar mediante sftp/scp a una máquina. Es el fatídico:

mandarina:~ jorge$ sftp maquina
Connecting to maquina...
jorge@maquina's password: 
Received message too long 538976288

Es tan habitual que mucha gente se pregunta qué ocurre, y descripciones del problema hay a puñados. ¿Qué ocurre y cómo se soluciona?

Lo que ocurre es que al acceder mediante sftp o scp, el sistema ejecuta el fichero ~/.bashrc que tengamos, y si éste muestra texto por pantalla, nuestro cliente ssh recibe "basura" y falla. La solución es simple: organizar nuestro ~/.bashrc en dos partes. La primera contendrá todas aquellas órdenes que no produzcan salida por pantalla, mientras que la segunda contendrá el resto de órdenes.

Luego basta con encerrar esta segunda parte en un condicional como el siguiente:

if [ "$TERM" != "dumb" ]; then
 # Instrucciones que producen salida por pantalla
fi

Y ya está: cada vez que conectemos mediante sftp o scp, no se ejecutará esa segunda parte y no fallará el proceso.

Referencia: Received message too long solution

Comentarios

Enviar un comentario nuevo

  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Saltos automáticos de líneas y de párrafos.
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.
  • Etiquetas HTML permitidas: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <p>

Más información sobre opciones de formato

CAPTCHA
Esta pregunta sirve para evitar envíos automatizados y SPAM
10 + 1 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.