Mi proveedor potencial de alojamiento sugiere ejecutar un comando en la terminal para que la imagen del sistema operativo del servidor basado en KVM sea mínima. Como sus plantillas KVM vienen con paquetes que no necesitaré, pensé que podría usar ese mismo comando para eliminar paquetes no deseados.
Ese comando comienza con DEBIAN_FRONTEND=noninteractive, luego invoque de la apt-get removesiguiente manera:
DEBIAN_FRONTEND=noninteractive apt-get remove --purge -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" package-1 package-2 ... package-n; apt-get -y autoremove; apt-get clean all
Es la primera vez que encuentro la DEBIAN_FRONTENDvariable de entorno, y hasta ahora no pude encontrar información útil. Entonces, me pregunto qué configuración noninteractivetiene, y si es aconsejable, porque supongo que el valor ( noninteractive) persistiría.
apt
environment-variables
Asarluhi
fuente
fuente

Respuestas:
Simplemente anteponer un
aptcomando conDEBIAN_FRONTEND=somethingno persiste después del comando único al que se aplica.Las
DEBIAN_FRONTENDopciones están documentadas en las páginas del manual de la Sección 7 dedebconf(es posible que deba instalar eldebconf-docpaquete para que estén disponibles en su sistema). Deman 7 debconf:También señala que:
fuente
DEBIAN_FRONTEND=noninteractivecomúnmente utilizado en Dockerfiles. Esta respuesta me hace preguntarme por qué simplemente no usamos el--yesindicador con comandos apt, ya que será más explícito y, en la mayoría de los casos, satisfará nuestras necesidades.DEBIAN_FRONTENDwithsudo, configure la variable dentro delsudocomando, y no para ella. Es decir:sudo DEBIAN_FRONTEND=noninteractive apt-get install slrn. Si coloca la configuración de la variable env antessudo, será válida para elsudocomando en sí ysudono la copiará alapt-getcomando que se está ejecutando. Usarlo entresudoy el comando real es lasudosintaxis para configurar las variables env para que el comando se ejecute (consulte la página de manual). Esto me hizo pasar un mal rato, así que pensé en compartir.noninteractive, puede hacerlo con el siguiente comando:dpkg-reconfigure debconf --frontend=noninteractive