Problema
Cuando se ejecuta apt-get install
en una sesión SSH no interactiva, la sesión nunca se cierra. Ejemplo:
ssh user@target "sudo apt-get -y install my_package"
Se my_package
instala correctamente, pero la sesión SSH simplemente se abre.
Pregunta
¿Hay alguna bandera para pasar SSH para ir apt-get
a trabajar?
Información Adicional
Contexto
La instalación remota se utiliza para la implementación automatizada de un paquete en un servidor de integración. Tan pronto como enviamos algunos cambios de código a un repositorio, un trabajo extrae el código, construye el paquete y lo implementa en la integración para verificar que todo funcione bien (en lo que respecta a la implementación).
Ya probado y notas
- La misma sesión de ejecución de SSH se
apt-get update
cierra limpiamente. Tenga en cuenta queapt-get update
no es interactivo, mientras queapt-get install
es. Esto puede sugerir que la interactividad es un problema. - Un comando como
ssh user@target "sudo apt-get install my_package && echo Hello"
nunca llega aecho
. debconf
se queja de que no puede encontrar una interfaz agradable (Display, Readline) y recurre a Teletype (aunque Readline está disponible).- En relación con la interfaz de debconf, pasar
-t
a forzar TTY con SSH no ayuda. NingunoDEBIAN_FRONTEND=noninteractive
. - Todo se hizo en Ubuntu 12_04 LTS.
ssh user@target
, los comandos del shell) ¿funciona correctamente?