
Tengo un Ubuntu 12.04.5 LTS creado en Azure Cloud. Lo creo a partir de una compilación de Jenkins PowerShell que: 1. Crear VM en Azure 2. Ejecutar algunos comandos SSH remotos (entre ellos apt-get dist-upgrade) 3. Crear una imagen virtual desde VM
Pero la compilación se bloquea en el Paso 2. En el paso 2, entre otros comandos, ejecuto:
apt-get update
apt-get -q -y dist-upgrade
La intención de -y es evitar preguntas interactivas. Si ejecuto manualmente desde un shellapt-get -q -y dist-upgradefunciona bien hasta que se atasca dos veces:
Se supone que el parámetro -y evita esta situación. Como puede ver, el paquete infractor esagente, es decir, Microsoft Azure Linux Agent y viene instalado de forma predeterminada cuando termino el paso 1.
Mi pregunta es:¿Cómo puedo evitar estas preguntas interactivas?(ya sea respondiendo Sí o No, o evitando actualizar este paquete o cualquier otra cosa)
Respuesta1
Quizás también puedas probar:
DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --force-yes
Respuesta2
Parece que los conflictos con los archivos de configuración son bastante comunes en apt-get (dkpg). Resuelvo el problema usando:
apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" dist-upgrade
Las opciones significan:
- --force-confdef: Pídale a dpkg que decida solo cuándo puede y solicite lo contrario...
- --force-confold: No modificar el archivo de configuración actual...