Pregunta ¿Cómo mantener actualizados los programas de origen?


Estoy diseñando una nueva configuración de servidor para alojar múltiples sitios web. (Alojamiento compartido para mis clientes a través de SliceHost.) Recientemente me alejé de la configuración tradicional de LAMP y elegí Ubuntu, Nginx, php-fpm y mysql.

Me gusta mucho mejor que mi viejo Apache, Suphp, configuración de mysql. Funciona muy bien, siempre que la encapsulación entre los sitios y utiliza sustancialmente menos memoria. Sin embargo tengo un problema de mantenimiento importante. Para tener una versión reciente de Nginx y para usar php-fpm he tenido que compilar estos programas desde la fuente.

La razón por la que veo esto como un problema es que el seguimiento de las actualizaciones y las configuraciones de compilación terminarán siendo una gran cantidad de trabajo. Para dos programas (y un parche) puedo manejarlo, pero parece que esta configuración no se escalaría con muchos paquetes y servidores. ¿Hay buenas maneras de manejar esta situación? Estoy seguro de que la gente hace esto todo el tiempo.


6
2017-07-20 19:03


origen




Respuestas:


En lugar de compilar desde el origen y desplegar, cree (o encuentre) paquetes de Ubuntu para las versiones más nuevas que necesita. A menudo, puede tomar los archivos de compilación de una versión anterior y simplemente usar la fuente más nueva. Luego puede mantener sus paquetes como cualquier otro, y solo preocuparse por el seguimiento de los archivos de configuración.

los Guía de nuevos mantenedores de Debian Es muy útil en esta situación, específicamente Capítulo 9 - "Actualizando el paquete". - Si bien puede parecer aterrador al principio, puede ser tan simple como

  • descomprimir nueva fuente
  • aplicar archivos de paquete
  • actualizar registro de cambios
  • construir

5
2017-07-20 19:09



No aborda el problema de saber cuándo actualizar sus paquetes construidos localmente. - womble♦
Esta es la razón por la que deberías intentar y hacer este trabajo tan arriba como sea posible. Si implementa cualquier cosa desde su origen, podrá ver la lista de correo de seguridad / RSS y construir nuevos paquetes cuando se requiera una nueva versión. - crb
Jaunty tenía versiones más recientes de algunos de mis paquetes (principalmente nginx), pude agregar esas fuentes a apt y configurar un archivo de preferencias que dice que el paquete debe provenir de jaunty. De todos modos, tendré que configurar mis propios paquetes para php-fpm - reconbot


Empaqueté cada pieza de software usando el gestor de paquetes de la distribución. Tiene muchas ventajas:

  • Es una buena manera de mantener sus sistemas limpios, ya que cada archivo es administrado por paquetes.
  • Se rastrean las dependencias
  • Si alguna vez quieres instalar el mismo software en otro servidor, es muy fácil.
  • La eliminación del software también es bastante automática.
  • Si alguna vez implementa una herramienta de administración de configuración en su sitio, tener todo en paquetes hace que los sistemas sean mucho más fáciles de administrar.

5
2017-07-20 19:51





El problema principal que tiene es que, en lugar de tener el seguimiento de la distribución de las actualizaciones de seguridad y aplicarlas por usted, debe manejarlo usted mismo. Sin embargo, puede hacer la vida un poco más fácil si se suscribe a la lista de anuncios de seguridad de su distribución y la filtra por las actualizaciones que le interesan. Tengo un script procmail que se mantuvo actualizado automáticamente por mi creador de paquetes (cualquier paquete que se encuentre allí va en "Permitir que pasen los anuncios de este paquete") y cualquier cosa que pase el filtro (que significa "Necesito considerar un manual actualización para esto ") cae en la lista de tareas pendientes (sistema de tickets) para su posterior manejo.


2
2017-07-20 23:48





La tarifa estándar sería empaquetar el software compilado y crear un repositorio de apt.

No creo que no puedas automatizar mucho más. Hay una sobrecarga definida que solo hará que valga la pena para una cantidad respetable de servidores.


1
2017-07-20 19:12



Definitivamente, hay una sobrecarga en términos de aprendizaje y creación de su primer paquete, pero una vez hecho esto, es bastante sencillo crear versiones más nuevas. Incluso si solo una máquina tiene paquetes, es bueno mantener todo ordenado, por más de 1 paquetes de máquinas / repo son el camino a seguir. - theotherreceive


Estoy de acuerdo 100% con Kamil Kisiel.

Vine de los 15 años de Windows e hice muchas investigaciones para descubrir con qué sabor de Linux elegiría trabajar. Acabo de actualizar Fedora 13 a 14 y algo que tengo que decir es: El software Mantain instalado desde la fuente es una verdadera pesadilla.

A pesar de que los repositorios oficiales a veces están a la vanguardia, el software de instalación de YUM u otro administrador de paquetes es rápido, limpio y más seguro.

Sé que puedo pensar de manera diferente en algún momento por delante, pero en este momento creo que esta es la mejor elección para un chico normal como yo.


1
2018-01-08 18:54





Como otros han mencionado, debes construir tus propios paquetes. Para mantenerse al día con las fuentes anteriores, suscríbase a sus listas de correo. Algunos tienen un volumen bajo - lista de anuncios.

Sí, esto es más trabajo, pero eso es lo que cuesta mantenerse tan a la vanguardia.


0
2017-07-21 10:40