Uso de PPA para enviar actualizaciones simples

Uso de PPA para enviar actualizaciones simples

Deseo configurar un PPA para enviar cambios simples a varios cientos de máquinas ubuntu 12.04 en el campo. Los cambios simples significan cambios en el script bash y actualizaciones de archivos de configuración y posiblemente otras actualizaciones de software, incluidas nuevas instalaciones de software que se pueden instalar mediante apt-get install. Varias preguntas que me han surgido son:

  1. ¿Se puede utilizar PPA para enviar actualizaciones de scripts?
  2. ¿Puedo configurar las máquinas cliente para obtener actualizaciones solo de este PPA e instalarlas automáticamente como si fueran actualizaciones desatendidas? (Por supuesto, sé que esta opción es posible, pero se espera un buen conjunto de herramientas para lograrlo).

Sé que esta es una pregunta amplia, pero se agradece mucho una respuesta con algunos consejos.

Respuesta1

Deseaba hacer lo mismo, pero elegí usar un repositorio privado creado con repreproPPA. Todos mis clientes están en la misma LAN, por lo que para mí es más sencillo. Creo que esto es bastante viable independientemente de si usa PPA o un repositorio privado.

  • La modificación de los archivos de configuración existentes se maneja mejor mediante dpkgdesvíos, en mi opinión.config-package-deves una bendición por esto. ElWiki Debianes un buen punto de partida para obtener información al respecto.
  • Agregar archivos de script o su propio software no es tan difícil empaquetándolos. Hay muchas guías de embalaje. De nuevo, elwiki de debianes un gran punto de partida. Es más sencillo crear paquetes binarios que la introducción, como será el caso de los scripts y archivos de configuración.
  • Se puede agregar nuevo software de otros repositorios convirtiéndolos en dependencias de sus paquetes. Especifique una versión exacta o useaptfijar.
  • Las actualizaciones desatendidas para repositorios personalizados ya se manejan:¿Cómo habilitar actualizaciones automáticas silenciosas para cualquier repositorio?No conozco ninguna forma en que un servidor pueda enviar actualizaciones a un cliente. Es posible que desee considerar puppet(a través de kicking) o algo similar. O puede escribir un script en el servidor que use SSH para ejecutar actualizaciones en el cliente. O tenga un script que busque actualizaciones cuando se active la red.
  • Sobre todo, asegúrese de que los scripts de mantenimiento de su paquete ( preinst, postinst, prerm, postrm) sean idempotentes y que la eliminación del paquete deshaga todos los cambios. Estos scripts pueden hacer muchas cosas, pero no hacen nada que aptles dkpgafecte. Minimizar el trabajo realizado en estos scripts.

En mi caso, uso un paquete para configurar LDAP y NTP, agrego vimrcopciones comunes de habilitación global personalizadas, realizo varios cambios de configuración (como habilitar sudopara un grupo, prohibir el apagado), agregar un usuario/grupo local sin privilegios, etc. Otro paquete agrega nuestro certificado de CA autogenerado y la clave de firma del repositorio, los marca como confiables en el postinstscript y agrega una entrada sources.list.dpara nuestro repositorio.

Todavía no he convertido todos los sistemas a este proceso, por lo que aún no puedo comentar sobre su efectividad.

información relacionada