Digamos que está ejecutando un servidor y no desea actualizar a Testing (Squeeze) desde Stable (Lenny) para instalar un paquete requerido o dos.
¿Cuál es la mejor manera de instalar solo ciertos paquetes de Testing?
linux
debian
package-management
aptitude
Gareth
fuente
fuente
Respuestas:
Muchas personas parecen tener miedo de mezclar estable con pruebas, pero, francamente, las pruebas son bastante estables por sí mismas, y con las preferencias adecuadas y la verificación de la solución, puede evitar la "deriva de estabilidad" que coloca a sus paquetes principales en el camino inestable.
"¿Las pruebas son bastante estables?" , usted pregunta. Si. Para que un paquete migre de inestable a prueba, debe tener cero errores abiertos durante 10 días consecutivos. Lo más probable es que, especialmente para los paquetes más populares, alguien envíe un informe de error para una versión inestable si algo está mal.
Incluso si no desea mezclar los entornos, es bueno tener la opción allí en caso de que encuentre algo que requiera una versión más nueva que la que está en estable.
Esto es lo que recomiendo para configurar esto:
Primero, cree los siguientes archivos en
/etc/apt/preferences.d
:stable.pref
:testing.pref
:unstable.pref
:experimental.pref
:(No tenga miedo de las cosas inestables / experimentales aquí. Las prioridades son lo suficientemente bajas como para que nunca se instale automáticamente ninguna de esas cosas. Incluso la rama de prueba se comportará, ya que solo va a instalar los paquetes que desea ser en pruebas)
Ahora, creando un conjunto coincidente para
/etc/apt/sources.list.d
:stable.list
: Copia de tu original/etc/apt/sources.list
. Cambie el nombre del archivo antiguo a algo comosources.list.orig
.testing.list
: Igual questable.list
, excepto contesting
.unstable.list
: Igual questable.list
, excepto conunstable
, y eliminar las listas de seguridad.experimental.list
: Igual queunstable.list
, excepto conexperimental
.También puede agregar una
oldstable
ensources.lists.d
ypreferences.d
(usar una prioridad de 1), aunque este apodo tenderá a punto de expirar y desaparecer antes del siguiente ciclo estable. En casos como ese, puede usarhttp://archive.debian.org/debian/
y "codificar" la versión de Debian (etch, lenny, etc.).Para instalar la versión de prueba de un paquete, simplemente use
aptitude install lib-foobar-package/testing
, o simplemente acceda a la GUI de aptitude y seleccione la versión dentro de los detalles del paquete (presione enter en el paquete que está viendo).Si recibe quejas de conflictos de paquetes, primero mire las soluciones. En la mayoría de los casos, el primero será "no instale esta versión". Aprenda a usar las opciones de resolución de aceptar / rechazar por paquete. Por ejemplo, si está instalando foobar-package / testing, y la primera solución es "no instale foobar-package / testing", marque esa opción como rechazada, y las otras soluciones nunca volverán a ese camino nuevamente. En casos como estos, probablemente tendrá que instalar algunos otros paquetes de prueba.
Si se está volviendo demasiado complicado (como si estuviera tratando de actualizar libc o el kernel o algún otro sistema central enorme), puede rechazar esas rutas de actualización o simplemente abandonar la actualización inicial por completo. Recuerde que solo va a actualizar cosas a pruebas / inestables si lo permite.
EDITAR: se corrigieron algunos pines de prioridad y se actualizó la lista.
fuente
apt-get update
después de crear los archivos de configuración?sudo apt-get update
, recibí un error de actualización. Luego reinicié, lo que me dioXsession error
, reinicié nuevamente, y ahora no tengo interfaz gráfica de usuario. El/dev/sda1/
ahora está lleno. Excelente.En
/etc/apt/apt.conf.d
agregar el siguiente archivo99defaultrelease
:en
/etc/apt/sources.list.d
- agregar URL para probar / fuentes inestablesstable.list
:testing.list
:correr
y luego instala lo que necesitas con
Tenga mucho cuidado si instala cosas que tienen muchas dependencias. Preferiblemente no hagas esto en producción.
También puedes probar tu suerte en backports o repositorio similar.
fuente
apt_preferences
Defina el nivel predeterminado al que el sistema debe 'actualizarse de forma segura' en el archivo / etc / apt / ferences :
man apt_preferences
Hay muchas cosas que puede hacer con apt_preferences pero por simplicidad ...
Necesitaba instalar un solo paquete (autoMysqlBackup) que solo estaba disponible en Pruebas. La solución fue agregar lo siguiente a / etc / apt /ferences:
Con múltiples repositorios agregados a /etc/apt/sources.list, aptitude ahora solo se actualizará a su versión especificada aunque los repositorios de versiones posteriores estén listados (en este caso, 'estable').
Entonces, para instalar ese paquete, todo lo que tiene que hacer es:
fuente
Por lo que vale, el consejo general que siempre he visto es "No mezclar estable con nada". La mayoría de los tutoriales de sistemas mixtos son para pruebas de mezcla e inestables.
El razonamiento parece ser que si combina estable con pruebas, los paquetes muy básicos (como libc6) requerirán actualizaciones (para instalar el software de las pruebas), y una vez que estos paquetes básicos pasen a las pruebas, todo el sistema puede derivar de esa manera.
Aquí hay dos alternativas:
fuente
La documentación de Debian es extensa en el tema y le recomiendo que profundice, ya que revelará realmente la belleza del sistema Debian.
Eche un vistazo a Cómo mantener un sistema mixto , le explicará todo lo que necesita saber.
fuente
Otra forma, que podría evitar la instalación de demasiadas dependencias de Testing o Sid, es esta: le dice a apt-get que obtenga la fuente del paquete de Testing o Sid y cree un paquete para su sistema utilizando las herramientas de Debian (no es necesario modificar manualmente con fuentes).
Citando desde aquí:
https://wiki.debian.org/DebianUnstable#How_do_I_backport_a_sid_package_to_testing_or_stable.3F
fuente
Lo he estado haciendo durante un período prolongado de tiempo para estar seguro de decir que es lo suficientemente seguro y conveniente. Con la configuración a continuación, la versión estable se instalará de manera predeterminada, sin embargo, Aptitude también le permitirá elegir versiones con respaldo o inestables si así lo desea:
Hay cuatro cosas que deben editarse, la versión de fijación predeterminada debe establecerse, las fuentes necesitan backports y agregar inestable, lo que reduce la prioridad de fijación de backports / paquetes inestables, y la configuración de visualización de aptitud debe modificarse para mostrar la fijación.
etc/apt/preferences
archivo de fijación: si el archivo no existe, créelo.fuente
source.list
lo tanto, en él debería decir el nombre del código enjessie
lugar desqueeze
. La política de Debiantesting
es casi estable y los paquetes han sido casi tan nuevos como desde elunstable
repositorio. Me estoy quedando sin espacio aquí, así que eche un vistazo a: wiki.debian.org/DebianReleases , wiki.debian.org/StableUpdates y wiki.debian.org/StableProposedUpdates ; los dos últimos son fuentes de repositorio adicionales.Si su selección de paquetes es más complicada o la instalación se repetirá en varias máquinas, puede considerar configurar un repositorio privado que refleje un subconjunto de los repositorios oficiales. Esto requiere un poco de trabajo para configurar el repositorio, pero la recompensa es fácil de mantener con un mínimo de configuración en cada cliente y resultados repetibles al hacer docenas de instalaciones. Esto me resulta útil incluso cuando solo se están instalando uno o dos paquetes, y utilizo este método para automatizar y mantener las instalaciones en la nube. Un solo servidor en un VPS barato puede manejar docenas de repositorios privados.
Para configurar su servidor de repositorio privado:
Luego configure su servidor web de elección para servir los archivos del repositorio estático. Posiblemente proteja el repositorio con un certificado de seguridad y autenticación básica.
Para mantener automáticamente su repositorio privado y obtener actualizaciones desde arriba, coloque lo anterior en un script y ejecute desde un trabajo cron.
Para configurar su máquina cliente, en su máquina cliente:
Para mantener su máquina cliente y obtener todas sus actualizaciones de repositorio privado, en su máquina cliente:
fuente
Otra opción es descargar en su lugar el paquete fuente de la prueba. APT puede construir automáticamente el paquete fuente después de descargarlo. De esta manera, sus paquetes estables no se verán afectados por las actualizaciones de prueba. La única desventaja es que tomará más tiempo que simplemente descargar e instalar el paquete binario.
Para configurar APT para descargar paquetes fuente de las pruebas, simplemente agregue:
Si solo desea seguir las pruebas actuales y no las futuras, reemplace "pruebas" con el nombre de código actual (al momento de escribir esto es "buster")
fuente